49 lines
1.7 KiB
YAML
49 lines
1.7 KiB
YAML
apiVersion: argoproj.io/v1alpha1
|
|
kind: Application
|
|
metadata:
|
|
name: argocd-config
|
|
namespace: argocd
|
|
spec:
|
|
project: default
|
|
source:
|
|
repoURL: https://git.cloud-infra.prod.openmailserver.de/stabify/gitops.git
|
|
targetRevision: HEAD
|
|
path: apps/argocd-config
|
|
destination:
|
|
server: https://kubernetes.default.svc
|
|
namespace: argocd
|
|
syncPolicy:
|
|
automated:
|
|
prune: false # Safety: Don't delete ArgoCD resources not managed by this app
|
|
selfHeal: true
|
|
syncOptions:
|
|
- CreateNamespace=true
|
|
# WICHTIG: ServerSideApply für Patches
|
|
- ServerSideApply=true
|
|
# Ignore ArgoCD-generierte Secrets (werden dynamisch erstellt)
|
|
- RespectIgnoreDifferences=true
|
|
ignoreDifferences:
|
|
# Ignoriere argocd-secret (wird von External Secrets dynamisch aktualisiert)
|
|
# ExternalSecret argocd-dex-secret-source schreibt in argocd-secret
|
|
- group: ""
|
|
kind: Secret
|
|
name: argocd-secret
|
|
namespace: argocd
|
|
# Ignoriere data-Feld (wird von External Secrets dynamisch aktualisiert)
|
|
jsonPointers:
|
|
- /data
|
|
# Ignoriere ExternalSecret Status und Default-Felder (wird von External Secrets Controller verwaltet)
|
|
- group: external-secrets.io
|
|
kind: ExternalSecret
|
|
name: argocd-dex-secret-source
|
|
namespace: argocd
|
|
# Ignoriere Status-Feld und Default-Felder in data (wird von External Secrets Controller verwaltet)
|
|
jsonPointers:
|
|
- /status
|
|
- /metadata/annotations
|
|
- /metadata/labels
|
|
# Ignoriere Default-Felder in data Array (werden vom Controller hinzugefügt)
|
|
jqPathExpressions:
|
|
- '.spec.data[].remoteRef.conversionStrategy'
|
|
- '.spec.data[].remoteRef.decodingStrategy'
|
|
- '.spec.data[].remoteRef.metadataPolicy' |