GitLab Runner 11.4 release checklist
GitLab Runner 11.4 release checklist
GitLab Runner Release manager: @tmaczukin
Release blog post MR: gitlab-com/www-gitlab-com!15078 (merged)
Runner entries need to be added to blog post until: 2018-10-11
Technical description of the release, with commands examples, can be found at: https://gitlab.com/gitlab-org/gitlab-runner/blob/master/docs/release_process/how_to_release_runner.md
Before 7th
-
chose a release manager
-
link release blog post's MR
-
set deadline for add entries to release blog post
Please check what deadline is set for `General Contributions` section in the release blog post Merge Request. It should be 6th working day before the 22nd. In that case we can set our deadline for 7th working day before 22nd, however if the deadline from the MR is earlier, then use the eraliest one.
-
Update the
.Major
and.Minor
to a specific release version
First working day after 7th - v11.4.0-rc1 release
-
check if Pipeline for
master
is passing:-
add all required fixes to make
master
Pipeline passing
-
add all required fixes to make
-
git checkout master && git pull
in your local working copy! -
add v11.4.0-rc1 CHANGELOG entries and commit
git add CHANGELOG.md; git commit -m "Update CHANGELOG for v11.4.0-rc1" -S
-
tag and push v11.4.0-rc1:
git tag -s v11.4.0-rc1 -m "Version v11.4.0-rc1" && git push origin v11.4.0-rc1
-
create and push
11-4-stable
branch:git checkout -b 11-4-stable; git push -u origin 11-4-stable
-
checkout to
master
, updateVERSION
file to11.5.0
and pushmaster
:git checkout master; echo -n "11.5.0" > VERSION; git add VERSION; git commit -m "Bump version to 11.5.0" -S && git push
-
wait for Pipeline for
v11.4.0-rc1
to pass-
add all required fixes to make
v11.4.0-rc1
passing
-
add all required fixes to make
-
deploy v11.4.0-rc1 (https://gitlab.com/gitlab-com/runbooks/blob/master/howto/update-gitlab-runner-on-managers.md)
New features window is closed - things not merged into master
up to
this day, will be released with next release.
7 working days before 22th (2018-10-11)
-
prepare entries for the release blog post. Items can be generated with
./scripts/changelog2releasepost | less
-
add release entry:
Add description to the
SECONDARY FEATURES
list using following template:- name: GitLab Runner 11.4 available_in: [core, starter, premium, ultimate] documentation_link: 'https://docs.gitlab.com/runner' documentation_text: "Read through the documentation of GitLab Runner" description: | We're also releasing GitLab Runner 11.4 today! GitLab Runner is the open source project that is used to run your CI/CD jobs and send the results back to GitLab. ##### Most interesting changes: * [Support JSON logging](https://gitlab.com/gitlab-org/gitlab-runner/merge_requests/1020) * [Add docker support for interactive web terminal](https://gitlab.com/gitlab-org/gitlab-runner/merge_requests/1008) * [Add support docker machine web terminal support](https://gitlab.com/gitlab-org/gitlab-runner/merge_requests/1046) * [Allow disabling docker entrypoint overwrite](https://gitlab.com/gitlab-org/gitlab-runner/merge_requests/965) * [Add metrics with concurrent and limit values](https://gitlab.com/gitlab-org/gitlab-runner/merge_requests/1019) * [Add a gitlab_runner_jobs_total metric](https://gitlab.com/gitlab-org/gitlab-runner/merge_requests/1018) * [Add a job duration histogram metric](https://gitlab.com/gitlab-org/gitlab-runner/merge_requests/1025) * [Fix command and args assignment when creating containers with K8S executor](https://gitlab.com/gitlab-org/gitlab-runner/merge_requests/1010) List of all changes can be found in GitLab Runner's [CHANGELOG](https://gitlab.com/gitlab-org/gitlab-runner/blob/v11.4.0/CHANGELOG.md).
At 20th - next RC release
At this day we should release an RC version, if there was no RC recently - especially if the only RC version was the RC1 released near 7th day of month.
-
check if Pipeline for
11-4-stable
is passing:-
add all required fixes to make
11-4-stable
Pipeline passing
-
add all required fixes to make
-
git checkout 11-4-stable && git pull
in your local working copy! -
add v11.4.0-rcZ CHANGELOG entries and commit
git add CHANGELOG.md; git commit -m "Update CHANGELOG for v11.4.0-rcZ" -S
-
tag and push v11.4.0-rcZ and 11-4-stable:
git tag -s v11.4.0-rcZ -m "Version v11.4.0-rcZ" && git push origin 11-4-stable v11.4.0-rcZ
-
wait for Pipeline for
v11.4.0-rcZ
to pass-
add all required fixes to make
v11.4.0-rcZ
passing
-
add all required fixes to make
-
deploy v11.4.0-rcZ (https://gitlab.com/gitlab-com/runbooks/blob/master/howto/update-gitlab-runner-on-managers.md)
At 22th - the release day
-
Before 12:00 UTC
-
git checkout 11-4-stable && git pull
in your local working copy! - merge all RCx CHANGELOG entries into release entry and commit
git add CHANGELOG.md && git commit -m "Update CHANGELOG for v11.4.0" -S
-
tag and push v11.4.0 and 11-4-stable:
git tag -s v11.4.0 -m "Version v11.4.0" && git push origin 11-4-stable v11.4.0
-
checkout to
master
and merge11-4-stable
intomaster
(only this one time, to update CHANGELOG.md and make the tag available for ./scripts/prepare-changelog-entries.rb in next stable release), pushmaster
:git checkout master; git merge --no-ff 11-4-stable # check that the only changes are in CHANGELOG.md git push
-
-
Before 15:00 UTC
-
wait for Pipeline for
v11.4.0
to pass-
add all required fixes to make
v11.4.0
passing
-
add all required fixes to make
- deploy stable version to all production Runners
- update runner helm chart to latest production version: charts/gitlab-runner!52
-
wait for Pipeline for
-
After helm chart MR is merged (charts/gitlab-runner!52):
- update Runner's chart version used by GitLab: gitlab-ce!22541
RC release template
There should be at least one RC version between RC1 and stable release. If there are any important changes merged into stable branch (like bug/security fixes) the RC should be prepared and deployed as soon as possible. For a less important changes (documentation, simple fixes of typos etc.) the RC can wait a little.
When deciding to release a new RC version, please update the checklist using the following template:
## At _day here_ - **v11.4.0-rcZ** release
- [ ] check if Pipeline for `11-4-stable` is passing: [](https://gitlab.com/gitlab-org/gitlab-runner/commits/11-4-stable)
- [ ] add all required fixes to make `11-4-stable` Pipeline passing
- [ ] `git checkout 11-4-stable && git pull` in your local working copy!
- [ ] add **v11.4.0-rcZ** CHANGELOG entries and commit
```bash
git add CHANGELOG.md; git commit -m "Update CHANGELOG for v11.4.0-rcZ" -S
```
- [ ] tag and push **v11.4.0-rcZ** and **11-4-stable**:
```bash
git tag -s v11.4.0-rcZ -m "Version v11.4.0-rcZ" && git push origin 11-4-stable v11.4.0-rcZ
```
- [ ] wait for Pipeline for `v11.4.0-rcZ` to pass [](https://gitlab.com/gitlab-org/gitlab-runner/commits/v11.4.0-rcZ)
- [ ] add all required fixes to make `v11.4.0-rcZ` passing
- [ ] deploy **v11.4.0-rcZ** (https://gitlab.com/gitlab-com/runbooks/blob/master/howto/update-gitlab-runner-on-managers.md)