Remove go templating

This commit is contained in:
Marco van Zijl 2025-10-30 21:28:28 +01:00
parent db203f3af1
commit c4f89c1cf0

View File

@ -7,102 +7,31 @@ spec:
goTemplate: true goTemplate: true
goTemplateOptions: ["missingkey=error"] goTemplateOptions: ["missingkey=error"]
generators: generators:
- merge:
# Join base (directories) with overrides (files) by folder name:
mergeKeys:
- '{{ .path.basename }}' # requires recent Argo CD (see note)
generators:
# Base: every folder under apps/*
- git: - git:
repoURL: https://git.mvzijl.nl/marco/veda.git repoURL: https://git.mvzijl.nl/marco/veda.git
revision: HEAD revision: HEAD
branch: applicationset-rewrite branch: applicationset-rewrite
directories: directories:
- path: apps/* - path: apps/*
# Overrides: optional appset.(yaml|yml|json) in each app
- git:
repoURL: https://git.mvzijl.nl/marco/veda.git
revision: HEAD
branch: applicationset-rewrite
files:
- path: apps/*/appset.yaml
- path: apps/*/appset.yml
- path: apps/*/appset.json
# ---- Application template ----
template: template:
metadata: metadata:
name: '{{ default .path.basename .name }}' name: '{{.path.basename}}'
labels:
app.kubernetes.io/part-of: root
# allow grouping for RollingSync (see section B)
tier: '{{ default "apps" (index .labels "tier") }}'
finalizers: finalizers:
- resources-finalizer.argocd.argoproj.io - resources-finalizer.argocd.argoproj.io
spec: spec:
project: '{{ default "default" .project }}' project: default
source: source:
repoURL: https://git.mvzijl.nl/marco/veda.git repoURL: https://git.mvzijl.nl/marco/veda.git
targetRevision: HEAD
branch: applicationset-rewrite branch: applicationset-rewrite
targetRevision: '{{ default "main" .targetRevision }}' path: '{{.path.path}}'
path: '{{ .path.path }}'
# Tool-specific overrides (only render when present)
{{- if .helm }}
helm:
{{- if .helm.releaseName }}releaseName: {{ .helm.releaseName }}{{- end }}
{{- if .helm.valueFiles }}
valueFiles:
{{- range .helm.valueFiles }}
- {{ . }}
{{- end }}
{{- end }}
{{- if hasKey .helm "ignoreMissingValueFiles" }}
ignoreMissingValueFiles: {{ .helm.ignoreMissingValueFiles }}
{{- end }}
{{- end }}
{{- if .kustomize }}
kustomize:
{{- if .kustomize.namePrefix }}namePrefix: {{ .kustomize.namePrefix }}{{- end }}
{{- if .kustomize.commonLabels }}
commonLabels:
{{- range $k,$v := .kustomize.commonLabels }}
{{ $k }}: {{ $v }}
{{- end }}
{{- end }}
{{- end }}
{{- if .directory }}
directory:
{{- if hasKey .directory "recurse" }}recurse: {{ .directory.recurse }}{{- end }}
{{- end }}
destination: destination:
server: '{{ default "https://kubernetes.default.svc" .server }}' server: https://kubernetes.default.svc
namespace: '{{ default .path.basename .namespace }}' namespace: '{{.path.basename}}'
syncPolicy: syncPolicy:
automated: automated:
prune: false prune: false
selfHeal: false selfHeal: false
syncOptions: syncOptions:
- CreateNamespace=true - CreateNamespace=true
- ServerSideApply=true - ApplyOutOfSyncOnly=true
{{- range .syncOptions }}
- {{ . }}
{{- end }}
# ---- Progressive / RollingSync (section B) ----
strategy:
type: RollingSync
rollingSync:
steps:
- matchExpressions:
- key: tier
operator: In
values: ["system"] # e.g. CRDs/operators first
- matchExpressions:
- key: tier
operator: In
values: ["platform"] # infra (DBs, ingress, etc.)
maxUpdate: 50%
- matchExpressions:
- key: tier
operator: In
values: ["apps"] # leaf apps
maxUpdate: 25%
deletionOrder: Reverse