Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support managedFieldManagers in AppSet ignoreApplicationDifferences #20385

Open
gnunn1 opened this issue Oct 15, 2024 · 1 comment
Open

Support managedFieldManagers in AppSet ignoreApplicationDifferences #20385

gnunn1 opened this issue Oct 15, 2024 · 1 comment
Labels
component:application-sets Bulk application management related enhancement New feature or request

Comments

@gnunn1
Copy link

gnunn1 commented Oct 15, 2024

Summary

The ApplicationSet has the ability to ignore targetted differences to the Application via ignoreApplicationDifferences. However unlike the Application or Global ignoreDifferences it does not support using this for managedFieldManagers.

Motivation

In the app-of-app pattern I use ignoreDifferences with the managedFieldManager set to argocd-server, this enables me to temporarily override selfHeal from the UI when I need to troubleshoot applications as per this example:

apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
  name: cluster-config-bootstrap
  namespace: openshift-gitops
  labels:
    gitops.ownedBy: cluster-config
spec:
  ...
  syncPolicy:
    automated:
      prune: false
      selfHeal: false
  ignoreDifferences:
    - group: argoproj.io
      kind: Application
      managedFieldsManagers:
        - argocd-server
      jsonPointers:
        - /spec/syncPolicy/automated

Proposal

I'm not deep enough into the code base to outline an implementation proposal but ideally ignoreApplicationDifferences could simply reuse the implementation already available in Argo CD. The managedFieldManagers would simply be an additional field parallel to the existing fields like jsonPointers, jqPathExpressions and name.

@gnunn1 gnunn1 added the enhancement New feature or request label Oct 15, 2024
@crenshaw-dev
Copy link
Member

tbh I skipped managedFieldsManagers in ignoreApplicationDifferences just for convenience. The other two options covered the use cases I cared about. I'm not aware of any particularly difficult challenges related to adding managedFieldsManagers support.

@crenshaw-dev crenshaw-dev added the component:application-sets Bulk application management related label Oct 15, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component:application-sets Bulk application management related enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants