-
Notifications
You must be signed in to change notification settings - Fork 1
Individual ingress tls secretName per module & remove if empty #26
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
…idual secret names when it is set.
|
/review |
PR Reviewer Guide 🔍Here are some key observations to aid the review process:
|
|
Hi @chris-dot-exe, I understand your intention to use different secrets for the ingress resources. However, I don’t fully agree with your statement that “only one TLS secret is created when TLS is enabled.” Currently, no TLS secret is automatically created by this Helm chart; it has to be created manually by the user.
Merging your changes right now would require each user to create individual secrets: Do you agree with this, or am I misunderstanding something? I tested it to confirm that my understanding is correct: helm values: example keycloak ingress: secrets: => secretname |
|
@Tim-herbie I can't tell from your examples if you use an cert-manager? In my experience, cert-manager is responsible for creating and managing the TLS secrets, and it typically stores one certificate per secret. Wildcard domain would be a option with only one secret I guess but then the domains can't be defined individually in each modules ingress template. But maybe I'm also overlooking something here and it would break something. In my setup, I’m using Traefik as the ingress controller together with cert-manager to issue certificates per domain. I just now that other Charts use a similar approach but if this isn't a universal solution here then feel free to decline the PR ^^ |
Noticed that only one TLS secret is created when TLS is enabled in the global settings and a secretName is set because the name is set for all modules without any suffix/prefix.
In this change it checks if secretName is not empty and creates individual secretNames for each module (suffixes the module name) if it is empty it won't add the secretName at all since nginx Ingress controller seams to support this and then loads default certs.