Validate TLS and Certificate Configuration in Helm
Check TLS settings in Helm ingress configuration including secretName, hosts matching, and cert-manager annotations for automated certificate management.
Detailed Explanation
TLS Configuration for Helm Charts
TLS configuration in Helm ingress values is essential for HTTPS. The validator checks that your TLS settings are structured correctly and consistent with your host definitions.
Standard TLS Pattern
ingress:
enabled: true
className: nginx
annotations:
cert-manager.io/cluster-issuer: letsencrypt-prod
hosts:
- host: app.example.com
paths:
- path: /
pathType: Prefix
tls:
- secretName: app-example-com-tls
hosts:
- app.example.com
What Gets Validated
- TLS structure:
tlsmust be an array of objects, each withsecretNameandhosts - Type checks:
secretNameshould be a string,hostsshould be an array of strings - Ingress enabled: TLS only matters when
ingress.enabledis true
Cert-Manager Integration
When using cert-manager for automatic certificate provisioning, the annotation must match:
# For cluster-wide issuer
annotations:
cert-manager.io/cluster-issuer: letsencrypt-prod
# For namespace-scoped issuer
annotations:
cert-manager.io/issuer: letsencrypt-staging
Common Patterns
Single domain with wildcard:
tls:
- secretName: wildcard-example-com-tls
hosts:
- "*.example.com"
Multiple domains, separate certificates:
tls:
- secretName: app-tls
hosts:
- app.example.com
- secretName: api-tls
hosts:
- api.example.com
Multiple domains, single certificate (SAN):
tls:
- secretName: multi-domain-tls
hosts:
- app.example.com
- api.example.com
- admin.example.com
Common Mistakes
- Listing a host in
tls.hoststhat is not iningress.hosts(or vice versa) - Using a secretName that does not exist in the namespace (cert-manager will create it, but a manual secret must pre-exist)
- Forgetting to add the cert-manager annotation when relying on automatic certificate provisioning
Use Case
Configuring HTTPS for a multi-tenant SaaS application where each customer gets a subdomain with its own TLS certificate managed by cert-manager.
Try It — Helm Values Validator
Related Topics
Validate Helm Ingress Configuration
Ingress & Networking
Validate a Basic Web App values.yaml
Basic Configuration
Validate Secrets and ConfigMap Patterns in Helm
Advanced Patterns
Production Readiness Checklist for Helm Values
Advanced Patterns
Compare Default vs Override Values for Multi-Environment
Advanced Patterns