apiVersion: argoproj.io/v1alpha1 kind: ApplicationSet metadata: name: applications spec: goTemplate: true goTemplateOptions: ["missingkey=error"] generators: - git: repoURL: git@github.com:cterence/homelab-gitops.git revision: HEAD files: - path: "k8s-apps/*/appset.yaml" - path: "k8s-apps/archive/**" exclude: true template: metadata: name: "{{ .path.basename }}" annotations: argocd.argoproj.io/manifest-generate-paths: "/{{ .path.path }};/charts/image-wait" notifications.argoproj.io/subscribe.on-sync-succeeded.telegram: "-1001726711150" argocd.argoproj.io/compare-options: '{{ printf "%s=%s" "ServerSideDiff" (dig "serverSideDiff" "false" . | toString) }}' spec: project: default sources: - repoURL: git@github.com:cterence/homelab-gitops.git targetRevision: HEAD path: "{{ .path.path }}" - repoURL: git@github.com:cterence/homelab-gitops.git targetRevision: HEAD path: charts/image-wait helm: valueFiles: - "$values/{{ .path.path }}/values.yaml" - repoURL: git@github.com:cterence/homelab-gitops.git targetRevision: HEAD ref: values destination: name: in-cluster namespace: '{{ default .path.basename (dig "namespace" "" .) }}' ignoreDifferences: - group: apiextensions.k8s.io kind: CustomResourceDefinition jqPathExpressions: - .spec.conversion.webhook.clientConfig.caBundle - group: apps kind: "StatefulSet" jqPathExpressions: - .spec.volumeClaimTemplates[].metadata.creationTimestamp - group: apps kind: "*" jqPathExpressions: - '{{ ternary ".spec.replicas" ".nonexistent" (eq (dig "scaleToZero" "false" . | toString) "true") }}' syncPolicy: automated: prune: true selfHeal: true syncOptions: - CreateNamespace=true - RespectIgnoreDifferences=true - '{{ printf "%s=%s" "ServerSideApply" (dig "serverSideApply" "true" . | toString) }}'