Release 10.8
General Process for Release Managers
This issue serves as one place to find all information needed for the release on the 22nd. This issue should be used to link related issues associated with the release such as individual Release Candidate issues and exception requests.
Tasks
-
Create the Pick into 10.8
group label if it doesn't exist: https://gitlab.com/groups/gitlab-org/labels/new- Note: Replace
10.8
with the version you are working on.
- Note: Replace
-
Create a new issue for the preparation of each release candidate -
Create an MR on CE master updating the "Installation from Source" guide, creating the "Update" guides: https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/18691 -
Create an MR on EE master creating the "CE to EE" guides: https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/18695 & https://gitlab.com/gitlab-org/gitlab-ee/merge_requests/5548 -
Create an MR on CE master updating the .gitignore
,.gitlab-ci.yml
, andDockerfile
templates: https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/18845 -
Create an MR on CE master updating the dependencies license list https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/18847 -
Ensure the above MRs are merged prior to creating the RCs
Individual Release Candidate preparation issues
Issues relating to the preparation of a Release Candidate should be created separately and linked in this issue.
Release Candidate issues should be created using release-tools
:
bundle exec rake patch_issue[10.8.0-rc1]
RC1: #192 (closed)
RC2: #198 (closed)
RC3: #199 (closed)
RC4: #200 (closed)
RC5: #202 (closed)
RC6: #204 (closed)
RC7: #206 (closed)
RC8: #207 (closed)
RC9: #212 (closed)
RC10: #214 (closed)
RC11: #216 (closed)
RC12: #217 (closed)
RC13: #221 (closed)
Exception requests
Exception requests relate to proposals for changes to the normal release process.
Exception requests should be created by using the exception request issue template and linked here for posterity.
RC
#205 (closed) - not approved
#203 (closed) - not approved
https://gitlab.com/gitlab-org/release/tasks/issues/209 - approved
#210 (closed) - approved
#211 (closed) - not approved
#213 (closed) - not approved
#218 (closed) - not approved
Patches
#231 (closed) - Not approved
#219 (closed) - Not approved
18th: GDPR
-
Star a new RC issue. -
Make sure to include https://gitlab.com/gitlab-org/release/tasks/issues/209 Note that the RC with this MR must not be deployed to production before the 22nd -
Tag the RC -
Deploy to staging -
Ping @reprazent
and@victorwu
for feature assurance
21st: tag!
- At 15:00 UTC, final release is ready for tagging (Including changes at this stage requires signoff from VP of Eng.):
-
Guarantee this is part of the RC https://gitlab.com/gitlab-org/release/tasks/issues/209 -
Ensure tests are green on CE stable branch -
Ensure tests are green on EE stable branch -
Ensure tests are green on Omnibus CE stable branch -
Ensure tests are green on Omnibus EE stable branch -
Sync stable branches: CE, EE, and Omnibus to dev
, CE and Omnibus togithub
-
Sync master branches to dev
andgithub
, as the CHANGELOG will be automatically updated on master during tagging -
Tag the 10.8.0
version using therelease
task:```sh # In the release-tools project: bundle exec rake "release[10.8.0]" ```
-
Check progress of EE packages build and CE packages build
-
22nd: release day
No new code is added to release that was not included in the last RC. This way we ensure the release does not introduce new regressions.
-
At 08:00 UTC
-
Check progress of EE packages build and CE packages build -
Warm up the packages on takeoff by running: sh # In the takeoff project: bin/takeoff-deploy -v 10.8.0-ee.0 -w
-
-
Before 10:00 UTC:
-
Get confirmation from a production team member to deploy staging. Use !oncall prod
if needed to find who's on call. -
On video call, deploy release 10.8.0
to staging.gitlab.com```sh # In the takeoff project: bin/takeoff-deploy -e staging -v 10.8.0-ee.0 ```
-
Announce on the #releases
Slack channels:10.8.0
has been deployed to staging. Blog post draft: MERGE_REQUEST_URL -
Get confirmation from a production team member. Use !oncall prod
if needed to find who's on call. -
On video call, deploy release 10.8.0
to canary.gitlab.com```sh # In the takeoff project: bin/takeoff-deploy -e canary -v 10.8.0-ee.0 ```
-
Announce on the #releases
Slack channels:10.8.0
has been deployed to canary. -
GPDR MUST BE TURNED OFF BEFORE DEPLOYING. Ping @marin
-
Get confirmation from a production team member to deploy production. Use !oncall prod
if needed to find who's on call. -
On video call, deploy release 10.8.0
to GitLab.com```sh # In the takeoff project: bin/takeoff-deploy -e production -v 10.8.0-ee.0 ```
-
Create the first patch issue using the [ patch_issue
task]:```sh # In the release-tools project: bundle exec rake "patch_issue[10.8.1]" ```
-
-
At 14:30 UTC:
- Make sure that neither packages nor blog post get published before that time without approval by the marketing team.
-
From the build pipeline, manually publish public packages
-
At 15:00 UTC:
-
Verify that packages appear on packages.gitlab.com
: EE / CE -
Verify that Docker images appear on hub.docker.com
: EE / CE -
Create the 10.8.0
version on https://version.gitlab.com -
Ensure someone tweets about the 10.8.0
release in the#releases
channel
-