Add gitops

This commit is contained in:
Adrien Bouvais 2026-08-14 16:01:42 +02:00
parent 7acdc5e970
commit d204047979
3 changed files with 72 additions and 0 deletions

20
gitops/root-app.yaml Normal file
View File

@ -0,0 +1,20 @@
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: root
namespace: argocd
spec:
project: default
source:
repoURL: https://git.bouvais.lu/adrien/ctie-exercice
targetRevision: main
path: gitops
directory:
recurse: true
destination:
server: https://kubernetes.default.svc
namespace: argocd
syncPolicy:
automated:
prune: true
selfHeal: true

View File

@ -0,0 +1,37 @@
apiVersion: argoproj.io/v1alpha1
kind: ApplicationSet
metadata:
name: tenants
namespace: argocd
spec:
goTemplate: true
generators:
- git:
repoURL: https://git.bouvais.lu/adrien/ctie-exercice
revision: main
files:
- path: "tenants/*/config.yaml"
template:
metadata:
name: 'tenant-{{.name}}'
spec:
project: tenants
sources:
- repoURL: https://git.bouvais.lu/adrien/ctie-exercice
targetRevision: main
path: charts/tenant
helm:
valueFiles:
- '$values/tenants/{{.name}}/config.yaml'
- repoURL: https://git.bouvais.lu/adrien/ctie-exercice
targetRevision: main
ref: values
destination:
server: https://kubernetes.default.svc
namespace: 'tenant-{{.name}}'
syncPolicy:
automated:
prune: true
selfHeal: true
syncOptions:
- CreateNamespace=true

View File

@ -0,0 +1,15 @@
apiVersion: argoproj.io/v1alpha1
kind: AppProject
metadata:
name: tenants
namespace: argocd
spec:
sourceRepos:
- https://git.bouvais.lu/adrien/ctie-exercice
destinations:
- server: https://kubernetes.default.svc
namespace: 'tenant-*'
clusterResourceWhitelist: [] # tenants can't touch cluster-scoped resources
namespaceResourceWhitelist:
- group: '*'
kind: '*'