See Helm's documentation to get started with Helm.
See the GOV.UK Kubernetes cluster docs for an introduction to the cluster or ask #govuk-platform-engineering in Slack.
Most of the charts in this repository are designed to be deployed via Argo
CD rather than by helm install
.
For these charts, we don't use Chart.Version
or Helm's packaging system.
A few charts are still installed via helm install
(via
Terraform).
Those charts are automatically packaged and
pushed
to our Helm repository when a change to Chart.Version
is merged.
-
Install Helm and yq
brew install helm yq
-
Clone the repository
git clone [email protected]:alphagov/govuk-helm-charts.git
-
Configure git hooks
cd govuk-helm-charts && git config core.hooksPath git-hooks
cd charts/app-config
ENVIRONMENT=integration
APP=content-publisher
helm install $USER-${APP?} ../generic-govuk-app --values <(
helm template . --values values-${ENVIRONMENT}.yaml |
yq e '.|select(.metadata.name=="'$APP'").spec.source.helm.values'
) --set sentry.enabled=false --set rails.createKeyBaseSecret=false
You can inspect the final template output by running helm template
instead of
helm install
.
Some of the charts in this git repository are published via GitHub Actions to a chart repository hosted on GitHub Pages.
To add the chart repo to Helm:
helm repo add govuk-helm-charts https://alphagov.github.io/govuk-helm-charts/
You can then run helm search repo <alias>
to see the charts.
helm repo update
retrieves the latest versions of the packages.
kubeconform
runs as a pre-merge check. The JSON schemas that it validates
against are in the schemas/
directory.
GOV.UK Platform Engineering team looks after this repo. If you're inside GDS, you can find us in #govuk-platform-engineering or view our kanban board.