Commit 80952e4cbaeb0945f4b22eb4a0d80ea01b47cc0a

Authored by Jacob Vosmaer
1 parent 9a968616

First draft of the omnibus-gitlab release process

Showing 1 changed file with 56 additions and 0 deletions   Show diff stats
doc/release.md 0 → 100644
@@ -0,0 +1,56 @@ @@ -0,0 +1,56 @@
  1 +# Omnibus-gitlab release process
  2 +
  3 +Our main goal is to make it clear which version of GitLab is in an omnibus package.
  4 +
  5 +## On your development machine
  6 +
  7 +- Pick a tag of GitLab to package (e.g. `v6.6.0`).
  8 +- Create a release branch in omnibus-gitlab (e.g. `6-6-stable`).
  9 +- Change [the gitlab-rails version in omnibus-gitlab] (e.g. `version "v6.6.0"`).
  10 +- Commit the new version to the release branch
  11 +
  12 +```shell
  13 +# Example:
  14 +git commit -m 'Pin GitLab to v6.6.0' config/software/gitlab-rails.rb
  15 +```
  16 +
  17 +- Create an annotated tag on omnibus-gitlab corresponding to the GitLab tag.
  18 + GitLab tag `v6.6.0` becomes omnibus-gitlab tag `6.6.0.omnibus`.
  19 +
  20 +```shell
  21 +# Example:
  22 +git tag -a 6.6.0.omnibus -m 'Pin GitLab to v6.6.0'
  23 +```
  24 +
  25 +- Push the branch and the tag to the main repository.
  26 +
  27 +```shell
  28 +# Example:
  29 +git push origin 6-6-stable 6.6.0.omnibus
  30 +```
  31 +
  32 +## On the build machines
  33 +
  34 +- Check out the release branch of omnibus-gitlab.
  35 +
  36 +```shell
  37 +# Example
  38 +git fetch
  39 +git checkout 6-6-stable
  40 +```
  41 +
  42 +- Check the version with `git describe`.
  43 +
  44 +```shell
  45 +# Example
  46 +git describe # Should start with 6.6.0.omnibus
  47 +```
  48 +
  49 +- Build a package with version timestamps disabled.
  50 +
  51 +```shell
  52 +# Example
  53 +OMNIBUS_APPEND_TIMESTAMP=0 bin/omnibus build project gitlab
  54 +```
  55 +
  56 +[the gitlab-rails version in omnibus-gitlab]: ../config/software/gitlab-rails.rb#L20