Release 10.8.3

Preparation

Packaging

  • Sync stable branches for CE, EE, and Omnibus to dev; CE and Omnibus to github.

  • Check for any problematic migrations in EE, and paste the diff in a snippet: git diff -M v10.8.2-ee..10-8-stable-ee -- db/migrate db/post_migrate ee/db/migrate ee/db/post_migrate =>

  • Tag the 10.8.3 version using the release task:

    # In the release-tools project:
    bundle exec rake "release[10.8.3]"
  • 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!12047 (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.3-ee.0 -w

staging.gitlab.com

  • Inform the oncall in the #production channel about staging deploy

  • On video call, deploy 10.8.3 to staging.gitlab.com

    # In the takeoff project:
    bin/takeoff-deploy -e staging -v 10.8.3-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.3` has been deployed to staging.
  • Create a "QA Task" issue in the gitlab-org/release/tasks repo, using the QA-task template: #240 (closed)
  • Notify #development and #releases about the QA issue with the following message: 10.8.3 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.3 to canary.gitlab.com

    # In the takeoff project:
    bin/takeoff-deploy -e canary -v 10.8.3-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.3 to GitLab.com

    # In the takeoff project:
    bin/takeoff-deploy -e production -v 10.8.3-ee.0

Release

References

gitlab.com

dev.gitlab.org

Edited by Mayra Cabrera