Release checklist

From Bitfighter
Revision as of 19:06, 1 March 2013 by Watusimoto (Talk | contribs)

  1. Make sure all code is checked in to HG
  2. Update checkIfThisIsAnUpdate() in main.cpp and add any update tasks
  3. Make sure dedicated server compiles
  4. Update version.h:
    • Change ZAP_GAME_RELEASE to new version
    • Change BUILD_VERSION to (current commit number + 2) (found by running 'hg summary')
    • If new client-server is incompatible with the old, update CS_PROTOCOL_VERSION
    • If new client-master is incompatible with the old, update MASTER_PROTOCOL_VERSION
  5. Re-checkin to HG, so version numbers are correct, and everything aligns correctly NOTE THAT THE TAG WILL COUNT AS A VERSION!
  6. Tag the release in HG. Use format "bitfighter-016"
  7. Build for Windows:
    • Compile the game with the release version
    • Run NSI to create windows installer
    • Test installer
  8. Build for Mac
    • Build the DMG target in XCode
    • Test DMG
  9. Upload to Google Code
    • Upload Windows version to Google code
    • Upload Mac version to Google code
    • Run script found in bitfighter-tools repo to build and upload source tarball
    • Test downloads
  10. Put copy of tarball at static URL to help maintainers:
    • On bitfighter.org:
     sudo wget https://bitfighter.googlecode.com/files/bitfighter-018a.tar.gz -O /var/www/html/files/bitfighter-latest.tar.gz

File will be available from http://bitfighter.org/files/bitfighter-latest.tar.gz

  1. Build for various Linux distros
  2. Rebuild any servers that need rebuilding
  3. Update master.ini:
    • [host] section:
      • Update latest_released_client_build_version
      • Update latest_released_cs_protocol (if needed)
    • [motd_clients] section:
      • Add a new line for the old build version
  4. Update auto-update file (/var/www/html/files/getDownloadUrl.php) on master server
    • Sign the Mac files with our private key for the Sparkle updates
    • Update versions/dates in the php file (add sparkle signatures)
  5. Update bitfighter website
    • Add new release to all releases page
    • Update download page to show new release
    • Add story to main page on website announcing new release
    • Update luadoc/doxygen
  6. Post announcement in forums
  7. Announce new version via email
  8. Post the update to gaming web sites