diff --git a/app-of-apps.yaml b/app-of-apps.yaml new file mode 100644 index 0000000..337a0d7 --- /dev/null +++ b/app-of-apps.yaml @@ -0,0 +1,150 @@ +--- +apiVersion: argoproj.io/v1alpha1 +kind: Application +metadata: + name: applications + namespace: argocd + finalizers: + - resources-finalizer.argocd.argoproj.io +spec: + project: default + source: + repoURL: https://github.com/K3S-HOME/applications.git + targetRevision: main + path: . + destination: + server: https://kubernetes.default.svc + namespace: argocd + syncPolicy: + automated: + prune: true + selfHeal: true + syncOptions: + - CreateNamespace=true + retry: + limit: 5 + backoff: + duration: 5s + factor: 2 + maxDuration: 3m + revisionHistoryLimit: 10 +--- +apiVersion: argoproj.io/v1alpha1 +kind: Application +metadata: + name: observability + namespace: argocd + finalizers: + - resources-finalizer.argocd.argoproj.io +spec: + project: default + source: + repoURL: https://github.com/K3S-HOME/observability.git + targetRevision: main + path: . + destination: + server: https://kubernetes.default.svc + namespace: argocd + syncPolicy: + automated: + prune: true + selfHeal: true + syncOptions: + - CreateNamespace=true + retry: + limit: 5 + backoff: + duration: 5s + factor: 2 + maxDuration: 3m + revisionHistoryLimit: 10 +--- +apiVersion: argoproj.io/v1alpha1 +kind: Application +metadata: + name: security + namespace: argocd + finalizers: + - resources-finalizer.argocd.argoproj.io +spec: + project: default + source: + repoURL: https://github.com/K3S-HOME/security.git + targetRevision: main + path: . + destination: + server: https://kubernetes.default.svc + namespace: argocd + syncPolicy: + automated: + prune: true + selfHeal: true + syncOptions: + - CreateNamespace=true + retry: + limit: 5 + backoff: + duration: 5s + factor: 2 + maxDuration: 3m + revisionHistoryLimit: 10 +--- +apiVersion: argoproj.io/v1alpha1 +kind: Application +metadata: + name: storage + namespace: argocd + finalizers: + - resources-finalizer.argocd.argoproj.io +spec: + project: default + source: + repoURL: https://github.com/K3S-HOME/storage.git + targetRevision: main + path: . + destination: + server: https://kubernetes.default.svc + namespace: argocd + syncPolicy: + automated: + prune: true + selfHeal: true + syncOptions: + - CreateNamespace=true + retry: + limit: 5 + backoff: + duration: 5s + factor: 2 + maxDuration: 3m + revisionHistoryLimit: 10 +--- +apiVersion: argoproj.io/v1alpha1 +kind: Application +metadata: + name: web-apps + namespace: argocd + finalizers: + - resources-finalizer.argocd.argoproj.io +spec: + project: default + source: + repoURL: https://github.com/K3S-HOME/web-apps.git + targetRevision: main + path: . + destination: + server: https://kubernetes.default.svc + namespace: argocd + syncPolicy: + automated: + prune: true + selfHeal: true + syncOptions: + - CreateNamespace=true + retry: + limit: 5 + backoff: + duration: 5s + factor: 2 + maxDuration: 3m + revisionHistoryLimit: 10 diff --git a/kustomization.yaml b/kustomization.yaml index 1a7bf75..d8a7e88 100644 --- a/kustomization.yaml +++ b/kustomization.yaml @@ -2,16 +2,14 @@ apiVersion: kustomize.config.k8s.io/v1beta1 kind: Kustomization resources: - # App of Apps Application + # Platform self-reference - application.yaml + + # App of Apps (applications, observability, security, storage, web-apps) + - app-of-apps.yaml + + # Core infrastructure - cert-manager/argocd.yaml - traefik/argocd.yaml - - # ArgoCD Image Updater - argocd-image-updater/argocd.yaml - - # ArgoCD self-management Application - argocd/argocd.yaml - - # Web Apps (App of Apps) - - web-apps/argocd.yaml diff --git a/web-apps/argocd.yaml b/web-apps/argocd.yaml deleted file mode 100644 index 0dfeb47..0000000 --- a/web-apps/argocd.yaml +++ /dev/null @@ -1,29 +0,0 @@ -apiVersion: argoproj.io/v1alpha1 -kind: Application -metadata: - name: web-apps - namespace: argocd - finalizers: - - resources-finalizer.argocd.argoproj.io -spec: - project: default - source: - repoURL: https://github.com/K3S-HOME/web-apps.git - targetRevision: main - path: . - destination: - server: https://kubernetes.default.svc - namespace: argocd - syncPolicy: - automated: - prune: true - selfHeal: true - syncOptions: - - CreateNamespace=true - retry: - limit: 5 - backoff: - duration: 5s - factor: 2 - maxDuration: 3m - revisionHistoryLimit: 10