Playtest or Release Checklist - UberWaffe/OpenRA GitHub Wiki
Prepare
-
Have the patches been reviewed?
- The default should be "no merge"; justify why your patches are worth including, which is more than just "no nits".
- Each patch should have been tested by its author, on at least the platform they run. If the patch is fixing something platform-specific on some other platform, it must have been tested there, otherwise you're just making stuff up.
- Check for interactions between features. Many of these have been wrong, at least historically -- build/sell sell/capture etc.
- Check for copypasta with simian and/or eyeballs.
-
Does it build?
- Check on both Windows and Mac/Linux.
- There should be no warnings.
- OpenRA.Lint should be clean, or at least no worse than at the previous tag.
-
Does it work?
- Everything should work, in all mods that will be included -- at least no worse than the previous tag.
- Yes, this step sucks to verify.
-
Has the Changelog been updated? Don't forget to change "Next version" to the version name!
-
If there are master server changes [or any other infrastructure changes], have those been deployed first?
- All infrastructure changes MUST be backwards-compatible; there are various old client versions still in use, which you must not break.
Build
- If that's all good:
- Assuming you aliased the upstream repository with openra
git fetch openra
thengit checkout bleed && git reset --hard openra/bleed
(warning: this overwrites your own bleed branch). Check for compilation errors and do some test games. - Tag the commit you intend to release.
git checkout openra/bleed && git tag playtest/release-yyyymmdd
- Push the tag to OpenRA/OpenRA, and advance either the
next
ormaster
branch as appropriate for the release type.git push openra playtest-yyyymmdd bleed:next
orgit push openra release-yyyymmdd next:master
Warning: The currentmake version
does not use the latest, but the first tag so we need an extra commit to separate last playtest and new release. Don't forget to update the branches. Travis will automatically start building and deploying the packages at GitHub releases. - Login to the build server with
ssh-add && ssh -A [email protected]
to forward your authentication to the web-server later on, too. Thencd openra-package/
and./checkout-and-build.sh playtest/release-yyyymmdd
which will automatically deploy it.
- Assuming you aliased the upstream repository with openra
Download the package and head over to Publish on Desura. Create a new MCF file from a clean OpenRA installation, upload it and submit it for approval. See the Notes For Publishing On Desura if problems arise.
Announce
- Update the website with the news: https://github.com/OpenRA/OpenRAWeb/pulls including the current playtest/release tags and the in-game notifier.
- Link it on https://www.facebook.com/openra which gets automatically aggregated at http://twitter.com/openra
- Copy the announcement on http://www.moddb.com/games/openra/ which also updates IndieDB, but not Desura.
- Post it on http://www.reddit.com/r/openra/
- Post it on https://plus.google.com/b/100332364931123881367/100332364931123881367/posts