Information about the release
Main reason driving the release
Final minor version
py-heptapod: unchanged since 0.26.0rc2
HGitaly: unchanged since 0.26.0rc2
Heptapod Shell: unchanged since 0.26.0rc2
- merge stabler branches into the relevant branch if needed
- no new upstream GitLab version
The release branch is e.g.,
heptapod-0-20while the development branch is
- merge stabler development branches into the development branch (pipelines not really needed).
start a topic from the head of the release branch (e.g,
- merge the development branch into the release branch if needed. Commit.
- fill in HEPTAPOD_CHANGELOG Be sure to include the changes related to the stabler branches. If needed copy them from the stabler release branches, as these won't get merged.
- set HEPTAPOD_VERSION
- update HEPTAPOD_SHELL_VERSION if needed
- update the requirements files in the python subdirectory if needed
if there is a new version of the
hgitalyRuby gem, update
commit those changes and push the topic – if there is an upstream
GitLab version change, this creates a pipeline with the
gitlab-prebuildsjob. Wait for its successful completion (expected time 1h).
- topic publication: create a Merge Request for the topic, select auto-merge on success (expected time 0.5h)
- once the topic is published by CI, pull
create a tag on the release branch head without a topic (run
hg topic --clear if neededbefore)
- push the tag, don't publish it yet. The tag pipeline will push the source tarball to download.h.n and push a commit to reference it and a tag in Omnibus. The resulting pipeline in Omnibus will build the package for Ubuntu, then the Docker image, then trigger a full run of the functional tests on it, as a pipeline on heptapod-tests.
- Docker image:
- double check that the heptapod-tests CI jobs did run for the image built in the Omnibus pipeline.
retrieve the image built by the Omnibus pipeline from registry.h.n,
retag it as
- Docker push for those two image tags.
- announce the release at least on Twitter and Mastodon
- publish the changesets in all repositories made during the process (don't forget Omnibus)
- Create group milestone for next point release, move all remaining issues bearing the milestone of this release to it.
- Close milestone for this release.