How to Customize ArgoCD Application Settings in an ApplicationSet?

0
6
Asked By SkyHighDrifter42 On

I'm currently using an ApplicationSet to generate Application definitions through a Git generator based on a certain directory structure, where each environment (dev, test, prod) has its applications organized logically in subdirectories. The ApplicationSet is set up to automatically create App configurations from this structure, but now I'm facing a challenge. I need to customize certain settings for individual applications within the same ApplicationSet, particularly regarding sync policies. For example, some applications might need to have 'prune' enabled, while others must not. Additionally, there are preferences for using ServerSideApply for some apps and ClientSideApply for others. I considered having a `.app-config.yaml` file in each application's directory for these custom settings, but I'm unsure how to parameterize the Application using this approach, especially in combination with the merge generator. Any insights or suggestions on how to effectively manage these differing settings within an ApplicationSet, or is there a better way to handle this?

2 Answers

Answered By CuriousCoder08 On

I’ve used ApplicationSet similarly, and what works for me is utilizing an umbrella Helm chart. By including override settings directly in the values file, I can customize deployments without the need to modify the ApplicationSet itself. ArgoCD detects the Helm chart changes automatically. You might want to check out how I structured my configs in this repo: https://github.com/myspotontheweb/argocd-workloads-demo?tab=readme-ov-file#application-configuration.

Answered By DevTweaker99 On

We handle it by setting up one AppSet that looks for 'appconfig.yaml' files within each app's directory. These files contain customizable parameters specific to each application. While I'm not using the merge generator, I don’t see any issue with approach. If you want, I can share more details about how I implemented this.

Related Questions

LEAVE A REPLY

Please enter your comment!
Please enter your name here

This site uses Akismet to reduce spam. Learn how your comment data is processed.