78 lines
2.5 KiB
YAML
78 lines
2.5 KiB
YAML
![]() |
apiVersion: argoproj.io/v1alpha1
|
||
|
kind: ApplicationSet
|
||
|
metadata:
|
||
|
name: vclusters
|
||
|
namespace: argocd
|
||
|
spec:
|
||
|
goTemplate: true
|
||
|
goTemplateOptions: ["missingkey=error"]
|
||
|
generators:
|
||
|
- list:
|
||
|
elements:
|
||
|
- name: staging
|
||
|
- name: production
|
||
|
template:
|
||
|
metadata:
|
||
|
name: '{{.name}}-vcluster'
|
||
|
labels:
|
||
|
cnoe.io/stackName: vcluster-multi-env
|
||
|
cnoe.io/applicationName: vcluster-package
|
||
|
finalizers:
|
||
|
- resources-finalizer.argocd.argoproj.io # enabling cascading deletion
|
||
|
spec:
|
||
|
project: 'default'
|
||
|
source:
|
||
|
repoURL: cnoe://
|
||
|
targetRevision: HEAD
|
||
|
path: vcluster
|
||
|
kustomize:
|
||
|
patches:
|
||
|
- target:
|
||
|
labelSelector: cnoe.io/stackName=vcluster-multi-env
|
||
|
kind: Ingress
|
||
|
patch: |-
|
||
|
- op: replace
|
||
|
path: /spec/rules/0/host
|
||
|
value: {{.name}}-vcluster.cnoe.localtest.me
|
||
|
- target:
|
||
|
labelSelector: cnoe.io/stackName=vcluster-multi-env
|
||
|
kind: Ingress
|
||
|
patch: |-
|
||
|
- op: replace
|
||
|
path: /spec/rules/0/http/paths/0/backend/service/name
|
||
|
value: {{.name}}-vcluster-helm
|
||
|
- target:
|
||
|
labelSelector: cnoe.io/stackName=vcluster-multi-env
|
||
|
kind: Application
|
||
|
patch: |-
|
||
|
- op: replace
|
||
|
path: /metadata/name
|
||
|
value: {{.name}}-vcluster-helm
|
||
|
- target:
|
||
|
labelSelector: cnoe.io/stackName=vcluster-multi-env
|
||
|
kind: Application
|
||
|
patch: |-
|
||
|
- op: replace
|
||
|
path: /spec/source/helm/valuesObject/controlPlane/proxy/extraSANs/0
|
||
|
value: {{.name}}-vcluster.cnoe.localtest.me
|
||
|
- target:
|
||
|
labelSelector: cnoe.io/stackName=vcluster-multi-env
|
||
|
kind: Application
|
||
|
patch: |-
|
||
|
- op: replace
|
||
|
path: /spec/source/helm/valuesObject/exportKubeConfig/server
|
||
|
value: https://{{.name}}-vcluster.cnoe.localtest.me:443
|
||
|
- target:
|
||
|
labelSelector: cnoe.io/stackName=vcluster-multi-env
|
||
|
kind: Application
|
||
|
patch: |-
|
||
|
- op: replace
|
||
|
path: /spec/destination/namespace
|
||
|
value: {{.name}}-vcluster
|
||
|
destination:
|
||
|
server: "https://kubernetes.default.svc"
|
||
|
namespace: '{{.name}}-vcluster'
|
||
|
syncPolicy:
|
||
|
automated: {}
|
||
|
syncOptions:
|
||
|
- CreateNamespace=true
|