...
1## Registry Release Checklist
2
310. Compile release notes detailing features added since the last release.
4
5 Add release template file to `releases/` directory. The template is defined
6by containerd's release tool. Name the file using the version, for rc add
7an `-rc` suffix.
8See https://github.com/containerd/containerd/tree/master/cmd/containerd-release
9
1020. Update the `.mailmap` files.
11
1230. Update the version file: `https://github.com/docker/distribution/blob/master/version/version.go`
13
1440. Create a signed tag.
15
16 Choose a tag for the next release, distribution uses semantic versioning
17and expects tags to be formatted as `vx.y.z[-rc.n]`. Run the release tool using
18the release template file and tag to generate the release notes for the tag
19and Github release. To create the tag, you will need PGP installed and a PGP
20key which has been added to your Github account. The comment for the tag will
21be the generate release notes, always compare with previous tags to ensure
22the output is expected and consistent.
23Run `git tag --cleanup=whitespace -s vx.y.z[-rc.n] -F release-notes` to create
24tag and `git -v vx.y.z[-rc.n]` to verify tag, check comment and correct commit
25hash.
26
2750. Push the signed tag
28
2960. Create a new [release](https://github.com/docker/distribution/releases).
30In the case of a release candidate, tick the `pre-release` checkbox. Use
31the generate release notes from the release tool
32
3370. Update the registry binary in the [distribution library image repo](https://github.com/docker/distribution-library-image) by running the update script and opening a pull request.
34
3580. Update the official image. Add the new version in the [official images repo](https://github.com/docker-library/official-images) by appending a new version to the `registry/registry` file with the git hash pointed to by the signed tag. Update the major version to point to the latest version and the minor version to point to new patch release if necessary.
36e.g. to release `2.3.1`
37
38 `2.3.1 (new)`
39
40 `2.3.0 -> 2.3.0` can be removed
41
42 `2 -> 2.3.1`
43
44 `2.3 -> 2.3.1`
45
4690. Build a new distribution/registry image on [Docker hub](https://hub.docker.com/u/distribution/dashboard) by adding a new automated build with the new tag and re-building the images.
View as plain text