From e7511e6eeb954370c4605c3a1c5f495fd08279e9 Mon Sep 17 00:00:00 2001 From: Sean McGinnis Date: Tue, 2 Feb 2021 16:55:22 -0600 Subject: [PATCH] Add notes on steps to perform when doing a release There are a few things that need to be done for each release. This adds some basic notes to help make sure all steps are followed. This is a working document, so hopefully it will be expanded over time as we identify other steps that should be done. Signed-off-by: Sean McGinnis --- docs/release_process.md | 47 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 docs/release_process.md diff --git a/docs/release_process.md b/docs/release_process.md new file mode 100644 index 00000000..5a3b0a2c --- /dev/null +++ b/docs/release_process.md @@ -0,0 +1,47 @@ +# Release Process + +These are notes to help follow a consistent release process. See something +important missing? Please submit a pull request to add anything else that would +be useful! + +## Preparing for a release + +There are a few steps that should be taken prior to creating the actual release +itself. + +1. Collect changes since last release. This can be done by looking directly at + merged commit messages (``git log [last_release_tag]...HEAD``), or by + viewing the changes on GitHub ([example: + https://github.com/kubernetes/node-problem-detector/compare/v0.8.6...master](https://github.com/kubernetes/node-problem-detector/compare/v0.8.6...master)). + +1. Based on the changes to be included in the release, determine what the next + release number should be. We strive to follow [SemVer](https://semver.org/) + as much as possible. + +1. Update [CHANGELOG](https://github.com/kubernetes/node-problem-detector/blob/master/CHANGELOG.md) + with all significant changes. + +## Create release + +Once changes have been merged to the CHANGELOG, perform the actual release via +GitHub. When creating the release, make sure to include the following in the +body of the release: + +1. For convenience, add a link to easily view the changes since the last + release (e.g. + [https://github.com/kubernetes/node-problem-detector/compare/v0.8.5...v0.8.6](https://github.com/kubernetes/node-problem-detector/compare/v0.8.5...v0.8.6)). + +1. There is no need to duplicate everything from the CHANGELOG, but include the + most significant things so someone just viewing the release entry will have + an idea of what it includes. + +1. Provide a link to the new image release (e.g. `Image: + k8s.gcr.io/node-problem-detector/node-problem-detector:v0.8.6`) + +## Post release steps + +1. Update image version in + [deployment/node-problem-detector.yaml](https://github.com/kubernetes/node-problem-detector/blob/422c088d623488be33aa697588655440c4e6a063/deployment/node-problem-detector.yaml#L32). + + Update the image version in the deployment file so anyone deploying directly + from the repo deployment file will get the newest image deployed.