@@ -47,10 +47,11 @@ type ArgoApplicationSpecDestination struct {
47
47
}
48
48
49
49
type ArgoApplicationSpec struct {
50
- Source ArgoApplicationSpecSource `yaml:"source"`
51
- Destination ArgoApplicationSpecDestination `yaml:"destination"`
52
- Project string `yaml:"project"`
53
- SyncPolicy ArgoApplicationSpecSyncPolicy `yaml:"syncPolicy,omitempty"`
50
+ Source ArgoApplicationSpecSource `yaml:"source"`
51
+ Destination ArgoApplicationSpecDestination `yaml:"destination"`
52
+ Project string `yaml:"project"`
53
+ SyncPolicy ArgoApplicationSpecSyncPolicy `yaml:"syncPolicy,omitempty"`
54
+ IgnoreDifferences []ArgoResourceIgnoreDifferences `yaml:"ignoreDifferences,omitempty"`
54
55
}
55
56
56
57
// ArgoApplicationMetadata contains the k8s metadata for the gitops agent CustomResource.
@@ -68,3 +69,16 @@ type ArgoApplication struct {
68
69
Metadata ArgoApplicationMetadata `yaml:"metadata"`
69
70
Spec ArgoApplicationSpec `yaml:"spec"`
70
71
}
72
+
73
+ // ResourceIgnoreDifferences contains resource filter and list of json paths which should be ignored during comparison with live state.
74
+ type ArgoResourceIgnoreDifferences struct {
75
+ Group string `yaml:"group,omitempty"`
76
+ Kind string `yaml:"kind"`
77
+ Name string `yaml:"name,omitempty"`
78
+ Namespace string `yaml:"namespace,omitempty"`
79
+ JSONPointers []string `yaml:"jsonPointers,omitempty"`
80
+ JQPathExpressions []string `yaml:"jqPathExpressions,omitempty"`
81
+ // ManagedFieldsManagers is a list of trusted managers. Fields mutated by those managers will take precedence over the
82
+ // desired state defined in the SCM and won't be displayed in diffs
83
+ ManagedFieldsManagers []string `yaml:"managedFieldsManagers,omitempty"`
84
+ }
0 commit comments