Files
gitops-ack-kro-argocd/fleet/bootstrap/clusters.yaml
T

52 lines
1.6 KiB
YAML

apiVersion: argoproj.io/v1alpha1
kind: ApplicationSet
metadata:
name: clusters
namespace: argocd
annotations:
argocd.argoproj.io/sync-wave: "0"
spec:
syncPolicy:
preserveResourcesOnDeletion: true
goTemplate: true
goTemplateOptions:
- missingkey=error
generators:
- clusters:
selector:
matchLabels:
fleet_member: control-plane
template:
metadata:
name: clusters
labels:
environment: '{{.metadata.labels.environment}}'
tenant: '{{.metadata.labels.tenant}}'
spec:
project: default
sources:
- repoURL: '{{.metadata.annotations.fleet_repo_url}}'
targetRevision: '{{.metadata.annotations.fleet_repo_revision}}'
ref: values
- repoURL: '{{.metadata.annotations.fleet_repo_url}}'
path: 'charts/kro-clusters/'
targetRevision: '{{.metadata.annotations.fleet_repo_revision}}'
helm:
releaseName: 'kro-clusters'
ignoreMissingValueFiles: true
valueFiles:
- '$values/{{.metadata.annotations.fleet_repo_basepath}}kro-values/default/kro-clusters/values.yaml'
- '$values/{{.metadata.annotations.fleet_repo_basepath}}kro-values/tenants/{{.metadata.labels.tenant}}/kro-clusters/values.yaml'
destination:
namespace: argocd
name: '{{.name}}'
syncPolicy:
automated:
selfHeal: false
allowEmpty: true
prune: true
retry:
limit: 100
syncOptions:
- CreateNamespace=true
- ServerSideApply=true # Big CRDs.