Difference between revisions of "Release checklist"

From Bitfighter
Line 7: Line 7:
 
#* If new client-server is incompatible with the old, update CS_PROTOCOL_VERSION
 
#* 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
 
#* If new client-master is incompatible with the old, update MASTER_PROTOCOL_VERSION
 +
#* '''Important:''' Make sure version.h parsing works in the OSX Bitfighter target build script.  This is needed for Sparkle to properly update
 
# Re-checkin to HG, so version numbers are correct, and everything aligns correctly NOTE THAT THE TAG WILL COUNT AS A VERSION!
 
# Re-checkin to HG, so version numbers are correct, and everything aligns correctly NOTE THAT THE TAG WILL COUNT AS A VERSION!
 
# Tag the release in HG.  Use format "bitfighter-016"
 
# Tag the release in HG.  Use format "bitfighter-016"
Line 23: Line 24:
 
# Put copy of tarball at static URL to help maintainers:
 
# Put copy of tarball at static URL to help maintainers:
 
#* On bitfighter.org:
 
#* On bitfighter.org:
      sudo wget https://bitfighter.googlecode.com/files/bitfighter-018a.tar.gz -O /var/www/html/files/bitfighter-latest.tar.gz
+
#** 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
+
#* File will be available from http://bitfighter.org/files/bitfighter-latest.tar.gz
 
# Build for various Linux distros
 
# Build for various Linux distros
 
#* Use Open Build Service (or tell other distros about the new release.)  Link:  https://build.opensuse.org/package/show?package=bitfighter&project=games
 
#* Use Open Build Service (or tell other distros about the new release.)  Link:  https://build.opensuse.org/package/show?package=bitfighter&project=games

Revision as of 20:24, 1 March 2013

  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
    • Important: Make sure version.h parsing works in the OSX Bitfighter target build script. This is needed for Sparkle to properly update
  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:
  11. Build for various Linux distros
  12. Rebuild any servers that need rebuilding
  13. 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
  14. 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)
  15. 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
  16. Post announcement in forums
  17. Announce new version via email
  18. Post the update to gaming web sites