Nightly Builds - MegaMek/megamek GitHub Wiki

Nightly Build Schedule

The Nightly Build* is an automated process that compiles the latest version of the three projects codebase every night at 3:00 AM UTC. These builds are created directly from the most recent code changes, meaning they include the latest features, fixes, and improvements. However, nightly builds are not as thoroughly tested as stable releases and may contain bugs or incomplete features.

Who Should Use Nightly Builds?

  • Test Pilots: Players who enjoy testing the latest features and helping report bugs.
  • Developers: Contributors to the project who want to validate recent changes.
  • Players: Anyone interested in using the bleeding-edge version of MekHQ but understands the higher risk of bugs or crashes.

Nightly builds are perfect for those who want early access to new features, but keep in mind that they may introduce issues that aren’t present in stable releases. If stability is a priority for you, it’s recommended to stick with the latest stable release.

Local Time Conversions for a 3:00 AM UTC Build:

  • Eastern Time (ET, UTC -4): 11:00 PM the previous night
  • Central Time (CT, UTC -5): 10:00 PM the previous night
  • Mountain Time (MT, UTC -6): 9:00 PM the previous night
  • Pacific Time (PT, UTC -7): 8:00 PM the previous night
  • UK (BST/GMT, UTC +0): 4:00 AM
  • Central European Time (CET, UTC +1): 5:00 AM
  • Eastern European Time (EET, UTC +2): 6:00 AM
  • India Standard Time (IST, UTC +5:30): 8:30 AM
  • Japan Standard Time (JST, UTC +9): 12:00 PM (Noon)
  • Australia Eastern Time (AEST, UTC +10): 1:00 PM

Why This Schedule is Effective:

  • North American Players: The build completes late at night, meaning it will be ready for North American players early in the morning, around 6-7 AM ET, perfect for players starting their day.
  • European Players: Most players in the UK and Western Europe will have access to the build starting around 4-6 AM UK time (BST/GMT) and 5-7 AM Central European Time (CET), ensuring it’s ready as soon as they wake up.
  • Asian and Australian Players: The build will be ready by midday to early afternoon (around 12:00 PM JST for Japan and 1:00 PM AEST for Australia), giving these players access during their afternoon and evening gaming sessions.

For Developers: How to Change the Build Time

If you need to adjust the nightly build schedule, the time can be modified using a cron expression in the GitHub Actions workflow. The cron expression is set to 0 3 * * *, which corresponds to 3:00 AM UTC.

To change the time:

  1. Find the cron expression in the GitHub Actions configuration file (typically located in .github/workflows/).

    Example:

    schedule:
      - cron: "0 3 * * *"
    
  2. Adjust the time by updating the cron expression to the desired time. The format follows:

    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ minute (0 - 59)
    β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ hour (0 - 23)
    β”‚ β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€ day of the month (1 - 31)
    β”‚ β”‚ β”‚ β”Œβ”€β”€β”€β”€β”€β”€ month (1 - 12)
    β”‚ β”‚ β”‚ β”‚ β”Œβ”€β”€β”€β”€ day of the week (0 - 7) (Sunday = 0 or 7)
    β”‚ β”‚ β”‚ β”‚ β”‚
    * * * * *
    

    For example, to change the build time to 5:00 AM UTC, update the cron to:

    schedule:
      - cron: "0 5 * * *"
    
  3. Push your changes to the repository, and the new build time will take effect on the next scheduled run.

For more details on cron expressions and how to configure time zones, refer to the GitHub Actions Cron Syntax documentation.