Helm Chart Repository Migration
June 29, 2026 ยท View on GitHub
Kuberhealthy uses a dedicated Helm chart repository for independent chart
releases. This repository keeps the in-tree chart at deploy/helm/kuberhealthy
as a source install path and compatibility reference.
Dedicated Repository
- Repository:
kuberhealthy/kuberhealthy-helm - Default branch:
main - Chart path:
charts/kuberhealthy - Release:
v1.0.2 - Chart version:
1.0.2 - App version:
v3.0.5
Published Release
The independent chart release is published at:
https://github.com/kuberhealthy/kuberhealthy-helm/releases/tag/v1.0.2
Release v1.0.2 uses chart version 1.0.2 and app version v3.0.5.
The Helm repository index is published from the chart repository default branch:
helm repo add kuberhealthy https://raw.githubusercontent.com/kuberhealthy/kuberhealthy-helm/main
helm repo update
Repository Contents
The dedicated chart repository contains:
- the chart at
charts/kuberhealthy Chart.yamlwithversion: 1.0.2andappVersion: v3.0.5- chart metadata pointing at
https://github.com/kuberhealthy/kuberhealthy-helm - Helm lint/render workflow templates under
workflow-templates/ - a release workflow template for independent
vX.Y.Zchart tags - README and release documentation for source install, upgrade, release, and migration workflows
Source Tree Chart
This repository includes the chart at:
deploy/helm/kuberhealthy
Use this path for local source-tree installs, examples, and development against
this repository. Use kuberhealthy/kuberhealthy-helm for independent Helm chart
releases and chart-specific release notes.
Migration For Existing Installs
Use the dedicated chart repository for existing installs that were created from
deploy/helm/kuberhealthy. The chart name stays kuberhealthy, so the release
can be upgraded in place.
First, add the chart repository and save the values from the installed release:
helm repo add kuberhealthy https://raw.githubusercontent.com/kuberhealthy/kuberhealthy-helm/main
helm repo update
helm get values kuberhealthy \
-n kuberhealthy \
-o yaml > kuberhealthy-values.yaml
Then capture the image that is running before the chart-source migration. This
keeps the rendered Deployment image stable even when the old install relied on
the in-tree chart default appVersion: main and the dedicated chart uses
appVersion: v3.0.5.
KUBERHEALTHY_IMAGE="$(kubectl -n kuberhealthy get deployment kuberhealthy \
-o jsonpath='{.spec.template.spec.containers[?(@.name=="kuberhealthy")].image}')"
Run a dry-run render with the dedicated chart and inspect the output before applying it:
helm upgrade kuberhealthy kuberhealthy/kuberhealthy \
-n kuberhealthy \
--version 1.0.2 \
-f kuberhealthy-values.yaml \
--set-string imageURL="${KUBERHEALTHY_IMAGE}" \
--dry-run
Apply the in-place migration with the same inputs:
helm upgrade kuberhealthy kuberhealthy/kuberhealthy \
-n kuberhealthy \
--version 1.0.2 \
-f kuberhealthy-values.yaml \
--set-string imageURL="${KUBERHEALTHY_IMAGE}"
Verify that the release and Deployment are healthy:
helm status kuberhealthy -n kuberhealthy
helm get manifest kuberhealthy -n kuberhealthy | kubectl apply --dry-run=server -f -
kubectl -n kuberhealthy rollout status deployment/kuberhealthy
kubectl -n kuberhealthy get deployment kuberhealthy \
-o jsonpath='{.spec.template.spec.containers[?(@.name=="kuberhealthy")].image}{"\n"}'
If the release uses a custom namespace, release name, or nameOverride, replace
kuberhealthy in the commands with the installed release, namespace, or
Deployment name. If the release sets imageURL or image.tag
intentionally, keep that value in kuberhealthy-values.yaml and omit the
--set-string imageURL=... override when it would conflict with the desired
image policy.
Compatibility Path
The in-tree chart at deploy/helm/kuberhealthy remains available as a source
install path, examples target, and compatibility reference for this repository.
It is not a wrapper around the dedicated chart repository. Chart release tags,
packaged chart artifacts, and chart-specific release notes are owned by
kuberhealthy/kuberhealthy-helm.