After significant improvements have been done it is worth to release a new version. In order to do so just follow the steps described below:
- Test everything twice on Docker image and
npm run start:prod
. - Send a pull request that increases version numbers in all files. Follow versioning guidelines. Files to keep in sync are listed below:
package.json
andpackage-lock.json
aio/gulp/conf.js
- YAML files from
aio/deploy
- Helm Chart from
aio/deploy/helm-chart/kubernetes-dashboard
:image.tag
ofREADME.md
andvalues.yaml
,version
andappVersion
ofChart.yaml
- Get the pull request reviewed and merged.
- Create a git release tag for the merged pull request. Release description should include a changelog.
- Update add-ons on the Kubernetes repository. If the update is minor, all that needs to be done is to change image version number in the main controller config file (
dashboard-controller.yaml
), and other configs, as described in the header of the config. If the release is major, this needs coordination with Kubernetes core team and possibly alignment with the schedule of the core. - Update addon config in the minikube repository.
- Update addon config in the kops repository.
- Release Helm Chart by running the
aio/scripts/helm-release-chart.sh
script from the newly created git tag, then push the gitgh-pages
branch of yourhttps://github.com/kubernetes/dashboard/
git remote.
Official release procedures are done by CI after successful TAG build automatically, that are pushed to kubernetesui/dashboard*
repositories.
Kubernetes Dashboard versioning follows semver in spirit. This means that it uses vMAJOR.MINOR.PATCH
version numbers, but uses UX and consumer-centric approach for incrementing version numbers.
- Increment MAJOR when there are breaking changes that affect user's workflows or the UX gets major redesign.
- Increment MINOR when new functionality is added or there are minor UX changes.
- Increment PATCH in case of bug fixes and minor new features.
Versions 0.X.Y
are reserved for initial development and may not strictly follow the guidelines.
There is no need to do anything at all after everything was set up and now the whole process is automated.
On every successful master build CI provides development releases, that are pushed to kubernetesdashboarddev/dashboard*
repositories. Each build produces one image for each architecture. The images are tagged with head
.
Copyright 2019 The Kubernetes Dashboard Authors