Files
matchbox/docs/dev/release.md
Dalton Hubble 82cd8461c9 Add v0.9.1 release notes and update docs
* Deprecate rendering Container Linux Configs
* Use tools like [poseidon/ct](https://github.com/poseidon/terraform-provider-ct) or
[butane](https://coreos.github.io/butane/getting-started/) to validate and convert a
Butane Config (`focs` or `flatcar`) to Ignition (for Matchbox to serve)
* Please migrate to serving CoreOS Ignition directly, the Container
Linux related HTTP and gRPC endpoints will be removed in future
2022-08-01 09:06:24 -07:00

1.7 KiB

Release guide

This guide covers releasing new versions of matchbox.

Version

Create a release commit which updates old version references.

$ export VERSION=v0.9.1

Tag

Tag, sign the release version, and push it to Github.

$ git tag -s vX.Y.Z -m 'vX.Y.Z'
$ git push origin --tags
$ git push origin master

Images

Travis CI will build the Docker image and push it to Quay.io when the tag is pushed to master. Verify the new image and version.

$ sudo docker run quay.io/poseidon/matchbox:$VERSION -version

Github release

Publish the release on Github with release notes.

Tarballs

Build the release tarballs.

$ make release

Verify the reported version.

./_output/matchbox-v0.9.1-linux-amd64/matchbox -version

Signing

Release tarballs are signed by Dalton Hubble's GPG Key

cd _output
gpg2 --armor --detach-sign matchbox-$VERSION-linux-amd64.tar.gz
gpg2 --armor --detach-sign matchbox-$VERSION-darwin-amd64.tar.gz
gpg2 --armor --detach-sign matchbox-$VERSION-linux-arm.tar.gz
gpg2 --armor --detach-sign matchbox-$VERSION-linux-arm64.tar.gz

Verify the signatures.

gpg2 --verify matchbox-$VERSION-linux-amd64.tar.gz.asc matchbox-$VERSION-linux-amd64.tar.gz
gpg2 --verify matchbox-$VERSION-darwin-amd64.tar.gz.asc matchbox-$VERSION-darwin-amd64.tar.gz
gpg2 --verify matchbox-$VERSION-linux-arm.tar.gz.asc matchbox-$VERSION-linux-arm.tar.gz
gpg2 --verify matchbox-$VERSION-linux-arm64.tar.gz.asc matchbox-$VERSION-linux-arm64.tar.gz

Publish

Upload the signed tarball(s) with the Github release. Promote the release from a pre-release to an official release.