56 lines
1.9 KiB
YAML
56 lines
1.9 KiB
YAML
# Control plane provider
|
|
{{- if .Values.controlPlane }}
|
|
{{- $controlPlanes := split ";" .Values.controlPlane }}
|
|
{{- $controlPlaneNamespace := "" }}
|
|
{{- $controlPlaneName := "" }}
|
|
{{- $controlPlaneVersion := "" }}
|
|
{{- range $controlPlane := $controlPlanes }}
|
|
{{- $controlPlaneArgs := split ":" $controlPlane }}
|
|
{{- $controlPlaneArgsLen := len $controlPlaneArgs }}
|
|
{{- if eq $controlPlaneArgsLen 3 }}
|
|
{{- $controlPlaneNamespace = $controlPlaneArgs._0 }}
|
|
{{- $controlPlaneName = $controlPlaneArgs._1 }}
|
|
{{- $controlPlaneVersion = $controlPlaneArgs._2 }}
|
|
{{- else if eq $controlPlaneArgsLen 2 }}
|
|
{{- $controlPlaneNamespace = print $controlPlaneArgs._0 "-control-plane-system" }}
|
|
{{- $controlPlaneName = $controlPlaneArgs._0 }}
|
|
{{- $controlPlaneVersion = $controlPlaneArgs._1 }}
|
|
{{- else if eq $controlPlaneArgsLen 1 }}
|
|
{{- $controlPlaneNamespace = print $controlPlaneArgs._0 "-control-plane-system" }}
|
|
{{- $controlPlaneName = $controlPlaneArgs._0 }}
|
|
{{- else }}
|
|
{{- fail "controlplane provider argument should have the following format kubeadm:v1.0.0 or mynamespace:kubeadm:v1.0.0" }}
|
|
{{- end }}
|
|
---
|
|
apiVersion: v1
|
|
kind: Namespace
|
|
metadata:
|
|
annotations:
|
|
"helm.sh/hook": "post-install,post-upgrade"
|
|
"helm.sh/hook-weight": "1"
|
|
name: {{ $controlPlaneNamespace }}
|
|
---
|
|
apiVersion: operator.cluster.x-k8s.io/v1alpha2
|
|
kind: ControlPlaneProvider
|
|
metadata:
|
|
name: {{ $controlPlaneName }}
|
|
namespace: {{ $controlPlaneNamespace }}
|
|
annotations:
|
|
"helm.sh/hook": "post-install,post-upgrade"
|
|
"helm.sh/hook-weight": "2"
|
|
{{- if or $controlPlaneVersion $.Values.configSecret.name }}
|
|
spec:
|
|
{{- end}}
|
|
{{- if $controlPlaneVersion }}
|
|
version: {{ $controlPlaneVersion }}
|
|
{{- end }}
|
|
{{- if $.Values.configSecret.name }}
|
|
configSecret:
|
|
name: {{ $.Values.configSecret.name }}
|
|
{{- if $.Values.configSecret.namespace }}
|
|
namespace: {{ $.Values.configSecret.namespace }}
|
|
{{- end }}
|
|
{{- end }}
|
|
{{- end }}
|
|
{{- end }}
|