-
Notifications
You must be signed in to change notification settings - Fork 14
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
b60e0be
commit 2d7e190
Showing
321 changed files
with
10,198 additions
and
1,946 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**: `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 | ||
|
||
|
@@ -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 |
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 |
---|---|---|
@@ -0,0 +1,29 @@ | ||
name: Auto-merge Successful PRs | ||
|
||
on: | ||
workflow_dispatch: | ||
schedule: | ||
- cron: "0 */4 * * *" # Every 4 hours | ||
|
||
permissions: | ||
contents: read | ||
|
||
jobs: | ||
merge-successful-prs: | ||
runs-on: ubuntu-latest | ||
|
||
steps: | ||
- name: Harden Runner | ||
uses: step-security/harden-runner@v2 | ||
with: | ||
egress-policy: audit | ||
- name: Checking out repo | ||
uses: actions/checkout@v4 | ||
- uses: actions/setup-python@v5 | ||
with: | ||
python-version: '3.12' | ||
- name: Auto-merge pull requests if all status checks pass | ||
env: | ||
GH_TOKEN: ${{ secrets.BOT_TOKEN }} | ||
run: | | ||
build-scripts/hack/auto-merge-successful-pr.py |
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
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
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 |
---|---|---|
@@ -0,0 +1,32 @@ | ||
name: Documentation Spelling Check | ||
|
||
on: | ||
workflow_dispatch: | ||
# pull_request: | ||
# paths: | ||
# - 'docs/**' | ||
permissions: | ||
contents: read | ||
|
||
jobs: | ||
spell-check: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@v4 | ||
- name: Install aspell | ||
run: sudo apt-get install aspell aspell-en | ||
- id: spell-check | ||
name: Spell Check | ||
run: make spelling | ||
working-directory: docs/canonicalk8s | ||
continue-on-error: true | ||
# - if: ${{ github.event_name == 'pull_request' && steps.spell-check.outcome == 'failure' }} | ||
# uses: actions/github-script@v6 | ||
# with: | ||
# script: | | ||
# github.rest.issues.createComment({ | ||
# issue_number: context.issue.number, | ||
# owner: context.repo.owner, | ||
# repo: context.repo.repo, | ||
# body: 'Hi, looks like pyspelling job found some issues, you can check it [here](${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }})' | ||
# }) |
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
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
Oops, something went wrong.