2.1 KiB
2.1 KiB
Things to do when doing a patch release
NOTE: This is a guide for GitLab developers. If you are trying to install GitLab see the latest stable installation guide and if you are trying to upgrade, see the upgrade guides.
When to do a patch release
Do a patch release when there is a critical regression that needs to be addresses before the next monthly release.
Otherwise include it in the monthly release and note there was a regression fix in the release announcement.
Release Procedure
- Verify that the issue can be reproduced
- Note in the 'GitLab X.X regressions' that you will create a patch
- Create an issue on private GitLab development server
- Name the issue "Release X.X.X CE and X.X.X EE", this will make searching easier
- Fix the issue on a feature branch, do this on the private GitLab development server
- Consider creating and testing workarounds
- After the branch is merged into master, cherry pick the commit(s) into the current stable branch
- In a separate commit in the stable branch update the CHANGELOG
- For EE, update the CHANGELOG-EE if it is EE specific fix. Otherwise, merge the stable CE branch and add to CHANGELOG-EE "Merge community edition changes for version X.X.X"
- In a separate commit in the stable branch update the VERSION
- Create an annotated tag vX.X.X for CE and another patch release for EE
git tag -a vx.x.x -m 'Version x.x.x'
- Make sure that the build has passed and all tests are passing
- Push the code and the tags to all the CE and EE repositories
- Apply the patch to GitLab Cloud and the private GitLab development server
- Build new packages with the latest version
- Cherry-pick the changelog update back into master
- Send tweets about the release from
@gitlabhq
, tweet should include the most important feature that the release is addressing as well as the link to the changelog - Note in the 'GitLab X.X regressions' issue that the patch was published (CE only)
- Send out an email to the 'GitLab Newsletter' mailing list on MailChimp (or the 'Subscribers' list if the patch is EE only)