Release 10.8.1
Preparation
-
Create preparation MRs for this version and add the links below: # In the release-tools project: bundle exec rake "patch_merge_request[10.8.1]"
-
Cherry-pick changes into preparation MRs following their instructions -
Ensure the CE preparation MR has been fully merged into the EE counterpart -
Merge the preparation branches -
For omnibus-gitlab
cherry-pick remaining merge requests directly into CE stable branch. Then, merge the CE Omnibus stable branch into EE. -
Check the following list of critical issues/MRs which are to be included in
10.8.1
. Ensure each has made both CE and EE:[ ] REFERENCE_TO_MR_TO_PICK
-
Ensure builds are green on Omnibus CE stable branch and Omnibus EE stable branch
Packaging
-
Sync stable branches for CE, EE, and Omnibus to dev
; CE and Omnibus togithub
. -
Check for any problematic migrations in EE, and paste the diff in a snippet: git diff -M v10.8.0-rc13-ee..10-8-stable-ee -- db/migrate db/post_migrate ee/db/migrate ee/db/post_migrate
=> https://gitlab.com/snippets/1717613 -
Tag the 10.8.1
version using therelease
task:# In the release-tools project: bundle exec rake "release[10.8.1]"
-
While waiting for packages to build, now is a good time to prepare the blog post. Look at previous MRs for examples. => gitlab-com/www-gitlab-com!11890 (merged) -
Check progress of EE packages build and CE packages build. - This might take a while (around 80 min).
- We only need the EE packages to finish to continue with next steps.
Deploy
Deploys to production require confirmation from a production team member before
proceeding. Use !oncall prod
in the #production
channel to find who's on
call and ping someone. Deploys to staging or canary can be done at will, just
mention it in the #production
channel.
-
Warm up the packages on takeoff by running: # In the takeoff project: bin/takeoff-deploy -v 10.8.1-ee.0 -w
staging.gitlab.com
-
Inform the oncall in the #production channel about staging deploy -
On video call, deploy 10.8.1
to staging.gitlab.com# In the takeoff project: bin/takeoff-deploy -e staging -v 10.8.1-ee.0
-
Comment with the output of the migrations from the takeoff script in this issue
QA
-
Announce with an @product-team
mention in the#product
Slack channel:@product-team `10.8.1` has been deployed to staging.
-
Create a "QA Task" issue in the gitlab-org/release/tasks repo, using the QA-task
template. #227 (closed) -
Notify #development and #releases about the QA issue with the following message: 10.8.1 has been deployed to staging, you can do QA and report any problems to the QA issue <link to the QA issue>
-
Wait for the QA Task deadline to pass
canary.gitlab.com
-
Inform the oncall in the #production channel about canary deploy -
On video call, deploy 10.8.1
to canary.gitlab.com# In the takeoff project: bin/takeoff-deploy -e canary -v 10.8.1-ee.0
gitlab.com (production)
-
Get confirmation from a production team member to deploy to production In #production
, use!oncall prod
to find who's on call, and@mention
them asking to deploy to production -
If someone besides the oncall confirms, @mention
the oncall so they are aware. -
On video call, deploy 10.8.1
to GitLab.com# In the takeoff project: bin/takeoff-deploy -e production -v 10.8.1-ee.0
Release
-
Create the 10.8.1
version on version.gitlab.com -
Deploy the blog post -
Post a tweet about the 10.8.1
release in the#releases
channel:!tweet "GitLab 10.8.1 is now available: [BLOG_POST_URL] [DESCRIPTION_OF_CHANGES]"
References
gitlab.com
- https://gitlab.com/gitlab-org/gitlab-ce/commits/10-8-stable
- https://gitlab.com/gitlab-org/gitlab-ee/commits/10-8-stable-ee
- https://gitlab.com/gitlab-org/omnibus-gitlab/commits/10-8-stable
- https://gitlab.com/gitlab-org/omnibus-gitlab/commits/10-8-stable-ee