Skip to content

Latest commit

 

History

History
77 lines (48 loc) · 3.27 KB

RELEASE.md

File metadata and controls

77 lines (48 loc) · 3.27 KB

Kafkaesque Helm Chart Releases

Chart Releaser

The chart-releaser is being used to enable the pulsar-helm-chart repo to self-host Helm Chart releases via the use of Github pages.

CircleCI

CircleCI is being used to release a new version of the Kafkaesque Pulsar Helm Charts. The release script creates a release package of the new Helm Chart version and updates the index.yaml which in this case is hosted in a Github page. The CircleCI is triggered, when a new commit is pushed in the release branch.

How to Release a new Version

The release process is automated using CircleCI. It uses the chart-releaser tool.

For a new Helm Chart release the version of the Helm Chart needs to be updated in the Chart.yaml. Do this for each chart that has changed and commit to release. This is important. If you don't change the version and the chart has changed, the release process will fail.

To trigger a release:

git fetch
git checkout release
git rebase origin/master

Now update the versions in the Chart.yaml for each chart that has changed. Then push the change to origin:

git add .
git commit -m "Updating versions"
git push origin release

The chart-releaser tool will handle the packaging of the new version, will push it to the Github repo as a new release. It will update the index.yaml file for the Helm repo and commit it to master since this is where the GitHub pages are hosted.

If you see an error like this from the release script:

Error: error creating GitHub release: POST https://api.github.com/repos/kafkaesque-io/pulsar-helm-chart/releases: 422 Validation Failed [{Resource:Release Field:tag_name Code:already_exists Message:}]

It is likely becuase one of the Helm charts has changed but the version number was not increased. All the changed charts will be listed in the logs of the release script. Bump the missing versions and commit to the release branch.

You should verify that the new chart version are present in the index.yaml:

https://helm.kafkaesque.io/index.yaml

Also confirm that master has been updated with the new versions in the Chart.yaml files.

How to Install a New Release

The index.yaml is hosted in a Github page and can be accessed via https://helm.kafkaesque.io/. In order to make use of a Kafkaesque Pulsar Helm Chart specific version the Kafkaesque Helm repo should be added first by running:

helm repo add kafkaesque https://helm.kafkaesque.com

And then a version of the preferred chart can be installed by running:

helm install --namespace pulsar kafkaesque/pulsar --version <version_number>

Or for Helm3:

helm3 install <name> --namespace pulsar --version <version_number> kafkaesque/pulsar

For example:

helm install --namespace pulsar --repo https://helm.kafkaesque.io pulsar --version v1.0.3

If no Helm Chart version is specified the latest version will be installed.