From 27273fdbc63e211dde811bfff7f53dcfd4bdb151 Mon Sep 17 00:00:00 2001 From: Ashley Davis Date: Wed, 27 Mar 2024 11:07:24 +0000 Subject: [PATCH] add initial documentation of release process Signed-off-by: Ashley Davis --- README.md | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/README.md b/README.md index 8bcc4877..c8c8cc14 100644 --- a/README.md +++ b/README.md @@ -35,3 +35,36 @@ the features that cert-manager provides. Please follow the documentation at [cert-manager.io](https://cert-manager.io/docs/projects/csi-driver/) for installing and using csi-driver. + +## Release Process + +There is a semi-automated release process for csi-driver. +When you create a Git tag with a tagname that has a `v` prefix and push it to GitHub +it will trigger the [release workflow]. + +This will: + +1. Create and push a Docker image to `quay.io/jetstack/cert-manager-csi-driver:${{ github.ref_name }}` +2. Create a Helm chart +3. Create a *draft* GitHub release with the Helm chart file attached and containing a reference to the Docker image. + +To perform a release: + +1. Create and push a Git tag + + ```sh + export VERSION=v0.5.0-alpha.0 + git tag --annotate --message="Release ${VERSION}" "${VERSION}" + git push origin "${VERSION}" + ``` + +2. Wait for the [release workflow] to succeed and if successful visit the draft release page to download the attached Helm chart attachment. + +3. Create a PR in the [jetstack/jetstack-charts repository on GitHub](https://github.com/jetstack/jetstack-charts), containing the Helm chart file that is attached to the draft GitHub release. This is only currently possible for maintainers inside Venafi, but will be changed in the future. + +4. Wait for the PR to be merged and verify that the Helm chart is available from https://charts.jetstack.io. + +5. Visit the [releases page], edit the draft release, click "Generate release notes", and publish the release. + +[release workflow]: https://github.com/cert-manager/csi-driver/actions/workflows/release.yaml +[releases page]: https://github.com/cert-manager/csi-driver/releases