-
Notifications
You must be signed in to change notification settings - Fork 13
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Update the issue template for creating release branches
- Loading branch information
Showing
1 changed file
with
18 additions
and
39 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -13,16 +13,16 @@ Make sure to follow the steps below and ensure all actions are completed and sig | |
- **K8s version**: 1.xx | ||
|
||
<!-- Set this to the name of the person responsible for running the release tasks, e.g. @neoaggelos --> | ||
- **Owner**: | ||
- **Owner**: `who plans to do the work` | ||
|
||
<!-- Set this to the name of the team-member that will sign-off the tasks --> | ||
- **Reviewer**: | ||
- **Reviewer**: @canonical/kubernetes | ||
|
||
<!-- Link to PR to initialize the release branch (see below) --> | ||
- **PR**: | ||
- | ||
- **PR**: https://github.com/canonical/k8s-snap/pull/`<int>` | ||
|
||
<!-- Link to PR to initialize auto-update job for the release branch (see below) --> | ||
- **PR**: | ||
- **PR**: https://github.com/canonical/k8s-snap/pull/`<int>` | ||
|
||
#### Actions | ||
|
||
|
@@ -53,7 +53,7 @@ The steps are to be followed in-order, each task must be completed by the person | |
- [ ] **Owner**: Create `release-1.xx` branch from latest `master` in k8s-dqlite | ||
- `git clone [email protected]:canonical/k8s-dqlite.git ~/tmp/release-1.xx` | ||
- `pushd ~/tmp/release-1.xx` | ||
- `git switch main` | ||
- `git switch master` | ||
- `git pull` | ||
- `git checkout -b release-1.xx` | ||
- `git push origin release-1.xx` | ||
|
@@ -89,7 +89,7 @@ The steps are to be followed in-order, each task must be completed by the person | |
- [ ] **Owner**: Create `release-1.xx` branch from latest `main` in rawfile-localpv | ||
- `git clone [email protected]:canonical/rawfile-localpv.git ~/tmp/release-1.xx` | ||
- `pushd ~/tmp/release-1.xx` | ||
- `git switch main` | ||
- `git switch rockcraft` | ||
- `git pull` | ||
- `git checkout -b release-1.xx` | ||
- `git push origin release-1.xx` | ||
|
@@ -98,7 +98,6 @@ The steps are to be followed in-order, each task must be completed by the person | |
- [ ] **Reviewer**: Ensure `release-1.xx` branch is based on latest changes on `main` at the time of the release cut. | ||
- [ ] **Owner**: Create PR to initialize `release-1.xx` branch: | ||
- [ ] Update `KUBERNETES_RELEASE_MARKER` to `stable-1.xx` in [/build-scripts/hack/update-component-versions.py][] | ||
- [ ] Update `master` to `release-1.xx` in [/build-scripts/components/k8s-dqlite/version][] | ||
- [ ] Update `"main"` to `"release-1.xx"` in [/build-scripts/hack/generate-sbom.py][] | ||
- [ ] `git commit -m 'Release 1.xx'` | ||
- [ ] Create PR against `release-1.xx` with the changes and request review from **Reviewer**. Make sure to update the issue `Information` section with a link to the PR. | ||
|
@@ -107,43 +106,22 @@ The steps are to be followed in-order, each task must be completed by the person | |
- [ ] Add `release-1.xx` in [.github/workflows/update-components.yaml][] | ||
- [ ] Remove unsupported releases from the list (if applicable, consult with **Reviewer**) | ||
- [ ] Create PR against `main` with the changes and request review from **Reviewer**. Make sure to update the issue information with a link to the PR. | ||
- [ ] **Reviewer**: On merge, confirm [Auto-update strict branch] action runs to completion and that the `autoupdate/release-1.xx-strict` branch is created. | ||
- [ ] **Owner**: Create launchpad builders for `release-1.xx` | ||
- [ ] Go to [lp:k8s][] and do **Import now** to pick up all latest changes. | ||
- [ ] Under **Branches**, select `release-1.xx`, then **Create snap package** | ||
- [ ] Set **Snap recipe name** to `k8s-snap-1.xx` | ||
- [ ] Set **Owner** to `Canonical Kubernetes (containers)` | ||
- [ ] Set **The project that this Snap is associated with** to `k8s` | ||
- [ ] Set **Series** to Infer from snapcraft.yaml | ||
- [ ] Set **Processors** to `AMD x86-64 (amd64)` and `ARM ARMv8 (arm64)` | ||
- [ ] Enable **Automatically build when branch changes** | ||
- [ ] Enable **Automatically upload to store** | ||
- [ ] Set **Registered store name** to `k8s` | ||
- [ ] In **Store Channels**, set **Track** to `1.xx-classic` and **Risk** to `edge`. Leave **Branch** empty | ||
- [ ] Click **Create snap package** at the bottom of the page. | ||
- [ ] **Owner**: Create launchpad builders for `release-1.xx-strict` | ||
- [ ] Return to [lp:k8s][]. | ||
- [ ] Under **Branches**, select `autoupdate/release-1.xx-strict`, then **Create snap package** | ||
- [ ] Set **Snap recipe name** to `k8s-snap-1.xx-strict` | ||
- [ ] Set **Owner** to `Canonical Kubernetes (containers)` | ||
- [ ] Set **The project that this Snap is associated with** to `k8s` | ||
- [ ] Set **Series** to Infer from snapcraft.yaml | ||
- [ ] Set **Processors** to `AMD x86-64 (amd64)` and `ARM ARMv8 (arm64)` | ||
- [ ] Enable **Automatically build when branch changes** | ||
- [ ] Enable **Automatically upload to store** | ||
- [ ] Set **Registered store name** to `k8s` | ||
- [ ] In **Store Channels**, set **Track** to `1.xx` and **Risk** to `edge`. Leave **Branch** empty | ||
- [ ] Click **Create snap package** at the bottom of the page. | ||
- [ ] **Reviewer**: On merge, confirm [Auto-update strict branch] action runs to completion and that the `autoupdate/release-1.xx-*` flavor branches are created. | ||
- [ ] autoupdate/release-1.xx-strict | ||
- [ ] autoupdate/release-1.xx-moonray | ||
- [ ] **Owner**: Create launchpad builders for `release-1.xx` and flavors | ||
- [ ] Run the [Confirm Snap Builds][] Action | ||
- [ ] **Reviewer**: Ensure snap recipes are created in [lp:k8s/+snaps][] | ||
- look for `k8s-snap-1.xx` | ||
- look for `k8s-snap-1.xx-strict` | ||
- [ ] look for `k8s-snap-1.xx-classic` | ||
- [ ] look for `k8s-snap-1.xx-strict` | ||
- [ ] look for `k8s-snap-1.xx-moonray` | ||
- [ ] make sure each is "Authorized for Store Upload" | ||
|
||
#### After release | ||
|
||
- [ ] **Owner** follows up with the **Reviewer** and team about things to improve around the process. | ||
- [ ] **Owner**: After a few weeks of stable CI, update default track to `1.xx/stable` via | ||
- On the snap [releases page][], select `Track` > `1.xx` | ||
- [ ] **Reviewer**: Ensure snap recipes are created in [lp:k8s/+snaps][] | ||
|
||
|
||
<!-- LINKS --> | ||
|
@@ -161,6 +139,7 @@ The steps are to be followed in-order, each task must be completed by the person | |
[.github/workflows/update-components.yaml]: ../workflows/update-components.yaml | ||
[/build-scripts/components/hack/update-component-versions.py]: ../../build-scripts/components/hack/update-component-versions.py | ||
[/build-scripts/components/k8s-dqlite/version]: ../../build-scripts/components/k8s-dqlite/version | ||
[/build-scripts/hack/generate-sbom.py]: ../..//build-scripts/hack/generate-sbom.py | ||
[/build-scripts/hack/generate-sbom.py]: ../../build-scripts/hack/generate-sbom.py | ||
[lp:k8s]: https://code.launchpad.net/~cdk8s/k8s/+git/k8s-snap | ||
[lp:k8s/+snaps]: https://launchpad.net/k8s/+snaps | ||
[Confirm Snap Builds]: https://github.com/canonical/canonical-kubernetes-release-ci/actions/workflows/create-release-branch.yaml |