forked from suse-edge/Factory
Compare commits
1 Commits
turtles_01
...
metal3_cha
Author | SHA256 | Date | |
---|---|---|---|
f3052f1473
|
@@ -1,17 +1,18 @@
|
||||
#!BuildTag: %%IMG_PREFIX%%metal3-chart:0.8.1
|
||||
#!BuildTag: %%IMG_PREFIX%%metal3-chart:0.8.1-%RELEASE%
|
||||
#!BuildTag: %%IMG_PREFIX%%metal3-chart:302.0.0_up0.9.0
|
||||
#!BuildTag: %%IMG_PREFIX%%metal3-chart:302.0.0_up0.9.0-%RELEASE%
|
||||
apiVersion: v2
|
||||
appVersion: 1.16.0
|
||||
appVersion: 0.9.0
|
||||
dependencies:
|
||||
- alias: metal3-baremetal-operator
|
||||
name: baremetal-operator
|
||||
repository: file://./charts/baremetal-operator
|
||||
version: 0.5.0
|
||||
version: 0.6.0
|
||||
- alias: metal3-ironic
|
||||
name: ironic
|
||||
repository: file://./charts/ironic
|
||||
version: 0.7.0
|
||||
version: 0.8.0
|
||||
- alias: metal3-mariadb
|
||||
condition: global.enable_mariadb
|
||||
name: mariadb
|
||||
repository: file://./charts/mariadb
|
||||
version: 0.5.4
|
||||
@@ -19,9 +20,9 @@ dependencies:
|
||||
condition: global.enable_metal3_media_server
|
||||
name: media
|
||||
repository: file://./charts/media
|
||||
version: 0.5.0
|
||||
version: 0.6.0
|
||||
description: A Helm chart that installs all of the dependencies needed for Metal3
|
||||
icon: https://github.com/cncf/artwork/raw/master/projects/metal3/icon/color/metal3-icon-color.svg
|
||||
name: metal3
|
||||
type: application
|
||||
version: 0.8.1
|
||||
version: 302.0.0+up0.9.0
|
||||
|
@@ -1,6 +1,6 @@
|
||||
apiVersion: v2
|
||||
appVersion: 0.6.1
|
||||
appVersion: 0.8.0
|
||||
description: A Helm chart for baremetal-operator, used by Metal3
|
||||
name: baremetal-operator
|
||||
type: application
|
||||
version: 0.5.0
|
||||
version: 0.6.0
|
||||
|
@@ -39,11 +39,6 @@ spec:
|
||||
name: BMC
|
||||
priority: 1
|
||||
type: string
|
||||
- description: The type of hardware detected
|
||||
jsonPath: .status.hardwareProfile
|
||||
name: Hardware_Profile
|
||||
priority: 1
|
||||
type: string
|
||||
- description: Whether the host is online or not
|
||||
jsonPath: .spec.online
|
||||
name: Online
|
||||
@@ -740,6 +735,7 @@ spec:
|
||||
type: object
|
||||
hardwareProfile:
|
||||
description: The name of the profile matching the hardware details.
|
||||
Hardware profiles are deprecated and should not be relied on.
|
||||
type: string
|
||||
lastUpdated:
|
||||
description: LastUpdated identifies when this status was last observed.
|
||||
@@ -1136,7 +1132,6 @@ spec:
|
||||
required:
|
||||
- errorCount
|
||||
- errorMessage
|
||||
- hardwareProfile
|
||||
- operationalStatus
|
||||
- poweredOn
|
||||
- provisioning
|
||||
|
@@ -3,14 +3,12 @@
|
||||
{{- $protocol := ternary "https" "http" $enableTLS }}
|
||||
{{- $ironicIP := .Values.global.ironicIP | default "" }}
|
||||
{{- $ironicApiHost := print $ironicIP ":6385" }}
|
||||
{{- $ironicInspectorHost := print $ironicIP ":5050" }}
|
||||
{{- $ironicBootHost := print $ironicIP ":6180" }}
|
||||
{{- $ironicCacheHost := print $ironicIP ":6180" }}
|
||||
|
||||
apiVersion: v1
|
||||
data:
|
||||
IRONIC_ENDPOINT: "{{ $protocol }}://{{ $ironicApiHost }}/v1/"
|
||||
IRONIC_INSPECTOR_ENDPOINT: "{{ $protocol }}://{{ $ironicInspectorHost }}/v1/"
|
||||
RESTART_CONTAINER_CERTIFICATE_UPDATED: "false"
|
||||
# Switch VMedia to HTTP if enable_vmedia_tls is false
|
||||
{{- if and $enableTLS $enableVMediaTLS }}
|
||||
|
@@ -78,14 +78,6 @@ spec:
|
||||
mountPath: "/opt/metal3/auth/ironic/password"
|
||||
subPath: password
|
||||
readOnly: true
|
||||
- name: ironic-inspector-basic-auth
|
||||
mountPath: "/opt/metal3/auth/ironic-inspector/username"
|
||||
subPath: username
|
||||
readOnly: true
|
||||
- name: ironic-inspector-basic-auth
|
||||
mountPath: "/opt/metal3/auth/ironic-inspector/password"
|
||||
subPath: password
|
||||
readOnly: true
|
||||
{{- end }}
|
||||
{{- if .Values.global.enable_tls }}
|
||||
- name: cacert
|
||||
@@ -116,9 +108,6 @@ spec:
|
||||
- name: ironic-basic-auth
|
||||
secret:
|
||||
secretName: ironic-basic-auth
|
||||
- name: ironic-inspector-basic-auth
|
||||
secret:
|
||||
secretName: ironic-inspector-basic-auth
|
||||
{{- end }}
|
||||
{{- if .Values.global.enable_tls }}
|
||||
- name: cacert
|
||||
|
@@ -28,11 +28,11 @@ images:
|
||||
baremetalOperator:
|
||||
repository: registry.opensuse.org/isv/suse/edge/metal3/containers/images/baremetal-operator
|
||||
pullPolicy: IfNotPresent
|
||||
tag: "0.6.1"
|
||||
tag: "0.8.0"
|
||||
rbacProxy:
|
||||
repository: registry.opensuse.org/isv/suse/edge/metal3/containers/images/kube-rbac-proxy
|
||||
pullPolicy: IfNotPresent
|
||||
tag: "v0.14.2"
|
||||
tag: "0.18.1"
|
||||
|
||||
imagePullSecrets: []
|
||||
nameOverride: "manger"
|
||||
|
@@ -1,6 +1,6 @@
|
||||
apiVersion: v2
|
||||
appVersion: 24.1.2
|
||||
appVersion: 26.1.2
|
||||
description: A Helm chart for Ironic, used by Metal3
|
||||
name: ironic
|
||||
type: application
|
||||
version: 0.7.0
|
||||
version: 0.8.0
|
||||
|
@@ -77,9 +77,6 @@ Get ironic CA volumeMounts
|
||||
- name: cert-ironic-ca
|
||||
mountPath: "/certs/ca/ironic"
|
||||
readOnly: true
|
||||
- name: cert-ironic-inspector-ca
|
||||
mountPath: "/certs/ca/ironic-inspector"
|
||||
readOnly: true
|
||||
{{- if .Values.global.enable_vmedia_tls }}
|
||||
- name: cert-ironic-vmedia-ca
|
||||
mountPath: "/certs/ca/vmedia"
|
||||
|
@@ -25,19 +25,6 @@ spec:
|
||||
kind: Issuer
|
||||
name: ca-issuer
|
||||
secretName: ironic-cert
|
||||
---
|
||||
apiVersion: cert-manager.io/v1
|
||||
kind: Certificate
|
||||
metadata:
|
||||
name: ironic-inspector-cert
|
||||
spec:
|
||||
commonName: ironic-inspector-cert
|
||||
ipAddresses:
|
||||
- {{ .Values.global.ironicIP }}
|
||||
issuerRef:
|
||||
kind: Issuer
|
||||
name: ca-issuer
|
||||
secretName: ironic-inspector-cert
|
||||
{{- if .Values.global.enable_vmedia_tls }}
|
||||
---
|
||||
apiVersion: cert-manager.io/v1
|
||||
|
@@ -10,7 +10,6 @@ data:
|
||||
{{- $protocol := ternary "https" "http" $enableTLS }}
|
||||
{{- $ironicIP := .Values.global.ironicIP | default "" }}
|
||||
{{- $ironicApiHost := print $ironicIP ":6385" }}
|
||||
{{- $ironicInspectorHost := print $ironicIP ":5050" }}
|
||||
{{- $ironicBootHost := print $ironicIP ":6180" }}
|
||||
{{- $ironicCacheHost := print $ironicIP ":6180" }}
|
||||
|
||||
@@ -25,15 +24,11 @@ data:
|
||||
{{- end }}
|
||||
HTTP_PORT: "6180"
|
||||
PREDICTABLE_NIC_NAMES: "{{ .Values.global.predictableNicNames }}"
|
||||
USE_IRONIC_INSPECTOR: "true"
|
||||
USE_IRONIC_INSPECTOR: "false"
|
||||
IRONIC_API_BASE_URL: {{ $protocol }}://{{ $ironicApiHost }}
|
||||
IRONIC_API_HOST: {{ $ironicApiHost }}
|
||||
IRONIC_API_HTTPD_SERVER_NAME: {{ $ironicApiHost }}
|
||||
IRONIC_ENDPOINT: {{ $protocol }}://{{ $ironicApiHost }}/v1/
|
||||
IRONIC_INSPECTOR_BASE_URL: {{ $protocol }}://{{ $ironicInspectorHost }}
|
||||
IRONIC_INSPECTOR_ENDPOINT: {{ $protocol }}://{{ $ironicInspectorHost }}/v1/
|
||||
IRONIC_INSPECTOR_HOST: {{ $ironicInspectorHost }}
|
||||
IRONIC_INSPECTOR_HTTPD_SERVER_NAME: {{ $ironicInspectorHost }}
|
||||
# Switch VMedia to HTTP if enable_vmedia_tls is false
|
||||
{{- if and $enableTLS $enableVMediaTLS }}
|
||||
{{- $ironicBootHost = print $ironicIP ":" .Values.global.vmediaTLSPort }}
|
||||
@@ -55,11 +50,9 @@ data:
|
||||
{{- if .Values.global.provisioningIP }}
|
||||
PROVISIONING_IP: {{ .Values.global.provisioningIP }}
|
||||
{{- end }}
|
||||
IRONIC_INSPECTOR_VLAN_INTERFACES: all
|
||||
IRONIC_ILO_USE_SWIFT: "false"
|
||||
IRONIC_ILO_USE_WEB_SERVER_FOR_IMAGES: "true"
|
||||
IRONIC_FAST_TRACK: "true"
|
||||
IRONIC_USE_MARIADB: "true"
|
||||
LISTEN_ALL_INTERFACES: "true"
|
||||
{{- if .Values.global.ironicIP }}
|
||||
IRONIC_IP: {{ .Values.global.ironicIP }}
|
||||
@@ -69,7 +62,6 @@ data:
|
||||
IRONIC_KERNEL_PARAMS: {{ .Values.global.ironicKernelParams }} tls.enabled=true
|
||||
IPA_INSECURE: "0"
|
||||
IRONIC_REVERSE_PROXY_SETUP: "true"
|
||||
INSPECTOR_REVERSE_PROXY_SETUP: "true"
|
||||
{{- if ( .Values.global.enable_vmedia_tls ) }}
|
||||
VMEDIA_TLS_PORT: "{{ .Values.global.vmediaTLSPort }}"
|
||||
{{- end }}
|
||||
@@ -81,6 +73,10 @@ data:
|
||||
{{- end }}
|
||||
{{- if ( .Values.global.enable_basicAuth ) }}
|
||||
AUTH_STRATEGY: "http_basic"
|
||||
INSPECTOR_AUTH_STRATEGY: "http_basic"
|
||||
{{- end }}
|
||||
{{- if .Values.global.enable_mariadb }}
|
||||
MARIADB_HOST: {{ .Values.global.databaseServiceName }}.{{ .Release.Namespace }}.svc.cluster.local
|
||||
IRONIC_USE_MARIADB: "true"
|
||||
{{- else }}
|
||||
IRONIC_USE_MARIADB: "false"
|
||||
{{- end }}
|
||||
|
@@ -41,10 +41,7 @@ spec:
|
||||
name: ironic-bmo
|
||||
livenessProbe:
|
||||
exec:
|
||||
command:
|
||||
- /bin/sh
|
||||
- -c
|
||||
- curl {{ if and .Values.global.enable_tls .Values.global.enable_vmedia_tls }}-sSfk https://127.0.0.1:{{ .Values.global.vmediaTLSPort }}/boot.ipxe {{ else }}-sSf http://127.0.0.1:6180/boot.ipxe{{ end }}
|
||||
command: ["sh", "-c", "curl -sSfk https://127.0.0.1:6385"]
|
||||
failureThreshold: 10
|
||||
initialDelaySeconds: 30
|
||||
periodSeconds: 30
|
||||
@@ -62,10 +59,7 @@ spec:
|
||||
{{- end }}
|
||||
readinessProbe:
|
||||
exec:
|
||||
command:
|
||||
- /bin/sh
|
||||
- -c
|
||||
- curl {{ if and .Values.global.enable_tls .Values.global.enable_vmedia_tls }}-sSfk https://127.0.0.1:{{ .Values.global.vmediaTLSPort }}/boot.ipxe {{ else }}-sSf http://127.0.0.1:6180/boot.ipxe{{ end }}
|
||||
command: ["sh", "-c", "curl -sSfk https://127.0.0.1:6385"]
|
||||
failureThreshold: 10
|
||||
initialDelaySeconds: 30
|
||||
periodSeconds: 30
|
||||
@@ -78,9 +72,6 @@ spec:
|
||||
- name: cert-ironic
|
||||
mountPath: "/certs/ironic"
|
||||
readOnly: true
|
||||
- name: cert-ironic-inspector
|
||||
mountPath: "/certs/ironic-inspector"
|
||||
readOnly: true
|
||||
{{- if .Values.global.enable_vmedia_tls }}
|
||||
- name: cert-ironic-vmedia
|
||||
mountPath: "/certs/vmedia"
|
||||
@@ -90,73 +81,6 @@ spec:
|
||||
name: cert-ironic-ca
|
||||
readOnly: true
|
||||
{{- end }}
|
||||
- name: ironic-inspector
|
||||
image: {{ .Values.images.ironic.repository }}:{{ .Values.images.ironic.tag }}
|
||||
imagePullPolicy: {{ .Values.images.ironic.pullPolicy }}
|
||||
securityContext:
|
||||
{{- toYaml .Values.securityContext | nindent 10 }}
|
||||
command:
|
||||
- /bin/runironic-inspector
|
||||
envFrom:
|
||||
- configMapRef:
|
||||
name: ironic-bmo
|
||||
env:
|
||||
{{- if .Values.global.enable_basicAuth }}
|
||||
- name: INSPECTOR_HTPASSWD
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: ironic-inspector-basic-auth
|
||||
key: htpasswd
|
||||
{{- end }}
|
||||
- name: MARIADB_PASSWORD
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
key: password
|
||||
name: ironic-mariadb
|
||||
livenessProbe:
|
||||
exec:
|
||||
command:
|
||||
- /bin/sh
|
||||
- -c
|
||||
- curl -sSf http://127.0.0.1:{{ if .Values.global.enable_tls }}5049{{ else }}5050{{ end }}
|
||||
failureThreshold: 10
|
||||
initialDelaySeconds: 30
|
||||
periodSeconds: 30
|
||||
successThreshold: 1
|
||||
timeoutSeconds: 10
|
||||
ports:
|
||||
- containerPort: 5050
|
||||
name: inspector
|
||||
protocol: TCP
|
||||
readinessProbe:
|
||||
exec:
|
||||
command:
|
||||
- /bin/sh
|
||||
- -c
|
||||
- curl -sSf http://127.0.0.1:{{ if .Values.global.enable_tls }}5049{{ else }}5050{{ end }}
|
||||
failureThreshold: 10
|
||||
initialDelaySeconds: 30
|
||||
periodSeconds: 30
|
||||
successThreshold: 1
|
||||
timeoutSeconds: 10
|
||||
volumeMounts:
|
||||
{{- include "ironic.sharedVolumeMount" . | nindent 10 }}
|
||||
{{- if .Values.global.enable_basicAuth }}
|
||||
- mountPath: "/auth/ironic/auth-config"
|
||||
name: ironic-basic-auth
|
||||
subPath: auth-config
|
||||
readOnly: true
|
||||
- mountPath: "/auth/ironic-inspector/auth-config"
|
||||
name: ironic-inspector-basic-auth
|
||||
subPath: auth-config
|
||||
readOnly: true
|
||||
{{- end }}
|
||||
{{- if .Values.global.enable_tls }}
|
||||
{{- include "ironic.CAVolumeMounts" . | nindent 10 }}
|
||||
- name: cert-ironic-inspector
|
||||
mountPath: "/certs/ironic-inspector"
|
||||
readOnly: true
|
||||
{{- end }}
|
||||
- name: ironic-log-watch
|
||||
image: {{ .Values.images.ironic.repository }}:{{ .Values.images.ironic.tag }}
|
||||
imagePullPolicy: {{ .Values.images.ironic.pullPolicy }}
|
||||
@@ -184,37 +108,33 @@ spec:
|
||||
name: ironic-basic-auth
|
||||
key: htpasswd
|
||||
{{- end }}
|
||||
{{- if .Values.global.enable_mariadb }}
|
||||
- name: MARIADB_PASSWORD
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
key: password
|
||||
name: ironic-mariadb
|
||||
{{- end }}
|
||||
livenessProbe:
|
||||
exec:
|
||||
command:
|
||||
- /bin/sh
|
||||
- -c
|
||||
- curl -sSf http://127.0.0.1:{{ if .Values.global.enable_tls }}6388{{ else }}6385{{ end }}
|
||||
failureThreshold: 10
|
||||
command: ["/bin/ironic-liveness"]
|
||||
initialDelaySeconds: 30
|
||||
periodSeconds: 30
|
||||
successThreshold: 1
|
||||
timeoutSeconds: 10
|
||||
successThreshold: 1
|
||||
failureThreshold: 10
|
||||
ports:
|
||||
- containerPort: 6385
|
||||
name: api
|
||||
protocol: TCP
|
||||
readinessProbe:
|
||||
exec:
|
||||
command:
|
||||
- /bin/sh
|
||||
- -c
|
||||
- curl -sSf http://127.0.0.1:{{ if .Values.global.enable_tls }}6388{{ else }}6385{{ end }}
|
||||
failureThreshold: 10
|
||||
command: ["/bin/ironic-readiness"]
|
||||
initialDelaySeconds: 30
|
||||
periodSeconds: 30
|
||||
successThreshold: 1
|
||||
timeoutSeconds: 10
|
||||
successThreshold: 1
|
||||
failureThreshold: 10
|
||||
volumeMounts:
|
||||
{{- include "ironic.sharedVolumeMount" . | nindent 10 }}
|
||||
{{- if .Values.global.enable_basicAuth }}
|
||||
@@ -222,10 +142,6 @@ spec:
|
||||
name: ironic-basic-auth
|
||||
subPath: auth-config
|
||||
readOnly: true
|
||||
- mountPath: "/auth/ironic-inspector/auth-config"
|
||||
name: ironic-inspector-basic-auth
|
||||
subPath: auth-config
|
||||
readOnly: true
|
||||
{{- end }}
|
||||
{{- if .Values.global.enable_tls }}
|
||||
{{- include "ironic.CAVolumeMounts" . | nindent 10 }}
|
||||
@@ -308,15 +224,16 @@ spec:
|
||||
{{- end }}
|
||||
volumes:
|
||||
- name: ironic-data-volume
|
||||
{{- if .Values.persistence.ironic.size }}
|
||||
persistentVolumeClaim:
|
||||
claimName: ironic-shared-volume
|
||||
{{- else }}
|
||||
emptyDir: {}
|
||||
{{- end }}
|
||||
{{- if .Values.global.enable_basicAuth }}
|
||||
- name: ironic-basic-auth
|
||||
secret:
|
||||
secretName: ironic-basic-auth
|
||||
- name: ironic-inspector-basic-auth
|
||||
secret:
|
||||
secretName: ironic-inspector-basic-auth
|
||||
{{- if .Values.global.enable_tls }}
|
||||
- name: trusted-certs
|
||||
projected:
|
||||
@@ -333,12 +250,6 @@ spec:
|
||||
- name: cert-ironic
|
||||
secret:
|
||||
secretName: ironic-cert
|
||||
- name: cert-ironic-inspector-ca
|
||||
secret:
|
||||
secretName: ironic-cacert
|
||||
- name: cert-ironic-inspector
|
||||
secret:
|
||||
secretName: ironic-inspector-cert
|
||||
{{- if .Values.global.enable_vmedia_tls }}
|
||||
- name: cert-ironic-vmedia-ca
|
||||
secret:
|
||||
|
@@ -1,3 +1,4 @@
|
||||
{{- if .Values.persistence.ironic.size }}
|
||||
apiVersion: v1
|
||||
kind: PersistentVolumeClaim
|
||||
metadata:
|
||||
@@ -22,3 +23,4 @@ spec:
|
||||
storageClassName: {{ .Values.persistence.ironic.storageClass }}
|
||||
{{- end }}
|
||||
volumeMode: Filesystem
|
||||
{{- end }}
|
||||
|
@@ -29,34 +29,5 @@ data:
|
||||
htpasswd: {{ b64enc (htpasswd $ironicUsername $ironicPassword) }}
|
||||
auth-config: |
|
||||
{{- printf "[ironic]\nauth_type=http_basic\nusername: %s\npassword: %s" $ironicUsername $ironicPassword | b64enc | nindent 4 }}
|
||||
---
|
||||
{{- $ironicInspectorUsername := "" -}}
|
||||
{{- $ironicInspectorPassword := "" -}}
|
||||
{{- $inspectorSecretName := "ironic-inspector-basic-auth" -}}
|
||||
|
||||
# Check if the secret is deployed and has a password
|
||||
{{- $oldInspectorSecret := lookup "v1" "Secret" .Release.Namespace $inspectorSecretName }}
|
||||
{{- if and $oldInspectorSecret (index $oldInspectorSecret.data "username") (index $oldInspectorSecret.data "password") }}
|
||||
{{- $ironicInspectorUsername = b64dec (index $oldInspectorSecret.data "username" | toString) -}}
|
||||
{{- $ironicInspectorPassword = b64dec (index $oldInspectorSecret.data "password" | toString) -}}
|
||||
# If not, check if a username and password are provided in values.yaml
|
||||
{{- else if and (.Values.global.auth.ironicInspectorUsername) (.Values.global.auth.ironicInspectorPassword) }}
|
||||
{{- $ironicInspectorUsername = .Values.global.auth.ironicInspectorUsername -}}
|
||||
{{- $ironicInspectorPassword = .Values.global.auth.ironicInspectorPassword -}}
|
||||
{{- else }}
|
||||
# If no username and password are provided in values.yaml, generate new ones
|
||||
{{- $ironicInspectorUsername = "ironic" -}}
|
||||
{{- $ironicInspectorPassword = (randAlphaNum 20) -}}
|
||||
{{- end }}
|
||||
apiVersion: v1
|
||||
kind: Secret
|
||||
metadata:
|
||||
name: {{ $inspectorSecretName }}
|
||||
type: Opaque
|
||||
data:
|
||||
username: {{ $ironicInspectorUsername | b64enc }}
|
||||
password: {{ $ironicInspectorPassword | b64enc }}
|
||||
htpasswd: {{ b64enc (htpasswd $ironicInspectorUsername $ironicInspectorPassword) }}
|
||||
auth-config: |
|
||||
{{- printf "[inspector]\nauth_type=http_basic\nusername: %s\npassword: %s" $ironicInspectorUsername $ironicInspectorPassword | b64enc | nindent 4 }}
|
||||
{{- end }}
|
||||
|
@@ -56,11 +56,11 @@ images:
|
||||
ironic:
|
||||
repository: registry.opensuse.org/isv/suse/edge/metal3/containers/images/ironic
|
||||
pullPolicy: IfNotPresent
|
||||
tag: 24.1.2.0
|
||||
tag: 26.1.2.0
|
||||
ironicIPADownloader:
|
||||
repository: registry.opensuse.org/isv/suse/edge/metal3/containers/images/ironic-ipa-downloader
|
||||
pullPolicy: IfNotPresent
|
||||
tag: 2.0.0
|
||||
tag: 3.0.0
|
||||
|
||||
nameOverride: ""
|
||||
fullnameOverride: ""
|
||||
@@ -102,10 +102,6 @@ service:
|
||||
port: 6185
|
||||
protocol: TCP
|
||||
targetPort: 6185
|
||||
- name: inspector
|
||||
port: 5050
|
||||
protocol: TCP
|
||||
targetPort: 5050
|
||||
- name: api
|
||||
port: 6385
|
||||
protocol: TCP
|
||||
@@ -144,8 +140,9 @@ persistence:
|
||||
# storageClass for the ironic shared volume
|
||||
# Ensure the storageClass is defined
|
||||
storageClass: ""
|
||||
# size of the ironic shared volume
|
||||
size: "1Gi"
|
||||
# size of the ironic shared volume e.g "1Gi"
|
||||
# When unset persistent storage is disabled and emptyDir is enabled
|
||||
size: ""
|
||||
# accessMode of the ironic shared volume PVC
|
||||
# If empty defaults to ReadWriteOnce when replicaCount=1 otherwise ReadWriteMany
|
||||
accessMode: ""
|
||||
|
@@ -3,4 +3,4 @@ appVersion: 1.16.0
|
||||
description: A Helm chart for Media, used by Metal3
|
||||
name: media
|
||||
type: application
|
||||
version: 0.5.0
|
||||
version: 0.6.0
|
||||
|
@@ -24,7 +24,7 @@ replicaCount: 1
|
||||
image:
|
||||
repository: registry.opensuse.org/isv/suse/edge/metal3/containers/images/ironic
|
||||
pullPolicy: IfNotPresent
|
||||
tag: 24.1.2.0
|
||||
tag: 26.1.2.0
|
||||
|
||||
imagePullSecrets: []
|
||||
nameOverride: ""
|
||||
|
@@ -6,6 +6,9 @@ global:
|
||||
# IP on which the Ironic services will be exposed
|
||||
ironicIP: ""
|
||||
|
||||
# whether to enable mariadb (default is sqlite)
|
||||
enable_mariadb: false
|
||||
|
||||
# whether to enable media server.
|
||||
enable_metal3_media_server: false
|
||||
|
||||
@@ -28,8 +31,6 @@ global:
|
||||
auth:
|
||||
ironicUsername: ""
|
||||
ironicPassword: ""
|
||||
ironicInspectorUsername: ""
|
||||
ironicInspectorPassword: ""
|
||||
|
||||
# whether to have additional trusted CA
|
||||
# NOTE: If enabled, a secret with name tls-ca-additional should be deployed
|
||||
@@ -125,6 +126,4 @@ metal3-baremetal-operator:
|
||||
repository: "%%IMG_REPO%%/%%IMG_PREFIX%%baremetal-operator"
|
||||
rbacProxy:
|
||||
repository: "%%IMG_REPO%%/%%IMG_PREFIX%%kube-rbac-proxy"
|
||||
tag: "v0.18.0"
|
||||
|
||||
|
||||
|
@@ -1,10 +1,10 @@
|
||||
#!BuildTag: %%IMG_PREFIX%%rancher-turtles-airgap-resources-chart:302.0.0_up0.13.0
|
||||
#!BuildTag: %%IMG_PREFIX%%rancher-turtles-airgap-resources-chart:302.0.0_up0.13.0
|
||||
#!BuildTag: %%IMG_PREFIX%%rancher-turtles-airgap-resources-chart:0.3.3
|
||||
#!BuildTag: %%IMG_PREFIX%%rancher-turtles-airgap-resources-chart:0.3.3-%RELEASE%
|
||||
apiVersion: v2
|
||||
appVersion: 0.13.0
|
||||
appVersion: 0.11.0
|
||||
description: Rancher Turtles utility chart for airgap scenarios
|
||||
home: https://github.com/rancher/turtles/
|
||||
icon: https://raw.githubusercontent.com/rancher/turtles/main/logos/capi.svg
|
||||
name: rancher-turtles-airgap-resources
|
||||
type: application
|
||||
version: 302.0.0+up0.13.0
|
||||
version: 0.3.3
|
||||
|
File diff suppressed because one or more lines are too long
@@ -3647,7 +3647,7 @@ data:
|
||||
envFrom:
|
||||
- configMapRef:
|
||||
name: capm3-capm3fasttrack-configmap
|
||||
image: quay.io/metal3-io/cluster-api-provider-metal3:v1.7.2
|
||||
image: quay.io/metal3-io/cluster-api-provider-metal3:v1.7.1
|
||||
imagePullPolicy: IfNotPresent
|
||||
livenessProbe:
|
||||
httpGet:
|
||||
@@ -3731,7 +3731,7 @@ data:
|
||||
valueFrom:
|
||||
fieldRef:
|
||||
fieldPath: metadata.namespace
|
||||
image: quay.io/metal3-io/ip-address-manager:v1.7.2
|
||||
image: quay.io/metal3-io/ip-address-manager:v1.7.1
|
||||
imagePullPolicy: IfNotPresent
|
||||
livenessProbe:
|
||||
httpGet:
|
||||
@@ -4384,7 +4384,7 @@ data:
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
creationTimestamp: null
|
||||
name: v1.7.2
|
||||
name: v1.7.1
|
||||
namespace: capm3-system
|
||||
labels:
|
||||
provider-components: metal3
|
||||
|
@@ -868,11 +868,6 @@ data:
|
||||
type: string
|
||||
type: array
|
||||
type: object
|
||||
podSecurityAdmissionConfigFile:
|
||||
description: |-
|
||||
PodSecurityPolicyConfigFile contains the path to the PodSecurityPolicy configuration file. The file can be passed through
|
||||
spec.Files field.
|
||||
type: string
|
||||
protectKernelDefaults:
|
||||
description: |-
|
||||
ProtectKernelDefaults defines Kernel tuning behavior. If true, error if kernel tunables are different than kubelet defaults.
|
||||
@@ -2055,11 +2050,6 @@ data:
|
||||
type: string
|
||||
type: array
|
||||
type: object
|
||||
podSecurityAdmissionConfigFile:
|
||||
description: |-
|
||||
PodSecurityPolicyConfigFile contains the path to the PodSecurityPolicy configuration file. The file can be passed through
|
||||
spec.Files field.
|
||||
type: string
|
||||
protectKernelDefaults:
|
||||
description: |-
|
||||
ProtectKernelDefaults defines Kernel tuning behavior. If true, error if kernel tunables are different than kubelet defaults.
|
||||
@@ -2545,7 +2535,7 @@ data:
|
||||
- --insecure-diagnostics=${CAPRKE2_INSECURE_DIAGNOSTICS:=false}
|
||||
command:
|
||||
- /manager
|
||||
image: ghcr.io/rancher/cluster-api-provider-rke2-bootstrap:v0.8.0
|
||||
image: ghcr.io/rancher/cluster-api-provider-rke2-bootstrap:v0.7.1
|
||||
imagePullPolicy: IfNotPresent
|
||||
livenessProbe:
|
||||
httpGet:
|
||||
@@ -2752,13 +2742,10 @@ data:
|
||||
- major: 0
|
||||
minor: 7
|
||||
contract: v1beta1
|
||||
- major: 0
|
||||
minor: 8
|
||||
contract: v1beta1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
creationTimestamp: null
|
||||
name: v0.8.0
|
||||
name: v0.7.1
|
||||
namespace: rke2-bootstrap-system
|
||||
labels:
|
||||
provider-components: rke2-bootstrap
|
||||
|
@@ -1513,11 +1513,6 @@ data:
|
||||
type: string
|
||||
type: array
|
||||
type: object
|
||||
podSecurityAdmissionConfigFile:
|
||||
description: |-
|
||||
PodSecurityPolicyConfigFile contains the path to the PodSecurityPolicy configuration file. The file can be passed through
|
||||
spec.Files field.
|
||||
type: string
|
||||
protectKernelDefaults:
|
||||
description: |-
|
||||
ProtectKernelDefaults defines Kernel tuning behavior. If true, error if kernel tunables are different than kubelet defaults.
|
||||
@@ -2931,11 +2926,6 @@ data:
|
||||
type: string
|
||||
type: array
|
||||
type: object
|
||||
podSecurityAdmissionConfigFile:
|
||||
description: |-
|
||||
PodSecurityPolicyConfigFile contains the path to the PodSecurityPolicy configuration file. The file can be passed through
|
||||
spec.Files field.
|
||||
type: string
|
||||
protectKernelDefaults:
|
||||
description: |-
|
||||
ProtectKernelDefaults defines Kernel tuning behavior. If true, error if kernel tunables are different than kubelet defaults.
|
||||
@@ -4295,7 +4285,7 @@ data:
|
||||
valueFrom:
|
||||
fieldRef:
|
||||
fieldPath: metadata.uid
|
||||
image: ghcr.io/rancher/cluster-api-provider-rke2-controlplane:v0.8.0
|
||||
image: ghcr.io/rancher/cluster-api-provider-rke2-controlplane:v0.7.1
|
||||
imagePullPolicy: IfNotPresent
|
||||
livenessProbe:
|
||||
httpGet:
|
||||
@@ -4509,13 +4499,10 @@ data:
|
||||
- major: 0
|
||||
minor: 7
|
||||
contract: v1beta1
|
||||
- major: 0
|
||||
minor: 8
|
||||
contract: v1beta1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
creationTimestamp: null
|
||||
name: v0.8.0
|
||||
name: v0.7.1
|
||||
namespace: rke2-control-plane-system
|
||||
labels:
|
||||
provider-components: rke2-control-plane
|
||||
|
@@ -1,6 +1,6 @@
|
||||
dependencies:
|
||||
- name: cluster-api-operator
|
||||
repository: https://kubernetes-sigs.github.io/cluster-api-operator
|
||||
version: 0.14.0
|
||||
digest: sha256:9e9e851dbab3212c279efec06bcf0da147228ea1590470f3a8cbbb5806a250d4
|
||||
generated: "2024-10-28T11:44:34.392387979Z"
|
||||
version: 0.12.0
|
||||
digest: sha256:c167c074ca89ef7a520ec18a5afd380b9edaee513810aa3ac0e0bda51db9c526
|
||||
generated: "2024-08-22T14:23:18.589443298Z"
|
||||
|
@@ -1,5 +1,5 @@
|
||||
#!BuildTag: %%IMG_PREFIX%%rancher-turtles-chart:302.0.0_up0.13.0
|
||||
#!BuildTag: %%IMG_PREFIX%%rancher-turtles-chart:302.0.0_up0.13.0-%RELEASE%
|
||||
#!BuildTag: %%IMG_PREFIX%%rancher-turtles-chart:0.3.3
|
||||
#!BuildTag: %%IMG_PREFIX%%rancher-turtles-chart:0.3.3-%RELEASE%
|
||||
annotations:
|
||||
catalog.cattle.io/certified: rancher
|
||||
catalog.cattle.io/display-name: Rancher Turtles - the Cluster API Extension
|
||||
@@ -12,12 +12,12 @@ annotations:
|
||||
catalog.cattle.io/scope: management
|
||||
catalog.cattle.io/type: cluster-tool
|
||||
apiVersion: v2
|
||||
appVersion: 0.13.0
|
||||
appVersion: 0.11.0
|
||||
dependencies:
|
||||
- condition: cluster-api-operator.enabled
|
||||
name: cluster-api-operator
|
||||
repository: file://./charts/cluster-api-operator
|
||||
version: 0.14.0
|
||||
version: 0.12.0
|
||||
description: Rancher Turtles is an extension to Rancher that brings full Cluster API
|
||||
integration to Rancher.
|
||||
home: https://github.com/rancher/turtles/
|
||||
@@ -29,4 +29,4 @@ keywords:
|
||||
- provisioning
|
||||
name: rancher-turtles
|
||||
type: application
|
||||
version: 302.0.0+up0.13.0
|
||||
version: 0.3.3+up0.11.0
|
||||
|
@@ -1,4 +1,6 @@
|
||||
gh: To use GitHub CLI in a GitHub Actions workflow, set the GH_TOKEN environment variable. Example:
|
||||
env:
|
||||
GH_TOKEN: ${{ github.token }}
|
||||
: exit status 4
|
||||
## Changes since test/v0.11.0
|
||||
---
|
||||
## :chart_with_upwards_trend: Overview
|
||||
|
||||
|
||||
_Thanks to all our contributors!_ 😊
|
||||
|
@@ -1,6 +1,6 @@
|
||||
apiVersion: v2
|
||||
appVersion: 0.14.0
|
||||
appVersion: 0.12.0
|
||||
description: Cluster API Operator
|
||||
name: cluster-api-operator
|
||||
type: application
|
||||
version: 0.14.0
|
||||
version: 0.12.0
|
||||
|
@@ -26,7 +26,7 @@ apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
annotations:
|
||||
"helm.sh/hook": "post-install,post-upgrade"
|
||||
"helm.sh/hook": "post-install"
|
||||
"helm.sh/hook-weight": "1"
|
||||
"argocd.argoproj.io/sync-wave": "1"
|
||||
name: {{ $addonNamespace }}
|
||||
@@ -37,7 +37,7 @@ metadata:
|
||||
name: {{ $addonName }}
|
||||
namespace: {{ $addonNamespace }}
|
||||
annotations:
|
||||
"helm.sh/hook": "post-install,post-upgrade"
|
||||
"helm.sh/hook": "post-install"
|
||||
"helm.sh/hook-weight": "2"
|
||||
"argocd.argoproj.io/sync-wave": "2"
|
||||
{{- if or $addonVersion $.Values.secretName }}
|
||||
|
@@ -26,7 +26,7 @@ apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
annotations:
|
||||
"helm.sh/hook": "post-install,post-upgrade"
|
||||
"helm.sh/hook": "post-install"
|
||||
"helm.sh/hook-weight": "1"
|
||||
name: {{ $bootstrapNamespace }}
|
||||
---
|
||||
@@ -36,7 +36,7 @@ metadata:
|
||||
name: {{ $bootstrapName }}
|
||||
namespace: {{ $bootstrapNamespace }}
|
||||
annotations:
|
||||
"helm.sh/hook": "post-install,post-upgrade"
|
||||
"helm.sh/hook": "post-install"
|
||||
"helm.sh/hook-weight": "2"
|
||||
{{- if or $bootstrapVersion $.Values.configSecret.name }}
|
||||
spec:
|
||||
|
@@ -26,7 +26,7 @@ apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
annotations:
|
||||
"helm.sh/hook": "post-install,post-upgrade"
|
||||
"helm.sh/hook": "post-install"
|
||||
"helm.sh/hook-weight": "1"
|
||||
name: {{ $controlPlaneNamespace }}
|
||||
---
|
||||
@@ -36,7 +36,7 @@ metadata:
|
||||
name: {{ $controlPlaneName }}
|
||||
namespace: {{ $controlPlaneNamespace }}
|
||||
annotations:
|
||||
"helm.sh/hook": "post-install,post-upgrade"
|
||||
"helm.sh/hook": "post-install"
|
||||
"helm.sh/hook-weight": "2"
|
||||
{{- if or $controlPlaneVersion $.Values.configSecret.name }}
|
||||
spec:
|
||||
|
@@ -6,7 +6,7 @@ apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
annotations:
|
||||
"helm.sh/hook": "post-install,post-upgrade"
|
||||
"helm.sh/hook": "post-install"
|
||||
"helm.sh/hook-weight": "1"
|
||||
name: capi-system
|
||||
---
|
||||
@@ -16,7 +16,7 @@ metadata:
|
||||
name: cluster-api
|
||||
namespace: capi-system
|
||||
annotations:
|
||||
"helm.sh/hook": "post-install,post-upgrade"
|
||||
"helm.sh/hook": "post-install"
|
||||
"helm.sh/hook-weight": "2"
|
||||
{{- with .Values.configSecret }}
|
||||
spec:
|
||||
|
@@ -25,7 +25,7 @@ apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
annotations:
|
||||
"helm.sh/hook": "post-install,post-upgrade"
|
||||
"helm.sh/hook": "post-install"
|
||||
"helm.sh/hook-weight": "1"
|
||||
name: {{ $coreNamespace }}
|
||||
---
|
||||
@@ -35,7 +35,7 @@ metadata:
|
||||
name: {{ $coreName }}
|
||||
namespace: {{ $coreNamespace }}
|
||||
annotations:
|
||||
"helm.sh/hook": "post-install,post-upgrade"
|
||||
"helm.sh/hook": "post-install"
|
||||
"helm.sh/hook-weight": "2"
|
||||
"argocd.argoproj.io/sync-wave": "2"
|
||||
{{- if or $coreVersion $.Values.configSecret.name }}
|
||||
|
@@ -74,9 +74,6 @@ spec:
|
||||
{{- if .Values.insecureDiagnostics }}
|
||||
- --insecure-diagnostics={{ .Values.insecureDiagnostics }}
|
||||
{{- end }}
|
||||
{{- if .Values.watchConfigSecret }}
|
||||
- --watch-configsecret
|
||||
{{- end }}
|
||||
{{- with .Values.leaderElection }}
|
||||
- --leader-elect={{ .enabled }}
|
||||
{{- if .leaseDuration }}
|
||||
|
@@ -7,7 +7,7 @@ apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
annotations:
|
||||
"helm.sh/hook": "post-install,post-upgrade"
|
||||
"helm.sh/hook": "post-install"
|
||||
"helm.sh/hook-weight": "1"
|
||||
"argocd.argoproj.io/sync-wave": "1"
|
||||
name: capi-kubeadm-bootstrap-system
|
||||
@@ -18,7 +18,7 @@ metadata:
|
||||
name: kubeadm
|
||||
namespace: capi-kubeadm-bootstrap-system
|
||||
annotations:
|
||||
"helm.sh/hook": "post-install,post-upgrade"
|
||||
"helm.sh/hook": "post-install"
|
||||
"helm.sh/hook-weight": "2"
|
||||
"argocd.argoproj.io/sync-wave": "2"
|
||||
{{- with .Values.configSecret }}
|
||||
@@ -37,7 +37,7 @@ apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
annotations:
|
||||
"helm.sh/hook": "post-install,post-upgrade"
|
||||
"helm.sh/hook": "post-install"
|
||||
"helm.sh/hook-weight": "1"
|
||||
"argocd.argoproj.io/sync-wave": "1"
|
||||
name: capi-kubeadm-control-plane-system
|
||||
@@ -48,7 +48,7 @@ metadata:
|
||||
name: kubeadm
|
||||
namespace: capi-kubeadm-control-plane-system
|
||||
annotations:
|
||||
"helm.sh/hook": "post-install,post-upgrade"
|
||||
"helm.sh/hook": "post-install"
|
||||
"helm.sh/hook-weight": "2"
|
||||
"argocd.argoproj.io/sync-wave": "2"
|
||||
{{- with .Values.configSecret }}
|
||||
|
@@ -1,3 +1,13 @@
|
||||
{{- define "recursivePrinter" }}
|
||||
{{- range $key, $value := . }}
|
||||
{{- if kindIs "map" $value }}
|
||||
{{ $key }}:
|
||||
{{- include "recursivePrinter" $value | indent 2 }}
|
||||
{{- else }}
|
||||
{{ $key }}: {{ $value }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
# Infrastructure providers
|
||||
{{- if .Values.infrastructure }}
|
||||
{{- $infrastructures := split ";" .Values.infrastructure }}
|
||||
@@ -26,7 +36,7 @@ apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
annotations:
|
||||
"helm.sh/hook": "post-install,post-upgrade"
|
||||
"helm.sh/hook": "post-install"
|
||||
"helm.sh/hook-weight": "1"
|
||||
"argocd.argoproj.io/sync-wave": "1"
|
||||
name: {{ $infrastructureNamespace }}
|
||||
@@ -37,7 +47,7 @@ metadata:
|
||||
name: {{ $infrastructureName }}
|
||||
namespace: {{ $infrastructureNamespace }}
|
||||
annotations:
|
||||
"helm.sh/hook": "post-install,post-upgrade"
|
||||
"helm.sh/hook": "post-install"
|
||||
"helm.sh/hook-weight": "2"
|
||||
"argocd.argoproj.io/sync-wave": "2"
|
||||
{{- if or $infrastructureVersion $.Values.configSecret.name $.Values.manager $.Values.additionalDeployments }}
|
||||
@@ -67,7 +77,8 @@ spec:
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- if $.Values.additionalDeployments }}
|
||||
additionalDeployments: {{ toYaml $.Values.additionalDeployments | nindent 4 }}
|
||||
additionalDeployments:
|
||||
{{- include "recursivePrinter" $.Values.additionalDeployments | indent 2 }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
@@ -13,6 +13,7 @@ spec:
|
||||
strategy: Webhook
|
||||
webhook:
|
||||
clientConfig:
|
||||
caBundle: Cg==
|
||||
service:
|
||||
name: capi-operator-webhook-service
|
||||
namespace: '{{ .Release.Namespace }}'
|
||||
@@ -3022,6 +3023,7 @@ spec:
|
||||
strategy: Webhook
|
||||
webhook:
|
||||
clientConfig:
|
||||
caBundle: Cg==
|
||||
service:
|
||||
name: capi-operator-webhook-service
|
||||
namespace: '{{ .Release.Namespace }}'
|
||||
@@ -7616,6 +7618,7 @@ spec:
|
||||
strategy: Webhook
|
||||
webhook:
|
||||
clientConfig:
|
||||
caBundle: Cg==
|
||||
service:
|
||||
name: capi-operator-webhook-service
|
||||
namespace: '{{ .Release.Namespace }}'
|
||||
@@ -12213,6 +12216,7 @@ spec:
|
||||
strategy: Webhook
|
||||
webhook:
|
||||
clientConfig:
|
||||
caBundle: Cg==
|
||||
service:
|
||||
name: capi-operator-webhook-service
|
||||
namespace: '{{ .Release.Namespace }}'
|
||||
@@ -16807,6 +16811,7 @@ spec:
|
||||
strategy: Webhook
|
||||
webhook:
|
||||
clientConfig:
|
||||
caBundle: Cg==
|
||||
service:
|
||||
name: capi-operator-webhook-service
|
||||
namespace: '{{ .Release.Namespace }}'
|
||||
@@ -21404,6 +21409,7 @@ spec:
|
||||
strategy: Webhook
|
||||
webhook:
|
||||
clientConfig:
|
||||
caBundle: Cg==
|
||||
service:
|
||||
name: capi-operator-webhook-service
|
||||
namespace: '{{ .Release.Namespace }}'
|
||||
@@ -24413,6 +24419,7 @@ spec:
|
||||
strategy: Webhook
|
||||
webhook:
|
||||
clientConfig:
|
||||
caBundle: Cg==
|
||||
service:
|
||||
name: capi-operator-webhook-service
|
||||
namespace: '{{ .Release.Namespace }}'
|
||||
|
@@ -19,7 +19,7 @@ leaderElection:
|
||||
image:
|
||||
manager:
|
||||
repository: registry.k8s.io/capi-operator/cluster-api-operator
|
||||
tag: v0.14.0
|
||||
tag: v0.12.0
|
||||
pullPolicy: IfNotPresent
|
||||
env:
|
||||
manager: []
|
||||
@@ -27,7 +27,6 @@ healthAddr: ":8081"
|
||||
metricsBindAddr: "127.0.0.1:8080"
|
||||
diagnosticsAddress: "8443"
|
||||
insecureDiagnostics: false
|
||||
watchConfigSecret: false
|
||||
imagePullSecrets: {}
|
||||
resources:
|
||||
manager:
|
||||
|
@@ -1,66 +0,0 @@
|
||||
{{- if index .Values "rancherTurtles" "features" "rancher-webhook" "cleanup" }}
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: ServiceAccount
|
||||
metadata:
|
||||
name: pre-upgrade-job
|
||||
namespace: '{{ .Values.rancherTurtles.namespace }}'
|
||||
annotations:
|
||||
"helm.sh/hook": "post-delete, pre-upgrade"
|
||||
"helm.sh/hook-weight": "-2"
|
||||
---
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: ClusterRole
|
||||
metadata:
|
||||
name: pre-upgrade-job-delete-clusterctl-configmap
|
||||
annotations:
|
||||
"helm.sh/hook": "post-delete, pre-upgrade"
|
||||
"helm.sh/hook-weight": "-2"
|
||||
rules:
|
||||
- apiGroups: [""]
|
||||
resources:
|
||||
- configmaps
|
||||
verbs:
|
||||
- list
|
||||
- delete
|
||||
---
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: ClusterRoleBinding
|
||||
metadata:
|
||||
name: pre-upgrade-job-clusterctl-configmap-cleanup
|
||||
annotations:
|
||||
"helm.sh/hook": "post-delete, pre-upgrade"
|
||||
"helm.sh/hook-weight": "-2"
|
||||
subjects:
|
||||
- kind: ServiceAccount
|
||||
name: pre-upgrade-job
|
||||
namespace: '{{ .Values.rancherTurtles.namespace }}'
|
||||
roleRef:
|
||||
kind: ClusterRole
|
||||
name: pre-upgrade-job-delete-clusterctl-configmap
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
---
|
||||
apiVersion: batch/v1
|
||||
kind: Job
|
||||
metadata:
|
||||
name: rancher-clusterctl-configmap-cleanup
|
||||
namespace: '{{ .Values.rancherTurtles.namespace }}'
|
||||
annotations:
|
||||
"helm.sh/hook": "post-delete, pre-upgrade"
|
||||
"helm.sh/hook-weight": "-1"
|
||||
spec:
|
||||
ttlSecondsAfterFinished: 300
|
||||
template:
|
||||
spec:
|
||||
serviceAccountName: pre-upgrade-job
|
||||
containers:
|
||||
- name: rancher-clusterctl-configmap-cleanup
|
||||
image: {{ index .Values "rancherTurtles" "features" "rancher-webhook" "kubectlImage" }}
|
||||
args:
|
||||
- delete
|
||||
- configmap
|
||||
- --namespace={{ .Values.rancherTurtles.namespace }}
|
||||
- clusterctl-config
|
||||
- --ignore-not-found=true
|
||||
restartPolicy: Never
|
||||
{{- end }}
|
@@ -26,7 +26,7 @@ spec:
|
||||
containers:
|
||||
- args:
|
||||
- --leader-elect
|
||||
- --feature-gates=propagate-labels={{ index .Values "rancherTurtles" "features" "propagate-labels" "enabled"}},managementv3-cluster={{ index .Values "rancherTurtles" "features" "managementv3-cluster" "enabled"}},rancher-kube-secret-patch={{ index .Values "rancherTurtles" "features" "rancher-kubeconfigs" "label"}}
|
||||
- --feature-gates=etcd-snapshot-restore={{ index .Values "rancherTurtles" "features" "etcd-snapshot-restore" "enabled"}},propagate-labels={{ index .Values "rancherTurtles" "features" "propagate-labels" "enabled"}},managementv3-cluster={{ index .Values "rancherTurtles" "features" "managementv3-cluster" "enabled"}},rancher-kube-secret-patch={{ index .Values "rancherTurtles" "features" "rancher-kubeconfigs" "label"}}
|
||||
{{- range .Values.rancherTurtles.managerArguments }}
|
||||
- {{ . }}
|
||||
{{- end }}
|
||||
|
@@ -2,17 +2,6 @@
|
||||
{{- $namespace := index .Values "cluster-api-operator" "cluster-api" "metal3" "infrastructure" "namespace" }}
|
||||
{{- if not (lookup "v1" "Namespace" "" $namespace) }}
|
||||
---
|
||||
apiVersion: turtles-capi.cattle.io/v1alpha1
|
||||
kind: ClusterctlConfig
|
||||
metadata:
|
||||
name: clusterctl-config
|
||||
namespace: rancher-turtles-system
|
||||
spec:
|
||||
providers:
|
||||
- name: metal3
|
||||
url: "https://github.com/metal3-io/cluster-api-provider-metal3/releases/v1.7.2/infrastructure-components.yaml"
|
||||
type: InfrastructureProvider
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
|
@@ -1,5 +1,4 @@
|
||||
{{- if index .Values "rancherTurtles" "features" "embedded-capi" "disabled" }}
|
||||
{{- if index .Values "rancherTurtles" "rancherInstalled"}}
|
||||
---
|
||||
apiVersion: management.cattle.io/v3
|
||||
kind: Feature
|
||||
@@ -11,7 +10,6 @@ metadata:
|
||||
spec:
|
||||
value: false
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- if index .Values "rancherTurtles" "features" "rancher-webhook" "cleanup" }}
|
||||
---
|
||||
apiVersion: v1
|
||||
|
@@ -18,7 +18,7 @@ spec:
|
||||
- jsonPath: .spec.type
|
||||
name: Type
|
||||
type: string
|
||||
- jsonPath: .status.name
|
||||
- jsonPath: .spec.name
|
||||
name: ProviderName
|
||||
type: string
|
||||
- jsonPath: .status.installedVersion
|
||||
@@ -2979,7 +2979,15 @@ spec:
|
||||
type: string
|
||||
type:
|
||||
description: Type is the type of the provider to enable
|
||||
example: InfrastructureProvider
|
||||
enum:
|
||||
- infrastructure
|
||||
- core
|
||||
- controlPlane
|
||||
- bootstrap
|
||||
- addon
|
||||
- runtimeextension
|
||||
- ipam
|
||||
example: infrastructure
|
||||
type: string
|
||||
variables:
|
||||
additionalProperties:
|
||||
@@ -3065,10 +3073,6 @@ spec:
|
||||
description: InstalledVersion is the version of the provider that
|
||||
is installed.
|
||||
type: string
|
||||
name:
|
||||
description: Name reflects actual provider name, which will be visible
|
||||
to users in 'kubectl get capiproviders -A -o wide'
|
||||
type: string
|
||||
observedGeneration:
|
||||
description: ObservedGeneration is the latest generation observed
|
||||
by the controller.
|
||||
@@ -3098,104 +3102,6 @@ spec:
|
||||
subresources:
|
||||
status: {}
|
||||
---
|
||||
apiVersion: apiextensions.k8s.io/v1
|
||||
kind: CustomResourceDefinition
|
||||
metadata:
|
||||
annotations:
|
||||
controller-gen.kubebuilder.io/version: v0.14.0
|
||||
helm.sh/resource-policy: keep
|
||||
name: clusterctlconfigs.turtles-capi.cattle.io
|
||||
spec:
|
||||
group: turtles-capi.cattle.io
|
||||
names:
|
||||
kind: ClusterctlConfig
|
||||
listKind: ClusterctlConfigList
|
||||
plural: clusterctlconfigs
|
||||
singular: clusterctlconfig
|
||||
scope: Namespaced
|
||||
versions:
|
||||
- name: v1alpha1
|
||||
schema:
|
||||
openAPIV3Schema:
|
||||
description: ClusterctlConfig is the Schema for the CAPI Clusterctl config
|
||||
API.
|
||||
properties:
|
||||
apiVersion:
|
||||
description: |-
|
||||
APIVersion defines the versioned schema of this representation of an object.
|
||||
Servers should convert recognized schemas to the latest internal value, and
|
||||
may reject unrecognized values.
|
||||
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
|
||||
type: string
|
||||
kind:
|
||||
description: |-
|
||||
Kind is a string value representing the REST resource this object represents.
|
||||
Servers may infer this from the endpoint the client submits requests to.
|
||||
Cannot be updated.
|
||||
In CamelCase.
|
||||
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
|
||||
type: string
|
||||
metadata:
|
||||
type: object
|
||||
spec:
|
||||
description: ClusterctlConfigSpec defines the user overrides for images
|
||||
and known providers with sources
|
||||
properties:
|
||||
images:
|
||||
description: Images is a list of image overrided for specified providers
|
||||
items:
|
||||
description: Image allows to define transformations to apply to
|
||||
the image contained in the YAML manifests.
|
||||
properties:
|
||||
name:
|
||||
description: Name of the provider image override
|
||||
example: all
|
||||
type: string
|
||||
repository:
|
||||
description: Repository sets the container registry override
|
||||
to pull images from.
|
||||
example: my-registry/my-org
|
||||
type: string
|
||||
tag:
|
||||
description: Tag allows to specify a tag for the images.
|
||||
type: string
|
||||
required:
|
||||
- name
|
||||
type: object
|
||||
type: array
|
||||
providers:
|
||||
description: Provider overrides
|
||||
items:
|
||||
description: Provider allows to define providers with known URLs
|
||||
to pull the components.
|
||||
properties:
|
||||
name:
|
||||
description: Name of the provider
|
||||
type: string
|
||||
type:
|
||||
description: Type is the type of the provider
|
||||
example: InfrastructureProvider
|
||||
type: string
|
||||
url:
|
||||
description: URL of the provider components. Will be used unless
|
||||
and override is specified
|
||||
type: string
|
||||
required:
|
||||
- name
|
||||
- type
|
||||
- url
|
||||
type: object
|
||||
type: array
|
||||
type: object
|
||||
type: object
|
||||
x-kubernetes-validations:
|
||||
- message: Clusterctl Config should be named clusterctl-config.
|
||||
rule: self.metadata.name == 'clusterctl-config'
|
||||
served: true
|
||||
storage: true
|
||||
subresources:
|
||||
status: {}
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: ServiceAccount
|
||||
metadata:
|
||||
@@ -3371,8 +3277,6 @@ rules:
|
||||
resources:
|
||||
- capiproviders
|
||||
- capiproviders/status
|
||||
- clusterctlconfigs
|
||||
- clusterctlconfigs/status
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
|
@@ -3,16 +3,13 @@ apiVersion: apiextensions.k8s.io/v1
|
||||
kind: CustomResourceDefinition
|
||||
metadata:
|
||||
annotations:
|
||||
cert-manager.io/inject-ca-from: rancher-turtles-system/rancher-turtles-etcdsnapshotrestore-serving-cert
|
||||
controller-gen.kubebuilder.io/version: v0.14.0
|
||||
labels:
|
||||
turtles-capi.cattle.io: etcd-restore
|
||||
name: etcdmachinesnapshots.turtles-capi.cattle.io
|
||||
spec:
|
||||
group: turtles-capi.cattle.io
|
||||
names:
|
||||
kind: ETCDMachineSnapshot
|
||||
listKind: ETCDMachineSnapshotList
|
||||
kind: EtcdMachineSnapshot
|
||||
listKind: EtcdMachineSnapshotList
|
||||
plural: etcdmachinesnapshots
|
||||
singular: etcdmachinesnapshot
|
||||
scope: Namespaced
|
||||
@@ -20,7 +17,7 @@ spec:
|
||||
- name: v1alpha1
|
||||
schema:
|
||||
openAPIV3Schema:
|
||||
description: ETCDMachineSnapshot is the Schema for the ETCDMachineSnapshot
|
||||
description: EtcdMachineSnapshot is the Schema for the EtcdMachineSnapshot
|
||||
API.
|
||||
properties:
|
||||
apiVersion:
|
||||
@@ -41,81 +38,21 @@ spec:
|
||||
metadata:
|
||||
type: object
|
||||
spec:
|
||||
description: ETCDMachineSnapshotSpec defines the desired state of EtcdMachineSnapshot
|
||||
description: EtcdMachineSnapshotSpec defines the desired state of EtcdMachineSnapshot.
|
||||
properties:
|
||||
clusterName:
|
||||
type: string
|
||||
configRef:
|
||||
type: string
|
||||
location:
|
||||
type: string
|
||||
machineName:
|
||||
foo:
|
||||
type: string
|
||||
required:
|
||||
- clusterName
|
||||
- configRef
|
||||
- location
|
||||
- machineName
|
||||
- foo
|
||||
type: object
|
||||
x-kubernetes-validations:
|
||||
- message: ETCD snapshot location can't be empty.
|
||||
rule: size(self.location)>0
|
||||
status:
|
||||
default: {}
|
||||
description: EtcdSnapshotRestoreStatus defines observed state of EtcdSnapshotRestore
|
||||
description: EtcdMachineSnapshotStatus defines observed state of EtcdMachineSnapshot.
|
||||
properties:
|
||||
conditions:
|
||||
description: Conditions provide observations of the operational state
|
||||
of a Cluster API resource.
|
||||
items:
|
||||
description: Condition defines an observation of a Cluster API resource
|
||||
operational state.
|
||||
properties:
|
||||
lastTransitionTime:
|
||||
description: |-
|
||||
Last time the condition transitioned from one status to another.
|
||||
This should be when the underlying condition changed. If that is not known, then using the time when
|
||||
the API field changed is acceptable.
|
||||
format: date-time
|
||||
type: string
|
||||
message:
|
||||
description: |-
|
||||
A human readable message indicating details about the transition.
|
||||
This field may be empty.
|
||||
type: string
|
||||
reason:
|
||||
description: |-
|
||||
The reason for the condition's last transition in CamelCase.
|
||||
The specific API may choose whether or not this field is considered a guaranteed API.
|
||||
This field may not be empty.
|
||||
type: string
|
||||
severity:
|
||||
description: |-
|
||||
Severity provides an explicit classification of Reason code, so the users or machines can immediately
|
||||
understand the current situation and act accordingly.
|
||||
The Severity field MUST be set only when Status=False.
|
||||
type: string
|
||||
status:
|
||||
description: Status of the condition, one of True, False, Unknown.
|
||||
type: string
|
||||
type:
|
||||
description: |-
|
||||
Type of condition in CamelCase or in foo.example.com/CamelCase.
|
||||
Many .condition.type values are consistent across resources like Available, but because arbitrary conditions
|
||||
can be useful (see .node.status.conditions), the ability to deconflict is important.
|
||||
type: string
|
||||
required:
|
||||
- lastTransitionTime
|
||||
- status
|
||||
- type
|
||||
type: object
|
||||
type: array
|
||||
manual:
|
||||
type: boolean
|
||||
phase:
|
||||
description: ETCDSnapshotPhase is a string representation of the phase
|
||||
of the etcd snapshot
|
||||
bar:
|
||||
type: string
|
||||
required:
|
||||
- bar
|
||||
type: object
|
||||
type: object
|
||||
served: true
|
||||
@@ -127,16 +64,13 @@ apiVersion: apiextensions.k8s.io/v1
|
||||
kind: CustomResourceDefinition
|
||||
metadata:
|
||||
annotations:
|
||||
cert-manager.io/inject-ca-from: rancher-turtles-system/rancher-turtles-etcdsnapshotrestore-serving-cert
|
||||
controller-gen.kubebuilder.io/version: v0.14.0
|
||||
labels:
|
||||
turtles-capi.cattle.io: etcd-restore
|
||||
name: etcdsnapshotrestores.turtles-capi.cattle.io
|
||||
spec:
|
||||
group: turtles-capi.cattle.io
|
||||
names:
|
||||
kind: ETCDSnapshotRestore
|
||||
listKind: ETCDSnapshotRestoreList
|
||||
kind: EtcdSnapshotRestore
|
||||
listKind: EtcdSnapshotRestoreList
|
||||
plural: etcdsnapshotrestores
|
||||
singular: etcdsnapshotrestore
|
||||
scope: Namespaced
|
||||
@@ -144,7 +78,7 @@ spec:
|
||||
- name: v1alpha1
|
||||
schema:
|
||||
openAPIV3Schema:
|
||||
description: ETCDSnapshotRestore is the schema for the ETCDSnapshotRestore
|
||||
description: EtcdSnapshotRestore is the schema for the EtcdSnapshotRestore
|
||||
API.
|
||||
properties:
|
||||
apiVersion:
|
||||
@@ -165,673 +99,25 @@ spec:
|
||||
metadata:
|
||||
type: object
|
||||
spec:
|
||||
description: ETCDSnapshotRestoreSpec defines the desired state of EtcdSnapshotRestore.
|
||||
description: EtcdSnapshotRestoreSpec defines the desired state of EtcdSnapshotRestore.
|
||||
properties:
|
||||
clusterName:
|
||||
type: string
|
||||
etcdMachineSnapshotName:
|
||||
foo:
|
||||
type: string
|
||||
required:
|
||||
- clusterName
|
||||
- etcdMachineSnapshotName
|
||||
- foo
|
||||
type: object
|
||||
x-kubernetes-validations:
|
||||
- message: Cluster Name can't be empty.
|
||||
rule: size(self.clusterName)>0
|
||||
- message: ETCD machine snapshot name can't be empty.
|
||||
rule: size(self.etcdMachineSnapshotName)>0
|
||||
status:
|
||||
default: {}
|
||||
description: ETCDSnapshotRestoreStatus defines observed state of EtcdSnapshotRestore.
|
||||
description: EtcdSnapshotRestoreStatus defines observed state of EtcdSnapshotRestore.
|
||||
properties:
|
||||
conditions:
|
||||
description: Conditions provide observations of the operational state
|
||||
of a Cluster API resource.
|
||||
items:
|
||||
description: Condition defines an observation of a Cluster API resource
|
||||
operational state.
|
||||
properties:
|
||||
lastTransitionTime:
|
||||
description: |-
|
||||
Last time the condition transitioned from one status to another.
|
||||
This should be when the underlying condition changed. If that is not known, then using the time when
|
||||
the API field changed is acceptable.
|
||||
format: date-time
|
||||
type: string
|
||||
message:
|
||||
description: |-
|
||||
A human readable message indicating details about the transition.
|
||||
This field may be empty.
|
||||
type: string
|
||||
reason:
|
||||
description: |-
|
||||
The reason for the condition's last transition in CamelCase.
|
||||
The specific API may choose whether or not this field is considered a guaranteed API.
|
||||
This field may not be empty.
|
||||
type: string
|
||||
severity:
|
||||
description: |-
|
||||
Severity provides an explicit classification of Reason code, so the users or machines can immediately
|
||||
understand the current situation and act accordingly.
|
||||
The Severity field MUST be set only when Status=False.
|
||||
type: string
|
||||
status:
|
||||
description: Status of the condition, one of True, False, Unknown.
|
||||
type: string
|
||||
type:
|
||||
description: |-
|
||||
Type of condition in CamelCase or in foo.example.com/CamelCase.
|
||||
Many .condition.type values are consistent across resources like Available, but because arbitrary conditions
|
||||
can be useful (see .node.status.conditions), the ability to deconflict is important.
|
||||
type: string
|
||||
required:
|
||||
- lastTransitionTime
|
||||
- status
|
||||
- type
|
||||
type: object
|
||||
type: array
|
||||
phase:
|
||||
default: Pending
|
||||
description: ETCDSnapshotPhase is a string representation of the phase
|
||||
of the etcd snapshot
|
||||
bar:
|
||||
type: string
|
||||
type: object
|
||||
type: object
|
||||
served: true
|
||||
storage: true
|
||||
subresources:
|
||||
status: {}
|
||||
---
|
||||
apiVersion: apiextensions.k8s.io/v1
|
||||
kind: CustomResourceDefinition
|
||||
metadata:
|
||||
annotations:
|
||||
cert-manager.io/inject-ca-from: rancher-turtles-system/rancher-turtles-etcdsnapshotrestore-serving-cert
|
||||
controller-gen.kubebuilder.io/version: v0.14.0
|
||||
labels:
|
||||
turtles-capi.cattle.io: etcd-restore
|
||||
name: rke2etcdmachinesnapshotconfigs.turtles-capi.cattle.io
|
||||
spec:
|
||||
group: turtles-capi.cattle.io
|
||||
names:
|
||||
kind: RKE2EtcdMachineSnapshotConfig
|
||||
listKind: RKE2EtcdMachineSnapshotConfigList
|
||||
plural: rke2etcdmachinesnapshotconfigs
|
||||
singular: rke2etcdmachinesnapshotconfig
|
||||
scope: Namespaced
|
||||
versions:
|
||||
- name: v1alpha1
|
||||
schema:
|
||||
openAPIV3Schema:
|
||||
description: RKE2EtcdMachineSnapshotConfig is the config for the RKE2EtcdMachineSnapshotConfig
|
||||
API
|
||||
properties:
|
||||
apiVersion:
|
||||
description: |-
|
||||
APIVersion defines the versioned schema of this representation of an object.
|
||||
Servers should convert recognized schemas to the latest internal value, and
|
||||
may reject unrecognized values.
|
||||
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
|
||||
type: string
|
||||
kind:
|
||||
description: |-
|
||||
Kind is a string value representing the REST resource this object represents.
|
||||
Servers may infer this from the endpoint the client submits requests to.
|
||||
Cannot be updated.
|
||||
In CamelCase.
|
||||
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
|
||||
type: string
|
||||
metadata:
|
||||
type: object
|
||||
spec:
|
||||
description: RKE2EtcdMachineSnapshotConfigSpec defines the desired state
|
||||
of RKE2EtcdMachineSnapshotConfig
|
||||
properties:
|
||||
local:
|
||||
properties:
|
||||
dataDir:
|
||||
type: string
|
||||
required:
|
||||
- dataDir
|
||||
type: object
|
||||
s3:
|
||||
properties:
|
||||
bucket:
|
||||
type: string
|
||||
endpoint:
|
||||
type: string
|
||||
endpointCAsecret:
|
||||
type: string
|
||||
folder:
|
||||
type: string
|
||||
insecure:
|
||||
type: boolean
|
||||
location:
|
||||
type: string
|
||||
region:
|
||||
type: string
|
||||
s3CredentialSecret:
|
||||
type: string
|
||||
skipSSLVerify:
|
||||
type: boolean
|
||||
type: object
|
||||
required:
|
||||
- local
|
||||
- s3
|
||||
- bar
|
||||
type: object
|
||||
type: object
|
||||
served: true
|
||||
storage: true
|
||||
subresources:
|
||||
status: {}
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: ServiceAccount
|
||||
metadata:
|
||||
labels:
|
||||
app.kubernetes.io/component: rbac
|
||||
app.kubernetes.io/created-by: rancher-turtles
|
||||
app.kubernetes.io/instance: controller-manager-sa
|
||||
app.kubernetes.io/managed-by: kustomize
|
||||
app.kubernetes.io/name: serviceaccount
|
||||
app.kubernetes.io/part-of: rancher-turtles
|
||||
turtles-capi.cattle.io: etcd-restore
|
||||
name: rancher-turtles-etcdsnapshotrestore-manager
|
||||
namespace: rancher-turtles-system
|
||||
---
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: Role
|
||||
metadata:
|
||||
labels:
|
||||
app.kubernetes.io/component: rbac
|
||||
app.kubernetes.io/created-by: rancher-turtles
|
||||
app.kubernetes.io/instance: leader-election-role
|
||||
app.kubernetes.io/managed-by: kustomize
|
||||
app.kubernetes.io/name: role
|
||||
app.kubernetes.io/part-of: rancher-turtles
|
||||
turtles-capi.cattle.io: etcd-restore
|
||||
name: rancher-turtles-etcdsnapshotrestore-leader-election-role
|
||||
namespace: rancher-turtles-system
|
||||
rules:
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- configmaps
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- watch
|
||||
- create
|
||||
- update
|
||||
- patch
|
||||
- delete
|
||||
- apiGroups:
|
||||
- coordination.k8s.io
|
||||
resources:
|
||||
- leases
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- watch
|
||||
- create
|
||||
- update
|
||||
- patch
|
||||
- delete
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- events
|
||||
verbs:
|
||||
- create
|
||||
- patch
|
||||
---
|
||||
aggregationRule:
|
||||
clusterRoleSelectors:
|
||||
- matchLabels:
|
||||
rancher-turtles-exp/aggregate-to-manager: "true"
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: ClusterRole
|
||||
metadata:
|
||||
labels:
|
||||
turtles-capi.cattle.io: etcd-restore
|
||||
name: rancher-turtles-etcdsnapshotrestore-aggregated-manager-role
|
||||
rules: []
|
||||
---
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: ClusterRole
|
||||
metadata:
|
||||
labels:
|
||||
rancher-turtles-exp/aggregate-to-manager: "true"
|
||||
rancher-turtles/aggregate-to-manager: "true"
|
||||
turtles-capi.cattle.io: etcd-restore
|
||||
name: rancher-turtles-etcdsnapshotrestore-manager-role
|
||||
rules:
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- configmaps
|
||||
- events
|
||||
- secrets
|
||||
- serviceaccounts
|
||||
verbs:
|
||||
- create
|
||||
- delete
|
||||
- get
|
||||
- list
|
||||
- patch
|
||||
- update
|
||||
- watch
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- serviceaccounts/token
|
||||
verbs:
|
||||
- create
|
||||
- apiGroups:
|
||||
- authorization.k8s.io
|
||||
resources:
|
||||
- subjectaccessreviews
|
||||
verbs:
|
||||
- create
|
||||
- get
|
||||
- apiGroups:
|
||||
- bootstrap.cluster.x-k8s.io
|
||||
resources:
|
||||
- rke2configs
|
||||
- rke2configs/finalizers
|
||||
- rke2configs/status
|
||||
verbs:
|
||||
- create
|
||||
- delete
|
||||
- get
|
||||
- list
|
||||
- patch
|
||||
- update
|
||||
- watch
|
||||
- apiGroups:
|
||||
- cluster.x-k8s.io
|
||||
resources:
|
||||
- clusters
|
||||
verbs:
|
||||
- create
|
||||
- delete
|
||||
- get
|
||||
- list
|
||||
- patch
|
||||
- update
|
||||
- watch
|
||||
- apiGroups:
|
||||
- cluster.x-k8s.io
|
||||
resources:
|
||||
- clusters/status
|
||||
verbs:
|
||||
- create
|
||||
- delete
|
||||
- get
|
||||
- list
|
||||
- patch
|
||||
- update
|
||||
- watch
|
||||
- apiGroups:
|
||||
- cluster.x-k8s.io
|
||||
resources:
|
||||
- machines
|
||||
verbs:
|
||||
- create
|
||||
- delete
|
||||
- get
|
||||
- list
|
||||
- patch
|
||||
- update
|
||||
- watch
|
||||
- apiGroups:
|
||||
- management.cattle.io
|
||||
resources:
|
||||
- '*'
|
||||
verbs:
|
||||
- create
|
||||
- delete
|
||||
- get
|
||||
- list
|
||||
- patch
|
||||
- update
|
||||
- watch
|
||||
- apiGroups:
|
||||
- rbac.authorization.k8s.io
|
||||
resources:
|
||||
- rolebindings
|
||||
- roles
|
||||
verbs:
|
||||
- create
|
||||
- delete
|
||||
- get
|
||||
- list
|
||||
- patch
|
||||
- update
|
||||
- watch
|
||||
- apiGroups:
|
||||
- turtles-capi.cattle.io
|
||||
resources:
|
||||
- etcdmachinesnapshots
|
||||
verbs:
|
||||
- create
|
||||
- delete
|
||||
- get
|
||||
- list
|
||||
- patch
|
||||
- update
|
||||
- watch
|
||||
- apiGroups:
|
||||
- turtles-capi.cattle.io
|
||||
resources:
|
||||
- etcdmachinesnapshots/finalizers
|
||||
verbs:
|
||||
- update
|
||||
- apiGroups:
|
||||
- turtles-capi.cattle.io
|
||||
resources:
|
||||
- etcdmachinesnapshots/status
|
||||
verbs:
|
||||
- get
|
||||
- patch
|
||||
- update
|
||||
- apiGroups:
|
||||
- turtles-capi.cattle.io
|
||||
resources:
|
||||
- etcdsnapshotrestores
|
||||
verbs:
|
||||
- create
|
||||
- delete
|
||||
- get
|
||||
- list
|
||||
- patch
|
||||
- update
|
||||
- watch
|
||||
- apiGroups:
|
||||
- turtles-capi.cattle.io
|
||||
resources:
|
||||
- etcdsnapshotrestores/finalizers
|
||||
verbs:
|
||||
- update
|
||||
- apiGroups:
|
||||
- turtles-capi.cattle.io
|
||||
resources:
|
||||
- etcdsnapshotrestores/status
|
||||
verbs:
|
||||
- get
|
||||
- patch
|
||||
- update
|
||||
- apiGroups:
|
||||
- turtles-capi.cattle.io
|
||||
resources:
|
||||
- rke2etcdmachinesnapshotconfigs
|
||||
verbs:
|
||||
- create
|
||||
- delete
|
||||
- get
|
||||
- list
|
||||
- patch
|
||||
- update
|
||||
- watch
|
||||
- apiGroups:
|
||||
- turtles-capi.cattle.io
|
||||
resources:
|
||||
- rke2etcdmachinesnapshotconfigs/finalizers
|
||||
verbs:
|
||||
- update
|
||||
- apiGroups:
|
||||
- turtles-capi.cattle.io
|
||||
resources:
|
||||
- rke2etcdmachinesnapshotconfigs/status
|
||||
verbs:
|
||||
- get
|
||||
- patch
|
||||
- update
|
||||
---
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: RoleBinding
|
||||
metadata:
|
||||
labels:
|
||||
app.kubernetes.io/component: rbac
|
||||
app.kubernetes.io/created-by: rancher-turtles
|
||||
app.kubernetes.io/instance: leader-election-rolebinding
|
||||
app.kubernetes.io/managed-by: kustomize
|
||||
app.kubernetes.io/name: rolebinding
|
||||
app.kubernetes.io/part-of: rancher-turtles
|
||||
turtles-capi.cattle.io: etcd-restore
|
||||
name: rancher-turtles-etcdsnapshotrestore-leader-election-rolebinding
|
||||
namespace: rancher-turtles-system
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: Role
|
||||
name: rancher-turtles-etcdsnapshotrestore-leader-election-role
|
||||
subjects:
|
||||
- kind: ServiceAccount
|
||||
name: rancher-turtles-etcdsnapshotrestore-manager
|
||||
namespace: rancher-turtles-system
|
||||
---
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: ClusterRoleBinding
|
||||
metadata:
|
||||
labels:
|
||||
app.kubernetes.io/component: rbac
|
||||
app.kubernetes.io/created-by: rancher-turtles
|
||||
app.kubernetes.io/instance: manager-rolebinding
|
||||
app.kubernetes.io/managed-by: kustomize
|
||||
app.kubernetes.io/name: clusterrolebinding
|
||||
app.kubernetes.io/part-of: rancher-turtles
|
||||
turtles-capi.cattle.io: etcd-restore
|
||||
name: rancher-turtles-etcdsnapshotrestore-manager-rolebinding
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: ClusterRole
|
||||
name: rancher-turtles-etcdsnapshotrestore-aggregated-manager-role
|
||||
subjects:
|
||||
- kind: ServiceAccount
|
||||
name: rancher-turtles-etcdsnapshotrestore-manager
|
||||
namespace: rancher-turtles-system
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
labels:
|
||||
turtles-capi.cattle.io: etcd-restore
|
||||
name: rancher-turtles-etcdsnapshotrestore-webhook-service
|
||||
namespace: rancher-turtles-system
|
||||
spec:
|
||||
ports:
|
||||
- port: 443
|
||||
targetPort: webhook-server
|
||||
selector:
|
||||
turtles-capi.cattle.io: etcd-restore
|
||||
---
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
labels:
|
||||
control-plane: controller-manager
|
||||
turtles-capi.cattle.io: etcd-restore
|
||||
name: rancher-turtles-etcdsnapshotrestore-controller-manager
|
||||
namespace: rancher-turtles-system
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
matchLabels:
|
||||
control-plane: controller-manager
|
||||
turtles-capi.cattle.io: etcd-restore
|
||||
template:
|
||||
metadata:
|
||||
annotations:
|
||||
kubectl.kubernetes.io/default-container: manager
|
||||
labels:
|
||||
control-plane: controller-manager
|
||||
turtles-capi.cattle.io: etcd-restore
|
||||
spec:
|
||||
containers:
|
||||
- args:
|
||||
- --leader-elect
|
||||
command:
|
||||
- /manager
|
||||
env:
|
||||
- name: POD_NAMESPACE
|
||||
valueFrom:
|
||||
fieldRef:
|
||||
fieldPath: metadata.namespace
|
||||
- name: POD_NAME
|
||||
valueFrom:
|
||||
fieldRef:
|
||||
fieldPath: metadata.name
|
||||
- name: POD_UID
|
||||
valueFrom:
|
||||
fieldRef:
|
||||
fieldPath: metadata.uid
|
||||
image: ghcr.io/rancher/turtles-etcd-snapshot-restore:dev
|
||||
imagePullPolicy: IfNotPresent
|
||||
livenessProbe:
|
||||
httpGet:
|
||||
path: /healthz
|
||||
port: 9440
|
||||
initialDelaySeconds: 15
|
||||
periodSeconds: 20
|
||||
name: manager
|
||||
ports:
|
||||
- containerPort: 9443
|
||||
name: webhook-server
|
||||
protocol: TCP
|
||||
readinessProbe:
|
||||
httpGet:
|
||||
path: /readyz
|
||||
port: 9440
|
||||
initialDelaySeconds: 5
|
||||
periodSeconds: 10
|
||||
resources:
|
||||
limits:
|
||||
cpu: 500m
|
||||
memory: 128Mi
|
||||
requests:
|
||||
cpu: 10m
|
||||
memory: 64Mi
|
||||
volumeMounts:
|
||||
- mountPath: /tmp/k8s-webhook-server/serving-certs
|
||||
name: cert
|
||||
readOnly: true
|
||||
serviceAccountName: rancher-turtles-etcdsnapshotrestore-manager
|
||||
terminationGracePeriodSeconds: 10
|
||||
tolerations:
|
||||
- effect: NoSchedule
|
||||
key: node-role.kubernetes.io/master
|
||||
- effect: NoSchedule
|
||||
key: node-role.kubernetes.io/control-plane
|
||||
volumes:
|
||||
- name: cert
|
||||
secret:
|
||||
secretName: rancher-turtles-etcdsnapshotrestore-webhook-service-cert
|
||||
---
|
||||
apiVersion: cert-manager.io/v1
|
||||
kind: Certificate
|
||||
metadata:
|
||||
labels:
|
||||
turtles-capi.cattle.io: etcd-restore
|
||||
name: rancher-turtles-etcdsnapshotrestore-serving-cert
|
||||
namespace: rancher-turtles-system
|
||||
spec:
|
||||
dnsNames:
|
||||
- rancher-turtles-etcdsnapshotrestore-webhook-service.rancher-turtles-system.svc
|
||||
- rancher-turtles-etcdsnapshotrestore-webhook-service.rancher-turtles-system.svc.cluster.local
|
||||
issuerRef:
|
||||
kind: Issuer
|
||||
name: rancher-turtles-etcdsnapshotrestore-selfsigned-issuer
|
||||
secretName: rancher-turtles-etcdsnapshotrestore-webhook-service-cert
|
||||
---
|
||||
apiVersion: cert-manager.io/v1
|
||||
kind: Issuer
|
||||
metadata:
|
||||
labels:
|
||||
turtles-capi.cattle.io: etcd-restore
|
||||
name: rancher-turtles-etcdsnapshotrestore-selfsigned-issuer
|
||||
namespace: rancher-turtles-system
|
||||
spec:
|
||||
selfSigned: {}
|
||||
---
|
||||
apiVersion: admissionregistration.k8s.io/v1
|
||||
kind: MutatingWebhookConfiguration
|
||||
metadata:
|
||||
annotations:
|
||||
cert-manager.io/inject-ca-from: rancher-turtles-system/rancher-turtles-etcdsnapshotrestore-serving-cert
|
||||
labels:
|
||||
turtles-capi.cattle.io: etcd-restore
|
||||
name: rancher-turtles-etcdsnapshotrestore-mutating-webhook-configuration
|
||||
webhooks:
|
||||
- admissionReviewVersions:
|
||||
- v1
|
||||
clientConfig:
|
||||
service:
|
||||
name: rancher-turtles-etcdsnapshotrestore-webhook-service
|
||||
namespace: rancher-turtles-system
|
||||
path: /mutate-bootstrap-cluster-x-k8s-io-v1beta1-rke2config
|
||||
failurePolicy: Fail
|
||||
name: systemagentrke2config.kb.io
|
||||
rules:
|
||||
- apiGroups:
|
||||
- bootstrap.cluster.x-k8s.io
|
||||
apiVersions:
|
||||
- v1beta1
|
||||
operations:
|
||||
- CREATE
|
||||
- UPDATE
|
||||
resources:
|
||||
- rke2configs
|
||||
sideEffects: None
|
||||
---
|
||||
apiVersion: admissionregistration.k8s.io/v1
|
||||
kind: ValidatingWebhookConfiguration
|
||||
metadata:
|
||||
annotations:
|
||||
cert-manager.io/inject-ca-from: rancher-turtles-system/rancher-turtles-etcdsnapshotrestore-serving-cert
|
||||
labels:
|
||||
turtles-capi.cattle.io: etcd-restore
|
||||
name: rancher-turtles-etcdsnapshotrestore-validating-webhook-configuration
|
||||
webhooks:
|
||||
- admissionReviewVersions:
|
||||
- v1
|
||||
clientConfig:
|
||||
service:
|
||||
name: rancher-turtles-etcdsnapshotrestore-webhook-service
|
||||
namespace: rancher-turtles-system
|
||||
path: /validate-turtles-capi-cattle-io-v1alpha1-etcdmachinesnapshot
|
||||
failurePolicy: Fail
|
||||
matchPolicy: Equivalent
|
||||
name: etcdmachinesnapshot.kb.io
|
||||
rules:
|
||||
- apiGroups:
|
||||
- turtles-capi.cattle.io
|
||||
apiVersions:
|
||||
- v1alpha1
|
||||
operations:
|
||||
- CREATE
|
||||
- UPDATE
|
||||
resources:
|
||||
- etcdmachinesnapshots
|
||||
sideEffects: None
|
||||
- admissionReviewVersions:
|
||||
- v1
|
||||
clientConfig:
|
||||
service:
|
||||
name: rancher-turtles-etcdsnapshotrestore-webhook-service
|
||||
namespace: rancher-turtles-system
|
||||
path: /validate-turtles-capi-cattle-io-v1alpha1-etcdsnapshotrestore
|
||||
failurePolicy: Fail
|
||||
matchPolicy: Equivalent
|
||||
name: etcdsnapshotrestore.kb.io
|
||||
rules:
|
||||
- apiGroups:
|
||||
- turtles-capi.cattle.io
|
||||
apiVersions:
|
||||
- v1alpha1
|
||||
operations:
|
||||
- CREATE
|
||||
- UPDATE
|
||||
resources:
|
||||
- etcdsnapshotrestores
|
||||
sideEffects: None
|
||||
{{- end }}
|
||||
|
@@ -1,11 +1,10 @@
|
||||
rancherTurtles:
|
||||
image: registry.rancher.com/rancher/rancher/turtles
|
||||
imageVersion: v0.13.0
|
||||
imageVersion: v0.11.0
|
||||
imagePullPolicy: IfNotPresent
|
||||
namespace: rancher-turtles-system
|
||||
managerArguments: []
|
||||
imagePullSecrets: []
|
||||
rancherInstalled: true
|
||||
features:
|
||||
cluster-api-operator:
|
||||
cleanup: true
|
||||
@@ -31,6 +30,10 @@ cluster-api-operator:
|
||||
enabled: true
|
||||
cert-manager:
|
||||
enabled: false
|
||||
image:
|
||||
manager:
|
||||
repository: "%%IMG_REPO%%/%%IMG_PREFIX%%cluster-api-operator"
|
||||
tag: 0.12.0
|
||||
volumes:
|
||||
- name: cert
|
||||
secret:
|
||||
@@ -39,9 +42,6 @@ cluster-api-operator:
|
||||
- name: clusterctl-config
|
||||
configMap:
|
||||
name: clusterctl-config
|
||||
image:
|
||||
manager:
|
||||
repository: registry.rancher.com/rancher/cluster-api-operator
|
||||
volumeMounts:
|
||||
manager:
|
||||
- mountPath: /tmp/k8s-webhook-server/serving-certs
|
||||
@@ -57,7 +57,7 @@ cluster-api-operator:
|
||||
defaultName: capi-env-variables
|
||||
core:
|
||||
namespace: capi-system
|
||||
imageUrl: ""
|
||||
imageUrl: "%%IMG_REPO%%/%%IMG_PREFIX%%cluster-api-controller:1.7.5"
|
||||
fetchConfig:
|
||||
url: ""
|
||||
selector: ""
|
||||
@@ -66,13 +66,13 @@ cluster-api-operator:
|
||||
version: ""
|
||||
bootstrap:
|
||||
namespace: rke2-bootstrap-system
|
||||
imageUrl: "registry.rancher.com/rancher/cluster-api-provider-rke2-bootstrap:v0.8.0"
|
||||
imageUrl: "%%IMG_REPO%%/%%IMG_PREFIX%%cluster-api-provider-rke2-bootstrap:0.7.1"
|
||||
fetchConfig:
|
||||
url: ""
|
||||
selector: ""
|
||||
controlPlane:
|
||||
namespace: rke2-control-plane-system
|
||||
imageUrl: "registry.rancher.com/rancher/cluster-api-provider-rke2-controlplane:v0.8.0"
|
||||
imageUrl: "%%IMG_REPO%%/%%IMG_PREFIX%%cluster-api-provider-rke2-controlplane:0.7.1"
|
||||
fetchConfig:
|
||||
url: ""
|
||||
selector: ""
|
||||
@@ -81,10 +81,10 @@ cluster-api-operator:
|
||||
version: ""
|
||||
infrastructure:
|
||||
namespace: capm3-system
|
||||
imageUrl: "%%IMG_REPO%%/%%IMG_PREFIX%%cluster-api-provider-metal3:1.7.2"
|
||||
imageUrl: "%%IMG_REPO%%/%%IMG_PREFIX%%cluster-api-provider-metal3:1.7.1"
|
||||
fetchConfig:
|
||||
url: ""
|
||||
selector: ""
|
||||
ipam:
|
||||
namespace: capm3-system
|
||||
imageUrl: "%%IMG_REPO%%/%%IMG_PREFIX%%images/ip-address-manager:1.7.2"
|
||||
imageUrl: "%%IMG_REPO%%/%%IMG_PREFIX%%ip-address-manager:1.7.1"
|
||||
|
Reference in New Issue
Block a user