Currently, an Application supports a single ApplicationSource. In some scenario it would be useful to support more than one source.
Here is a typical example: we have an Application that uses the elasticsearch helm chart as source. We need to create a separate Application to configure the elasticsearch-exporter to expose Prometheus metrics.
From a logical point of view, these could be seen as a single application. In this way, the application can be composed using different sources/charts. What do you think? 馃檱
Great idea! I've faced the same scenario today and had to copy manifests of one app into another app. The composable app would be much cleaner.
We would have to provide some way to solve possible naming conflicts. E.g. if two helm charts create deployments with the same name it should be possible to use different release names for each chart
Specifying multiple sources can now be accommodated by the configuration management plugins. I think adding native support multiple sources will complicate the implementation too greatly.
I think you can use app-of-apps to solve this? https://argoproj.github.io/argo-cd/operator-manual/cluster-bootstrapping/
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.
App-of-apps can take care of this, but I think it would be cleaner if the Application object itself could support multiple helm charts. I realize this would complicate the ArgoCD implementation, but I think it would improve the user experience greatly.
In our company we want to use different levels in our ops repositories, like global/cluster/application. We are already using a custom management plugin to get all these things together, but we are running into the problem, that argo syncs only a single source. So if the application config gets changed, argo recognize the change and start the deployment, but if the cluster configuration gets changed, nothing happens. The only way to sync such changes is manually refresh/hard or sync apps/force.
Most helpful comment
App-of-apps can take care of this, but I think it would be cleaner if the Application object itself could support multiple helm charts. I realize this would complicate the ArgoCD implementation, but I think it would improve the user experience greatly.