50 lines
1.5 KiB
Plaintext
50 lines
1.5 KiB
Plaintext
apiVersion: argoproj.io/v1alpha1
|
|
kind: ApplicationSet
|
|
metadata:
|
|
name: tls-secrets-sync
|
|
namespace: argocd-ops
|
|
spec:
|
|
generators:
|
|
# Génère une application pour chaque secret TLS à synchroniser
|
|
# depuis OPS vers les clusters DEV, RCT, PRD
|
|
- list:
|
|
elements:
|
|
# Homarr DEV : synchroniser depuis OPS vers DEV
|
|
- app: homarr
|
|
env: dev
|
|
secretName: homarr-dev-tls
|
|
sourceNamespace: certificates-ops
|
|
sourceCluster: cluster-ops
|
|
targetNamespace: homarr-dev
|
|
targetCluster: cluster-dev
|
|
template:
|
|
metadata:
|
|
name: 'tls-secret-sync-{{app}}-{{env}}'
|
|
spec:
|
|
project: default
|
|
source:
|
|
repoURL: https://git.gkdomaine.fr/kubernetes/argocd.git
|
|
targetRevision: main
|
|
path: helm/tls-secrets-sync/ops
|
|
helm:
|
|
valueFiles:
|
|
- values.yaml
|
|
values: |
|
|
app: {{app}}
|
|
env: {{env}}
|
|
secretName: {{secretName}}
|
|
sourceNamespace: {{sourceNamespace}}
|
|
sourceCluster: {{sourceCluster}}
|
|
targetNamespace: {{targetNamespace}}
|
|
targetCluster: {{targetCluster}}
|
|
destination:
|
|
# Les Jobs de synchronisation s'exécutent dans OPS
|
|
name: '{{sourceCluster}}'
|
|
namespace: '{{sourceNamespace}}'
|
|
syncPolicy:
|
|
automated:
|
|
prune: true
|
|
selfHeal: true
|
|
syncOptions:
|
|
- CreateNamespace=true
|