Skip to content
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

fix(argo-cd): Fix conditional generation of ssh and tls configmaps #3157

Closed

Conversation

DaThumpingRabbit
Copy link

@DaThumpingRabbit DaThumpingRabbit commented Feb 4, 2025

Since respectively versions 7.7.11 and 7.7.16, the configmaps ssh-known-hosts and tls-certs can be disabled completely from the chart generation
However, the volumes and volumeMounts of the different elements are not conditioned to be removed if the configmaps are not generated and it causes boot issues due to missing volume configs

Checklist:

  • I have bumped the chart version according to versioning
  • I have updated the documentation according to documentation
  • I have updated the chart changelog with all the changes that come with this pull request according to changelog.
  • Any new values are backwards compatible and/or have sensible default.
  • I have signed off all my commits as required by DCO.
  • My build is green (troubleshooting builds).

Signed-off-by: sbene <sebastien.bene@ubisoft.com>
@mkilchhofer
Copy link
Member

Hi @DaThumpingRabbit

Since respectively versions 7.7.11 and 7.7.16, the configmaps ssh-known-hosts and tls-certs can be disabled completely from the chart generation

The idea is not to make them optional, the idea was to manage those ConfigMaps outside the Helm chart (some customers want that).
But Argo CD requires those infos, so in my opinion your proposal doesn't make sense. Maybe extending the parameter documentation is better?

@DaThumpingRabbit
Copy link
Author

Hey @mkilchhofer
Thanks for the swift answer

I am a bit surprised because none of those configs are actually used in my deployments (I even override the ssh.knownHosts to an empty string) so I was happy to see that they were made optional
I understand that some people want to manage them aside from the chart, but then shouldn't they define extraVolumes and extraVolumeMounts to reference them ? (although those values do not exist for the server and the repo-server)

This is just the idea I would have regarding this use-case, but let me know if that doesn't make sense for you and I'll close this PR

@mkilchhofer
Copy link
Member

I am a bit surprised because none of those configs are actually used in my deployments

Our main goal of argo-helm is that we offer only what is supported from upstream.
Some ConfigMaps and Secrets are directly read via Kubernetes API from argocd-server (without mounting it) while some requires mounting.

You can see that upstream also deploys "empty" ConfigMaps:

but then shouldn't they define extraVolumes and extraVolumeMounts to reference them

In my opinion -> no. No because we also need to support our chart users. When users use custom names for these extra mounts, it is pretty hard for us :)

Does that make sense?

@DaThumpingRabbit
Copy link
Author

Ah yes I see
It makes complete sense, thanks for clarifying that !

I will close this PR then and keep my values as they are now

@DaThumpingRabbit DaThumpingRabbit deleted the fix/ssh_tls_configs branch February 4, 2025 13:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants