This document describes the changes required in order to create a new cdk8s-plus-XX library based on the latest kubernetes version. These steps should be executed in order.
-
(cdk8s repo): Generate
kubernetes-schema/vX.XX.X/_definitions.jsontools/import-spec.sh x.xx.x # provide the new version number e.g. 1.25.0 -
Create PR, review then merge the updated spec into cdk8s/master branch (e.g. v25 PR).
-
(cdk8s-plus-go repo): Create and publish a new branch for the new k8s version
git checkout -b k8s.xx # e.g. k8s.25 for version 1.25.0 git push --set-upstream origin k8s.xx
-
Open the cdk8s-plus GitHub label list
-
Add a new label for the current Kubernetes version.
- Label name:
backport-to-k8s-XX/main - Label color:
#F53E94
- Label name:
e.g. If you were upgrading from v24 -> v25 the new label would be backport-to-k8s-24/main
-
Create a new branch in the cdk8s-plus off the current default branch. The new branch should be named
k8s-XX/main(e.g.k8s-25/mainfor K8s v1.25.0). -
On a new branch, based off
k8s-XX/main, do the following:- Bump the minor version in latest-k8s-version.txt
- (
README.md): In the table of supported versions, add a new row and remove the oldest one. yarn projenyarn rotate# updates all version references in documenationyarn run import# codegen the k8s imports file based on the new schema.yarn build- Create a PR to the
k8s-XX/mainbranch. (See example).
-
Wait for the PR above to be merged and verify that automation builds/tags/releases the new version successfully.
-
Update cdk8s-plus default branch to the new branch in the GitHub repo settings.
-
Update any existing PRs to use k8s-XX/main as the base.
-
Rotate the backport labels on existing PRs. (for exmaple when rotating from k8s.29 to k8s.30, remove the
backport-to-k8s-27/mainlabel and add thebackport-to-k8s-29/mainlabel. -
Delete the
backport-to-k8s-(XX - 3)/mainlabel. (for exmaple when rotating from k8s.29 to k8s.30, delete thebackport-to-k8s-27/mainlabel
In the (cdk8s repo):
-
Create a new branch off of cdk8s/master and:
- Bump the minor version in latest-k8s-version.txt
yarn projenyarn rotate-cdk8s-plus
-
Create a PR for the new branch, review then merge into cdk8s/master branch. (See example)
In the (cdk-ops):
-
Create a new branch and:
- Bump the minor version in latest-cdk8s-plus-version.txt
yarn projen
-
Create a PR and send for approval. (See example)