Open TimJones opened 1 year ago
@pasha-codefresh @blakepettersson this feature would be amazing, as it would allow for many more "escape hatches" without needing to update the Application itself.
This is also related to the request of having the ability for a specific resource to be "ignored" (not updated during a sync) if it has a specific annotation (e.g. argocd.argoproj.io/sync-options: Ignore=true
)
Here is the issue for that request:
I also have a need for this. Being able to do this on a specific resource via annotation is critical.
This would be a awesome addition, eliminating the need to manage a large list in the Application CRD.
Summary
It would be great if the Application spec
ignoreDifferences
could be supported at the individual resource level, perhaps as an annotation.Motivation
I am converting my set up use an ApplicationSets whenever possible to reduce boilerplate. A few Applications require specific
ignoreDifferences
config. In my case, one app has a ConfigMap resource, and another app updates it with dynamic configuration settings.Proposal
Ideally similarly to
syncOptions
can be applied to individual resources via theargocd.argoproj.io/sync-options
annotation. So there could be anargocd.argoproj.io/ignore-differences
annotation.Since the annotation is applied to a specific resource, there is no need to define the kubernetes API group in the annotation. It could be further simplified by (initially) only supporting a single
jsonPointers
type.i.e.
or it could support being parsed out as a yaml/json object similar to the existing
ignoreDifferences
spec.