mirror of
https://github.com/sourcegraph/sourcegraph.git
synced 2026-02-06 20:31:48 +00:00
releases: improvements to the patch release tracking issue (#56056)
* Replace cherry picking by backport check * Remove line for checking CI as this happens on backports already * Move note about updating branches * Update security approval link and slack channel name * Removes redundant `release:finalize` step * Fix broken link to release batch change * Add changelog instructions * Update dev/release/templates/patch_release_issue_template.md Co-authored-by: Joe Chen <joe@sourcegraph.com> * lint fix * lint fix --------- Co-authored-by: Joe Chen <joe@sourcegraph.com>
This commit is contained in:
parent
a3957e7657
commit
beddb2cecb
@ -13,7 +13,8 @@ Arguments:
|
||||
|
||||
This release is scheduled for **$RELEASE_DATE**.
|
||||
|
||||
> **Warning**: To get your commits in `main` included in this patch release, add the `backport-$MAJOR.$MINOR` to the PR to `main`.
|
||||
> ![WARNING]
|
||||
> To get your commits in `main` included in this patch release, add the `backport-$MAJOR.$MINOR` to the PR to `main`.
|
||||
|
||||
## Setup
|
||||
|
||||
@ -28,35 +29,29 @@ pnpm run release release:activate-release
|
||||
|
||||
## Prepare release
|
||||
|
||||
Ensure that all [patch request issues](https://github.com/sourcegraph/sourcegraph/issues?q=is%3Aissue+is%3Aopen+sort%3Aupdated-desc+label%3Apatch-release-request) are accounted for, and have all relevant commits across relevant repositories listed above in the checklist.
|
||||
|
||||
For each of the following repositories you have made changes to, cherry-pick (see snippet below) and check off commits listed above.
|
||||
|
||||
- [ ] `sourcegraph/sourcegraph` ([`$MAJOR.$MINOR` release branch](https://github.com/sourcegraph/sourcegraph/tree/$MAJOR.$MINOR) [CI](https://buildkite.com/sourcegraph/sourcegraph/builds?branch=$MAJOR.$MINOR))
|
||||
- [ ] `sourcegraph/deploy-sourcegraph` ([`$MAJOR.$MINOR` release branch](https://github.com/sourcegraph/deploy-sourcegraph/tree/$MAJOR.$MINOR) [CI](https://buildkite.com/sourcegraph/deploy-sourcegraph/builds?branch=$MAJOR.$MINOR))
|
||||
- [ ] `sourcegraph/deploy-sourcegraph-docker` ([`$MAJOR.$MINOR` release branch](https://github.com/sourcegraph/deploy-sourcegraph-docker/tree/$MAJOR.$MINOR) [CI](https://buildkite.com/sourcegraph/deploy-sourcegraph-docker/builds?branch=$MAJOR.$MINOR))
|
||||
- [ ] `sourcegraph/deploy-sourcegraph-helm` ([`$MAJOR.$MINOR` release branch](https://github.com/sourcegraph/deploy-sourcegraph-helm/tree/release/$MAJOR.$MINOR) [CI](https://buildkite.com/sourcegraph/deploy-sourcegraph-helm/builds?branch=release/$MAJOR.$MINOR))
|
||||
|
||||
- [ ] Ensure CI passes on all release branches listed above.
|
||||
- [ ] Ensure that all [backported PRs](https://github.com/sourcegraph/sourcegraph/issues?q=is%3Aopen+label%3Abackported-to-$MAJOR.$MINOR+sort%3Aupdated-desc) have been merged
|
||||
|
||||
Create and test the first release candidate:
|
||||
|
||||
> ![NOTE]
|
||||
> Ensure that you've pulled both main and release branches before running this command.
|
||||
|
||||
- [ ] Push a new release candidate tag. This command will automatically detect the appropriate release candidate number. This command can be executed as many times as required, and will increment the release candidate number for each subsequent build: :
|
||||
|
||||
```sh
|
||||
pnpm run release release:create-candidate
|
||||
```
|
||||
|
||||
> **Note**: Ensure that you've pulled both main and release branches before running this command.
|
||||
|
||||
- [ ] Ensure that the following Buildkite pipelines all pass for the `v$MAJOR.$MINOR.$PATCH-rc.1` tag:
|
||||
- [ ] [Sourcegraph pipeline](https://buildkite.com/sourcegraph/sourcegraph/builds?branch=v$MAJOR.$MINOR.$PATCH-rc.1)
|
||||
- [ ] File any failures and regressions in the pipelines as `release-blocker` issues and assign the appropriate teams.
|
||||
|
||||
**Note**: You will need to re-check the above pipelines for any subsequent release candidates. You can see the Buildkite logs by tweaking the "branch" query parameter in the URLs to point to the desired release candidate. In general, the URL scheme looks like the following (replacing `N` in the URL): `https://buildkite.com/sourcegraph/sourcegraph/builds?branch=v$MAJOR.$MINOR.$PATCH-rc.N`
|
||||
> ![NOTE]
|
||||
> You will need to re-check the above pipelines for any subsequent release candidates. You can see the Buildkite logs by tweaking the "branch" query parameter in the URLs to point to the desired release candidate. In general, the URL scheme looks like the following (replacing `N` in the URL): `https://buildkite.com/sourcegraph/sourcegraph/builds?branch=v$MAJOR.$MINOR.$PATCH-rc.N`
|
||||
|
||||
Once there is a release candidate available:
|
||||
|
||||
- [ ] Create a [Security release approval](https://github.com/sourcegraph/sourcegraph/issues/new/choose#:~:text=Security%20release%20approval) issue and post a message in the [#ask-security](https://sourcegraph.slack.com/archives/C1JH2BEHZ) channel tagging `@security-support`.
|
||||
- [ ] Create a [Security release approval](https://github.com/sourcegraph/sourcegraph/issues/new?assignees=andreeleuterio%2C+evict%2C+willdollman%2C+mohammadualam&labels=release-blocker&projects=&template=security-release-approval.md&title=$MAJOR.$MINOR.$PATCH+Security+approval) issue and post a message in the [#discuss-security](https://sourcegraph.slack.com/archives/C1JH2BEHZ) channel tagging `@security-support`.
|
||||
|
||||
## Stage release
|
||||
|
||||
@ -83,7 +78,7 @@ Once there is a release candidate available:
|
||||
|
||||
<!-- Keep in sync with release_issue_template's "Finalize release" section, except no blog post -->
|
||||
|
||||
- [ ] From the [release batch change](https://sourcegraph.sourcegraph.com/organizations/sourcegraph/batch-changes/release-sourcegraph-$MAJOR.$MINOR.$PATCHs), merge the release-publishing PRs created previously. Note: some PRs require certain actions performed before merging.
|
||||
- [ ] From the [release batch change](https://sourcegraph.sourcegraph.com/organizations/sourcegraph/batch-changes/release-sourcegraph-$MAJOR.$MINOR.$PATCH), merge the release-publishing PRs created previously. Note: some PRs require certain actions performed before merging.
|
||||
- [ ] **After all the PRs are merged**, perform following checks/actions
|
||||
- For [deploy-sourcegraph](https://github.com/sourcegraph/deploy-sourcegraph)
|
||||
- [ ] Ensure the [release tag](https://github.com/sourcegraph/deploy-sourcegraph/tags) has been created
|
||||
@ -92,9 +87,8 @@ Once there is a release candidate available:
|
||||
- For [deploy-sourcegraph-helm](https://github.com/sourcegraph/deploy-sourcegraph-helm), also:
|
||||
- [ ] Update the [changelog](https://github.com/sourcegraph/deploy-sourcegraph-helm/blob/main/charts/sourcegraph/CHANGELOG.md) to include changes from the patch
|
||||
- [ ] Cherry-pick the release-publishing PR from the release branch into `main`
|
||||
- [ ] Finalize and announce that the release is live:
|
||||
- [ ] Announce that the release is live:
|
||||
```sh
|
||||
pnpm run release release:finalize
|
||||
pnpm run release release:announce
|
||||
```
|
||||
|
||||
@ -107,5 +101,9 @@ Once there is a release candidate available:
|
||||
```
|
||||
|
||||
- [ ] Open a PR to update [`dev/release/release-config.jsonc`](https://github.com/sourcegraph/sourcegraph/edit/main/dev/release/release-config.jsonc) after the auto-generated changes above if any.
|
||||
- [ ] Update the [CHANGELOG](https://github.com/sourcegraph/sourcegraph/blob/main/CHANGELOG.md) by opening and merging a PR into `main` (**not** the release branch), making the following changes:
|
||||
- [ ] Move the released changes into the $MAJOR.$MINOR.$PATCH version section
|
||||
- [ ] Add a new section for the [upcoming patch release](https://handbook.sourcegraph.com/departments/engineering/dev/process/releases/#current-patch-schedule) if this is not the last planned patch release for version $MAJOR.$MINOR
|
||||
|
||||
> **Note:** If another patch release is requested after the release, ask that a [patch request issue](https://github.com/sourcegraph/sourcegraph/issues/new?assignees=&labels=team%2Fdistribution&template=request_patch_release.md) be filled out and approved first.
|
||||
> ![NOTE]
|
||||
> If another patch release is requested after the release, ask that a [patch request issue](https://github.com/sourcegraph/sourcegraph/issues/new?assignees=&labels=team%2Fdistribution&template=request_patch_release.md) be filled out and approved first.
|
||||
|
||||
Loading…
Reference in New Issue
Block a user