A Helm values.yaml builder that produces the configuration layer for a standard
application chart. Set the image, replicas, service, ingress, resources, env vars, and
configMap, and copy a values.yaml you can feed to a chart scaffolded with helm create —
matching its conventional key structure.
How it works
Helm separates a chart’s templates from its values. The templates contain the
Kubernetes manifests with placeholders; values.yaml supplies the concrete settings. This
builder emits the conventional keys those templates expect: an image map (repository,
quoted tag, pullPolicy), replicaCount, a service block, an ingress block with hosts
and an optional tls section, a resources block with requests and limits, an env list,
and a configMap.data map.
The image tag is always quoted because YAML would otherwise parse 1.20 as the number
1.2. Env vars are expanded into the name/value list shape Kubernetes containers expect,
and configMap entries become a flat data map. When ingress TLS is enabled, a tls entry
with a derived secretName is added so an ingress controller can terminate HTTPS.
Tips and notes
- Always set both resource requests and limits. Requests let the scheduler place pods sensibly; limits prevent one noisy pod from starving its neighbors. Omitting them is a common cause of node instability.
- For internet-facing HTTP apps, prefer
ClusterIPplus an ingress overLoadBalancer. One load balancer can then front many services through host and path routing. - Pair the ingress
tlsblock with cert-manager so the named TLS secret is created and renewed automatically rather than managed by hand. - Run
helm template ./chart -f values.yamlto render the manifests locally and confirm your values produce the expected Kubernetes objects before installing.