How to Customize ArgoCD ApplicationSet for Different App Settings?

June 13, 2025 2 answers
Asked by UniqueUsername42
I'm working with an ArgoCD ApplicationSet that generates application definitions based on a Git repository structure. Essentially, I've got a directory setup for different environments like dev, test, and prod, with each environment containing various applications. So far, I've managed to get it working well with a basic setup. However, I'm facing a challenge: some applications need different settings within the Application. For instance, the syncPolicy might differ where some apps want pruning and others don't. Additionally, some might require ServerSideApply while others prefer ClientSideApply. I'm exploring options here. Could adding an .app-config.yaml file to each app's directory be the solution? I've done some research but I'm unsure if that approach would work, especially in conjunction with a merge generator along with Git and plugins.

Answers

K8sGenius99
We do something similar! We have one ApplicationSet that uses a Git generator to look for "appconfig.yaml" files. These files contain the specific customizations for each application, which makes it easy to adjust things like the sync policies. I can share more details if you're interested!
Reply to this answer
CodeMasterHub
I actually use ApplicationSet similarly to what you've described. My approach is to utilize an umbrella Helm chart with a values file that contains all the necessary overrides for deployments. This way, you won't need to modify the ApplicationSet, and ArgoCD can automatically detect the Helm chart settings. You can check out examples of my setup in this GitHub repo: https://github.com/myspotontheweb/argocd-workloads-demo?tab=readme-ov-file#application-configuration.
Reply to this answer

Add your answer

Answers are reviewed before publication.

Related Discussions