ArgoCD plugin for variable substitution in ApplicationSet
argocd-appset-substitute-plugin has been developed for and tested with Kubernetes 1.28.
When Custom resource is created, controller takes secret keys and values and creates new secret as outputSecretName
- a
Deployment
to run interpolator's controller,
$ kubectl top pods
NAME CPU(cores) MEMORY(bytes)
argocd-substitute-plugin-59db98964b-ljpvt 1m 6Mi
- Install argocd-appset-substitute-plugin's Helm chart from charts repository:
helm upgrade --install \
--namespace argocd \
argocd-substitute-plugin argocd-substitute-plugin \
--repo https://grzegorzgniadek.github.io/argocd-appset-substitute-plugin
You can use Helm to generate plain YAML files and then deploy these YAML files with kubectl apply
or whatever you want:
helm template --namespace argocd \
argocd-substitute-plugin argocd-substitute-plugin \
--repo https://grzegorzgniadek.github.io/argocd-appset-substitute-plugin \
> /tmp/plugin.yaml
kubectl apply -f /tmp/plugin.yaml --namespace argocd
You can see the full list of parameters (along with their meaning and default values) in the chart's values.yaml file.
helm upgrade --install \
--namespace argocd \
argocd-substitute-plugin argocd-substitute-plugin \
--repo https://grzegorzgniadek.github.io/argocd-appset-substitute-plugin \
--set port=8000
kubectl apply -f https://raw.githubusercontent.com/grzegorzgniadek/argocd-appset-substitute-plugin/refs/heads/master/examples/applicationset.yaml
kubectl apply -f https://raw.githubusercontent.com/grzegorzgniadek/argocd-appset-substitute-plugin/refs/heads/master/examples/configmap.yaml
kubectl apply -f https://raw.githubusercontent.com/grzegorzgniadek/argocd-appset-substitute-plugin/refs/heads/master/examples/secret.yaml
kubectl delete -f https://raw.githubusercontent.com/grzegorzgniadek/argocd-appset-substitute-plugin/refs/heads/master/examples/applicationset.yaml
kubectl delete -f https://raw.githubusercontent.com/grzegorzgniadek/argocd-appset-substitute-plugin/refs/heads/master/examples/configmap.yaml
kubectl delete -f https://raw.githubusercontent.com/grzegorzgniadek/argocd-appset-substitute-plugin/refs/heads/master/examples/secret.yaml