Skip to content

Commit

Permalink
Update the issue template for creating release branches
Browse files Browse the repository at this point in the history
  • Loading branch information
addyess committed Sep 17, 2024
1 parent 407f739 commit 7e68087
Showing 1 changed file with 18 additions and 39 deletions.
57 changes: 18 additions & 39 deletions .github/ISSUE_TEMPLATE/create_release_branch.md
Original file line number Diff line number Diff line change
Expand Up @@ -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**: `who plans to review the work`

<!-- 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

Expand Down Expand Up @@ -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`
Expand Down Expand Up @@ -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`
Expand All @@ -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.
Expand All @@ -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 -->
Expand All @@ -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

0 comments on commit 7e68087

Please sign in to comment.