values.yaml files to generate Kubernetes manifests (Deployments, Services, RBAC, HPAs, etc.), which makes deployments consistent and repeatable across environments.

Helm chart anatomy (quick reference)
| File / Directory | Purpose | Example |
|---|---|---|
Chart.yaml | Chart metadata (name, version, appVersion) | Chart.yaml |
values.yaml | Default configuration consumed by templates | values.yaml |
templates/ | Resource templates rendered with Helm functions | templates/deployment.yaml |
charts/ | Subcharts (dependency charts) | charts/ |
templates/deployment.yaml may look like:
{{ .Values.replicaCount }} are shown inside code blocks to avoid MDX parsing issues.
A matching values.yaml supplies defaults consumed by the template. A minimal example for this chart:
values.yaml enables you to:
- Reuse the same chart across environments (dev/staging/prod) by swapping values.
- Maintain a single source of truth for manifests while customizing behavior with values or overrides.
- Keep configuration in Git to satisfy GitOps principles and enable auditability.

Deploying a Helm chart with Argo CD
Argo CD can deploy a Helm chart directly from a Git repo. In the Argo CD UI you typically:- Create a new Application.
- Point
repoURLto your Git repository andpathto the chart folder (e.g.,manifests/helm/highway-chart). - Choose a target cluster/namespace and optional automated sync policy.
- Provide
values.yamlor overrides if you want to change defaults at deploy time.

values.yaml or supply a custom override file to change runtime configuration.

values.yaml. With the example above (replicaCount: 1) you will initially see a single pod.

Updating configuration: Git vs UI overrides
You can change chart configuration in two common ways:- Edit
values.yamlin the Git repository and let Argo CD pick up the change via GitOps sync, or - Provide overrides in the Argo CD Application (UI or Application manifest), which are useful for temporary or environment-specific changes.

replicaCount to 7, set image.tag to green, or update other values. After saving, Argo CD will detect a drift (OutOfSync) between the live cluster and the desired state.

replicas: 1 vs replicas: 7, changed image tags, or modified env vars). When you run a sync, Argo CD applies the updated manifests to the cluster.


replicaCount: 7 results in 7 running pods). If something doesn’t render properly in the Argo CD UI (for example, quoting/format issues), check your YAML formatting in the override editor and prefer properly formatted YAML.

Tip: Keep configuration as code in Git (edit
values.yaml in your repo) so changes remain auditable and follow GitOps best practices. Use Argo CD parameters or UI overrides for temporary or environment-specific adjustments.Summary
Helm templates +values.yaml let you templatize Kubernetes manifests for reuse and consistency. Pairing Helm with Argo CD creates a GitOps workflow: store charts and values in Git, let Argo CD render and deploy them, and update configuration through Git or controlled UI overrides to reconcile clusters to the desired state.