Deployment specific artifacts (e.g. config files, kestores) are linked into the Helm install/upgrade task using the --set-file parameter that associates a values parameter with the external text file, e.g.
--set-file global.cfgFile=myCfg.json
Such option does not exist in ArgoCD that only provides for one or more values.yaml files. With this, the config file must be embedded in (one of) the values.yaml files, e.g:
global:
cfgFile: |
<file content>
This is problematic because of the overhead for creating the envelope. Config files and keystores are delivered as content-only and the values.yaml envelope needs a time-consuming indentation of the file content.
Motivation
Argo CD shall support adding deployment artifacts to the already deployed system without the need to do manual work. Once the new deployment artifact shows up on the repo, Argo CD shall automatically trigger the upgrade task with the added files considered.
Proposal
The proposal is adding a new object in source.helm of the application CR, e.g. source.helm.files that sources the set-file stringArray during the Helm task as it is the case for valueFiles supported today. Note, even the valueFiles is an array in the CR, it supports items containing multiple strings separated by comma. This shall be supported also for the new source.helm.files parameter. Example:
Summary
Deployment specific artifacts (e.g. config files, kestores) are linked into the Helm install/upgrade task using the --set-file parameter that associates a values parameter with the external text file, e.g.
--set-file global.cfgFile=myCfg.json
Such option does not exist in ArgoCD that only provides for one or more values.yaml files. With this, the config file must be embedded in (one of) the values.yaml files, e.g:
This is problematic because of the overhead for creating the envelope. Config files and keystores are delivered as content-only and the values.yaml envelope needs a time-consuming indentation of the file content.
Motivation
Argo CD shall support adding deployment artifacts to the already deployed system without the need to do manual work. Once the new deployment artifact shows up on the repo, Argo CD shall automatically trigger the upgrade task with the added files considered.
Proposal
The proposal is adding a new object in source.helm of the application CR, e.g. source.helm.files that sources the set-file stringArray during the Helm task as it is the case for valueFiles supported today. Note, even the valueFiles is an array in the CR, it supports items containing multiple strings separated by comma. This shall be supported also for the new source.helm.files parameter. Example:
GIT - rollout.json
Application set:
Any other implementation proposal is welcome to remove the manual work associated with this use case. Thank you.