title | layout |
---|---|
Kubean Release Process |
page |
This is the process to follow to make a new release. Similar to Semantic Version. The project refers to the respective components of this triple as ...
- Minor release process, that means a version which have some features , such as
v0.4.0
- Patch release process, that means a version which includes some bug fix , such as
v0.4.1
- RC release process, that means a preview version before the official release ,such as
v0.4.2-rc1
- when valuable features are produced by Kubespray/Kubean
- when valuable optimizations are introduced by Kubespray/Kubean
- when valuable bugs are fixed by Kubespray/kubean
For example, A minor release is e.g. v0.4.0
.
A minor release requires:
pre steps:
- Check pipeline success
- Raise PR to update the version of kubespray
- smoke test(optional)
core steps:
- push new tag to release
- Smoke test based on new version
post steps:
- Submit an issue of the kubean version update to the documentation site
- Website updates,blog update
- announce Message at the NDX work WeChat(include the changelog)
Note: By default, each time kubeam releases a new version, we update the kubespray version(commit) in version.yml.
Before raise a release for Kubean, we need to ensure whether update the version of Kubespray or not. It depends on whether the upstream brings up something interesting or important, if so, we need to update it. But before that we should ensure that the new version of Kubespray is stable enough. So we need to check the latest successful E2E test
- Get the version(commit SHA-1) of kubespray by looking up the latest successful E2E test
- Update the version of kubespray in version.yml
- Raise a PR and merge it
git pull origin main ## make local index up to date
new_tag=v0.4.0 ## for example
git tag $new_tag
git push origin $new_tag
if a tag is pushed, the following steps will automatically run:
- build the images with the new tag ,and then push to ghcr.io
- build the file artifacts ,such as os-pkgs and images-amd64.tar.gz
- push a new version helm charts to kubean-helm-chart
- generate a release note which includes
What's Changed
which shows the previous pull requests andNew Contributors
- push the kubean client library to kubean-api
- create a new k8s cluster by minikube or kind
- use helm charts to install the new version kubean
Go to the site to check more documents.