From eb7e4f4696591994e3aff47d50eccdaf04f5ca3c Mon Sep 17 00:00:00 2001 From: David Tesar Date: Mon, 17 Oct 2022 12:25:17 -0700 Subject: [PATCH] update release process (#396) --- RELEASE_CHECKLIST.md | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/RELEASE_CHECKLIST.md b/RELEASE_CHECKLIST.md index e75c266ec..d70760099 100644 --- a/RELEASE_CHECKLIST.md +++ b/RELEASE_CHECKLIST.md @@ -4,14 +4,16 @@ This document describes the checklist to publish a release via GitHub workflow. -NOTE: Make sure the dependencies in `go.mod` file are expected by the release. For example, if there are dependencies on certain version of notation library (notation-go or notation-core-go) or ORAS library (oras-go), make sure that version of library is released first, and the version number is updated accordingly in `go.mod` file. +NOTE: Make sure the dependencies in `go.mod` file are expected by the release. For example, if there are dependencies on certain version of notation library (notation-go or notation-core-go) or ORAS library (oras-go), make sure that version of library is released first, and the version number is updated accordingly in `go.mod` file. After updating go.mod file, run `go mod tidy` to ensure the go.sum file is also updated with any potential changes. ## Release Process + 1. Determine a [SemVer2](https://semver.org/)-valid version prefixed with the letter `v` for release. For example, `version="v1.0.0-alpha.1"`. -2. Bump up the `Version` in [internal/version/version.go](internal/version/version.go#L5) and open a PR for the changes. -3. Wait for the PR merge. -4. Make a fresh clone of the repository, check the `git log`, and create a tag by `git tag $version`. -5. After double checking the digest of the tag, push the tag directly to the repository by `git push origin $version`. -6. Wait for the completion of the GitHub action `release-github`. -7. Check the new draft release, revise the release description, and publish the release. -8. Announce the release in the community. +1. Bump up the `Version` in [internal/version/version.go](internal/version/version.go#L5) and open a PR for the changes. +1. Wait for the PR merge. +1. Be on the main branch connected to the actual repository (not a fork) and `git pull`. Ensure `git log -1` shows the latest commit on the main branch. +1. Create a tag `git tag -am $version $version` +1. `git tag` and ensure the name in the list added looks correct, then push the tag directly to the repository by `git push --follow-tags`. +1. Wait for the completion of the GitHub action [release-github](https://github.com/notaryproject/notation/actions/workflows/release-github.yml). +1. Check the new draft release, revise the release description, and publish the release. +1. Announce the release in the community.