gitlab-org--gitlab-foss/doc/make_release.md

3.2 KiB

Things to do when creating new 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.

Install guide up to date?

  • References correct GitLab branch x-x-stable and correct GitLab shell tag?

Make upgrade guide

From x.x to x.x

0. Any major changes? Database updates? Web server change? File structure changes?

1. Make backup

2. Stop server

3. Do users need to update dependencies like git?

4. Get latest code

5. Does GitLab shell need to be updated?

6. Install libs, migrations, etc.

7. Any config files updated since last release?

Check if any of these changed since last release (~22nd of last month depending on when last release branch was created):

8. Need to update init script?

Check if changed since last release (~22nd of last month depending on when last release branch was created): https://github.com/gitlabhq/gitlabhq/commits/master/lib/support/init.d/gitlab

9. Start application

10. Check application status

Make sure the code quality indicatiors are good

  • build status on ci.gitlab.org (master branch)

  • build status on travis-ci.org (master branch)

  • Code Climate

  • Dependency Status this button can be yellow (small updates are available) but must not be red (a security fix or an important update is available)

  • Coverage Status

Make a release branch

After making the release branch new commits are cherry-picked from master. When the release gets closer we get more selective what is cherry-picked.

  • 5 days before release: feature freeze
  • 3 days before release: UI freeze
  • 1 day before release: code freeze

Write a blog post

  • Mention what GitLab is on the second line: GitLab is open source software to collaborate on code.
  • Select and thank the the Most Valuable Person (MVP) of this release.
  • Note if there are security fixes: This release fixes an important security issue and we advise everyone to upgrade as soon as possible.

Last actions

  1. Update VERSION and CHANGELOG
  2. Create a git tag vX.X.X
  3. Publish the blog post
  4. Tweet about the release