apiVersion: argoproj.io/v1alpha1 kind: Application metadata: name: couchdb namespace: argocd labels: app.kubernetes.io/name: couchdb app.kubernetes.io/part-of: mk-labs annotations: argocd.argoproj.io/sync-wave: "20" # Wave 20 — applications tier spec: project: default sources: # Helm chart from official Apache CouchDB repository - repoURL: https://apache.github.io/couchdb-helm chart: couchdb targetRevision: 4.6.3 helm: valueFiles: - $values/cluster/applications/couchdb/values.yaml # Values and manifests from homelab repo - repoURL: https://gitea.mk-labs.cloud/rblundon/homelab.git targetRevision: HEAD ref: values # Additional manifests (namespace, externalsecret) - repoURL: https://gitea.mk-labs.cloud/rblundon/homelab.git targetRevision: HEAD path: cluster/applications/couchdb directory: recurse: false include: '{namespace.yaml,externalsecret.yaml}' destination: server: https://kubernetes.default.svc namespace: couchdb syncPolicy: automated: prune: true selfHeal: true syncOptions: - CreateNamespace=true - ApplyOutOfSyncOnly=true syncWaves: - order: 0 # Namespace first - order: 1 # ExternalSecret second - order: 2 # Helm chart last