Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add instructions for picking commit in the release #6735

Merged
merged 1 commit into from
Jun 21, 2023
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 4 additions & 3 deletions tekton/release-cheat-sheet.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,9 @@ the pipelines repo, a terminal window and a text editor.

1. `cd` to root of Pipelines git checkout.

1. Select the commit you would like to build the release from, most likely the
most recent commit at https://github.com/tektoncd/pipeline/commits/main
and note the commit's full (40-digit) hash.
1. Select the commit you would like to build the release from (NOTE: the commit is full (40-digit) hash.)
- Select the most recent commit on the ***main branch*** if you are cutting a major or minor release i.e. `x.0.0` or `0.x.0`
- Select the most recent commit on the ***`release-<version number>x` branch***, e.g. [`release-v0.47.x`](https://github.com/tektoncd/pipeline/tree/release-v0.47.x) if you are patching a release i.e. `v0.47.2`.

1. Ensure the correct version of the release pipeline is installed on the cluster:

Expand Down Expand Up @@ -143,6 +143,7 @@ the pipelines repo, a terminal window and a text editor.
and push it to the repo https://github.com/tektoncd/pipeline.
(This can be done on the Github UI.)
Make sure to fetch the commit specified in `TEKTON_RELEASE_GIT_SHA` to create the released branch.
> Background: The reason why we need to create a branch for the release named `release-<version number>x` is for future patch releases. Cherrypicked PRs for the patch release will be merged to this branch. For example, [v0.47.0](https://github.com/tektoncd/pipeline/releases/tag/v0.47.0) has been already released, but later on we found that an important [PR](https://github.com/tektoncd/pipeline/pull/6622) should have been included to that release. Therefore, we need to do a patch release i.e. v0.47.1 by [cherrypicking this PR](https://github.com/tektoncd/pipeline/pull/6622#pullrequestreview-1414804838), which will trigger [tekton-robot to create a new PR](https://github.com/tektoncd/pipeline/pull/6622#issuecomment-1539030091) to merge the changes to the [release-v0.47.x branch](https://github.com/tektoncd/pipeline/tree/release-v0.47.x).
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think it would be sufficient to say here that we create a release branch in case we need to cherry-pick commits to it later for a patch release-- no need to go into additional details.

If you want to cover cherry-picking, it's probably worth updating our patch release docs on how to cherry-pick with and without the automation.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

+1, we could document the formal way of cherry picking process, and then give the detailed example


1. If the release introduces a new minimum version of Kubernetes required,
edit `README.md` on `main` branch and add the new requirement with in the
Expand Down