46 lines
1.3 KiB
YAML
46 lines
1.3 KiB
YAML
# ------------------------------------------------------------------------------
|
|
# App of Apps — Root
|
|
#
|
|
# This is applied ONCE after ArgoCD is bootstrapped. It is the second and
|
|
# final manual kubectl apply:
|
|
#
|
|
# kubectl apply -n argocd -f cluster/argocd/apps-of-apps.yaml
|
|
#
|
|
# From this point forward, all changes are made via git. ArgoCD self-manages.
|
|
#
|
|
# This Application watches cluster/platform/ and cluster/applications/ and
|
|
# creates child Applications for everything it finds there.
|
|
# ------------------------------------------------------------------------------
|
|
apiVersion: argoproj.io/v1alpha1
|
|
kind: Application
|
|
metadata:
|
|
name: apps-of-apps
|
|
namespace: argocd
|
|
annotations:
|
|
# Wave 0 — this is the root, everything else comes after
|
|
argocd.argoproj.io/sync-wave: "0"
|
|
spec:
|
|
project: default
|
|
source:
|
|
repoURL: https://gitea.mk-labs.cloud/rblundon/homelab.git
|
|
targetRevision: main
|
|
path: cluster
|
|
directory:
|
|
recurse: true
|
|
include: "*/application.yaml"
|
|
destination:
|
|
server: https://kubernetes.default.svc
|
|
namespace: argocd
|
|
syncPolicy:
|
|
automated:
|
|
prune: true
|
|
selfHeal: true
|
|
syncOptions:
|
|
- CreateNamespace=true
|
|
- ServerSideApply=true
|
|
ignoreDifferences:
|
|
- group: argoproj.io
|
|
kind: Application
|
|
jsonPointers:
|
|
- /spec/syncPolicy/automated
|