From 9058c6e48b2948e26a490aaebca4d9527214c210765ff502fb9f522e3d237fd4 Mon Sep 17 00:00:00 2001 From: Steven Hardy Date: Fri, 28 Nov 2025 16:55:14 +0200 Subject: [PATCH] rancher-turtles: Add new rancher-turtles-providers chart This aligns with the new chart for the certified providers, but we remove all those not supported as part of the Edge product and add CAPM3 --- rancher-turtles-providers-chart/Chart.yaml | 24 +++ rancher-turtles-providers-chart/README.md | 5 + rancher-turtles-providers-chart/_service | 17 ++ .../templates/addon-fleet.yaml | 117 +++++++++++++ .../templates/bootstrap-rke2.yaml | 57 ++++++ .../templates/controlplane-rke2.yaml | 57 ++++++ .../templates/infrastructure-metal3.yaml | 105 +++++++++++ .../values.schema.json | 163 ++++++++++++++++++ rancher-turtles-providers-chart/values.yaml | 121 +++++++++++++ 9 files changed, 666 insertions(+) create mode 100644 rancher-turtles-providers-chart/Chart.yaml create mode 100644 rancher-turtles-providers-chart/README.md create mode 100644 rancher-turtles-providers-chart/_service create mode 100644 rancher-turtles-providers-chart/templates/addon-fleet.yaml create mode 100644 rancher-turtles-providers-chart/templates/bootstrap-rke2.yaml create mode 100644 rancher-turtles-providers-chart/templates/controlplane-rke2.yaml create mode 100644 rancher-turtles-providers-chart/templates/infrastructure-metal3.yaml create mode 100644 rancher-turtles-providers-chart/values.schema.json create mode 100644 rancher-turtles-providers-chart/values.yaml diff --git a/rancher-turtles-providers-chart/Chart.yaml b/rancher-turtles-providers-chart/Chart.yaml new file mode 100644 index 0000000..956b790 --- /dev/null +++ b/rancher-turtles-providers-chart/Chart.yaml @@ -0,0 +1,24 @@ +#!BuildTag: %%CHART_PREFIX%%rancher-turtles-providers:%%CHART_MAJOR%%.0.1_up0.0.0 +#!BuildTag: %%CHART_PREFIX%%rancher-turtles-providers:%%CHART_MAJOR%%.0.1_up0.0.0-%RELEASE% +annotations: + catalog.cattle.io/certified: rancher + catalog.cattle.io/display-name: Rancher Turtles Providers for SUSE Edge + catalog.cattle.io/namespace: cattle-turtles-system + catalog.cattle.io/os: linux + catalog.cattle.io/permits-os: linux + catalog.cattle.io/release-name: rancher-turtles-providers + catalog.cattle.io/scope: management + catalog.cattle.io/type: cluster-tool +apiVersion: v2 +appVersion: 0.0.0 +description: This chart installs the Rancher Turtles providers for SUSE Edge. +home: https://turtles.docs.rancher.com/turtles/stable/en/overview/certified.html +icon: https://raw.githubusercontent.com/rancher/turtles/main/logos/capi.svg +keywords: +- rancher +- cluster-api +- capi +- provisioning +- provider +name: rancher-turtles-providers +version: "%%CHART_MAJOR%%.0.1+up0.0.0" diff --git a/rancher-turtles-providers-chart/README.md b/rancher-turtles-providers-chart/README.md new file mode 100644 index 0000000..7abf7d6 --- /dev/null +++ b/rancher-turtles-providers-chart/README.md @@ -0,0 +1,5 @@ +# Rancher Turtles Providers Chart + +This chart installs Rancher Turtles Certified CAPI providers using Helm. + +Checkout the [documentation](https://turtles.docs.rancher.com/turtles/stable/en/overview/certified.html) for further information. diff --git a/rancher-turtles-providers-chart/_service b/rancher-turtles-providers-chart/_service new file mode 100644 index 0000000..c0c60a7 --- /dev/null +++ b/rancher-turtles-providers-chart/_service @@ -0,0 +1,17 @@ + + + + values.yaml + IMG_PREFIX=$(rpm --macros=/root/.rpmmacros -E %{?img_prefix}) + IMG_PREFIX + IMG_REPO=$(rpm --macros=/root/.rpmmacros -E %img_repo) + IMG_REPO + + + Chart.yaml + CHART_PREFIX=$(rpm --macros=/root/.rpmmacros -E %{?chart_prefix}) + CHART_PREFIX + CHART_MAJOR=$(rpm --macros=/root/.rpmmacros -E %{?chart_major}) + CHART_MAJOR + + diff --git a/rancher-turtles-providers-chart/templates/addon-fleet.yaml b/rancher-turtles-providers-chart/templates/addon-fleet.yaml new file mode 100644 index 0000000..e2e73ea --- /dev/null +++ b/rancher-turtles-providers-chart/templates/addon-fleet.yaml @@ -0,0 +1,117 @@ +{{- if index .Values "providers" "addonFleet" "enabled" }} +--- +apiVersion: v1 +kind: Namespace +metadata: + name: {{ index .Values "providers" "addonFleet" "namespace" }} +--- +apiVersion: v1 +kind: ConfigMap +metadata: + name: fleet-addon-config + namespace: {{ index .Values "providers" "addonFleet" "namespace" }} +data: + manifests: |- + apiVersion: addons.cluster.x-k8s.io/v1alpha1 + kind: FleetAddonConfig + metadata: + name: fleet-addon-config + spec: + config: + featureGates: + configMap: + ref: + kind: ConfigMap + apiVersion: v1 + name: rancher-config + namespace: cattle-system + experimentalOciStorage: true + experimentalHelmOps: true + clusterClass: + patchResource: true + setOwnerReferences: true + cluster: + agentNamespace: cattle-fleet-system + applyClassGroup: true + patchResource: true + setOwnerReferences: true + hostNetwork: true + selector: + matchLabels: + cluster-api.cattle.io/rancher-auto-import: "true" + matchExpressions: + - key: cluster-api.cattle.io/disable-fleet-auto-import + operator: DoesNotExist + namespaceSelector: + matchLabels: + cluster-api.cattle.io/rancher-auto-import: "true" + matchExpressions: + - key: cluster-api.cattle.io/disable-fleet-auto-import + operator: DoesNotExist + --- + apiVersion: rbac.authorization.k8s.io/v1 + kind: ClusterRoleBinding + metadata: + name: cappf-controller-psa + roleRef: + apiGroup: rbac.authorization.k8s.io + kind: ClusterRole + name: fleet-controller-psa + subjects: + - kind: ServiceAccount + name: caapf-controller-manager + namespace: {{ .Values.providers.addonFleet.namespace }} +--- +apiVersion: turtles-capi.cattle.io/v1alpha1 +kind: CAPIProvider +metadata: + name: fleet + namespace: {{ index .Values "providers" "addonFleet" "namespace" }} +spec: + name: rancher-fleet + type: addon +{{- if index .Values "providers" "addonFleet" "version" }} + version: {{ index .Values "providers" "addonFleet" "version" }} +{{- end }} +{{- if index .Values "providers" "addonFleet" "enableAutomaticUpdate" }} + enableAutomaticUpdate: {{ index .Values "providers" "addonFleet" "enableAutomaticUpdate" }} +{{- end }} +{{- if index .Values "providers" "addonFleet" "features" }} + features: + machinePool: {{ index .Values "providers" "addonFleet" "features" "machinePool" }} + clusterResourceSet: {{ index .Values "providers" "addonFleet" "features" "clusterResourceSet" }} + clusterTopology: {{ index .Values "providers" "addonFleet" "features" "clusterTopology" }} +{{- end }} +{{- if index .Values "providers" "addonFleet" "variables" }} + variables: + {{- range $key, $val := .Values.providers.addonFleet.variables }} + {{ $key }}: "{{ $val }}" + {{- end }} +{{- end }} +{{- if index .Values "providers" "addonFleet" "manager" }} + manager: +{{ toYaml (index .Values "providers" "addonFleet" "manager") | nindent 4 }} +{{- end }} +{{- if or (index .Values "providers" "addonFleet" "credentials") }} + credentials: + name: {{ index .Values "providers" "addonFleet" "credentials" "name" }} + namespace: {{ index .Values "providers" "addonFleet" "credentials" "namespace" }} +{{- end }} +{{- if or (index .Values "providers" "addonFleet" "configSecret") }} + configSecret: + name: {{ index .Values "providers" "addonFleet" "configSecret" "name" }} + namespace: {{ index .Values "providers" "addonFleet" "configSecret" "namespace" }} +{{- end }} +{{- if index .Values "providers" "addonFleet" "fetchConfig" }} + fetchConfig: + {{- if index .Values "providers" "addonFleet" "fetchConfig" "url" }} + url: {{ index .Values "providers" "addonFleet" "fetchConfig" "url" }} + {{- end }} + {{- if index .Values "providers" "addonFleet" "fetchConfig" "oci" }} + oci: {{ index .Values "providers" "addonFleet" "fetchConfig" "oci" }} + {{- end }} +{{- end }} + additionalManifests: + name: fleet-addon-config + namespace: {{ index .Values "providers" "addonFleet" "namespace" }} +{{- end }} diff --git a/rancher-turtles-providers-chart/templates/bootstrap-rke2.yaml b/rancher-turtles-providers-chart/templates/bootstrap-rke2.yaml new file mode 100644 index 0000000..eaddda2 --- /dev/null +++ b/rancher-turtles-providers-chart/templates/bootstrap-rke2.yaml @@ -0,0 +1,57 @@ +{{- if index .Values "providers" "bootstrapRKE2" "enabled" }} +--- +apiVersion: v1 +kind: Namespace +metadata: + name: {{ index .Values "providers" "bootstrapRKE2" "namespace" }} +--- +apiVersion: turtles-capi.cattle.io/v1alpha1 +kind: CAPIProvider +metadata: + name: rke2-bootstrap + namespace: {{ index .Values "providers" "bootstrapRKE2" "namespace" }} +spec: + name: rke2 + type: bootstrap +{{- if index .Values "providers" "bootstrapRKE2" "version" }} + version: {{ index .Values "providers" "bootstrapRKE2" "version" }} +{{- end }} +{{- if index .Values "providers" "bootstrapRKE2" "enableAutomaticUpdate" }} + enableAutomaticUpdate: {{ index .Values "providers" "bootstrapRKE2" "enableAutomaticUpdate" }} +{{- end }} +{{- if index .Values "providers" "bootstrapRKE2" "features" }} + features: + machinePool: {{ index .Values "providers" "bootstrapRKE2" "features" "machinePool" }} + clusterResourceSet: {{ index .Values "providers" "bootstrapRKE2" "features" "clusterResourceSet" }} + clusterTopology: {{ index .Values "providers" "bootstrapRKE2" "features" "clusterTopology" }} +{{- end }} +{{- if index .Values "providers" "bootstrapRKE2" "variables" }} + variables: + {{- range $key, $val := .Values.providers.bootstrapRKE2.variables }} + {{ $key }}: "{{ $val }}" + {{- end }} +{{- end }} +{{- if index .Values "providers" "bootstrapRKE2" "manager" }} + manager: +{{ toYaml (index .Values "providers" "bootstrapRKE2" "manager") | nindent 4 }} +{{- end }} +{{- if or (index .Values "providers" "bootstrapRKE2" "credentials") }} + credentials: + name: {{ index .Values "providers" "bootstrapRKE2" "credentials" "name" }} + namespace: {{ index .Values "providers" "bootstrapRKE2" "credentials" "namespace" }} +{{- end }} +{{- if or (index .Values "providers" "bootstrapRKE2" "configSecret") }} + configSecret: + name: {{ index .Values "providers" "bootstrapRKE2" "configSecret" "name" }} + namespace: {{ index .Values "providers" "bootstrapRKE2" "configSecret" "namespace" }} +{{- end }} +{{- if index .Values "providers" "bootstrapRKE2" "fetchConfig" }} + fetchConfig: + {{- if index .Values "providers" "bootstrapRKE2" "fetchConfig" "url" }} + url: {{ index .Values "providers" "bootstrapRKE2" "fetchConfig" "url" }} + {{- end }} + {{- if index .Values "providers" "bootstrapRKE2" "fetchConfig" "oci" }} + oci: {{ index .Values "providers" "bootstrapRKE2" "fetchConfig" "oci" }} + {{- end }} +{{- end }} +{{- end }} diff --git a/rancher-turtles-providers-chart/templates/controlplane-rke2.yaml b/rancher-turtles-providers-chart/templates/controlplane-rke2.yaml new file mode 100644 index 0000000..b8a70c9 --- /dev/null +++ b/rancher-turtles-providers-chart/templates/controlplane-rke2.yaml @@ -0,0 +1,57 @@ +{{- if index .Values "providers" "controlplaneRKE2" "enabled" }} +--- +apiVersion: v1 +kind: Namespace +metadata: + name: {{ index .Values "providers" "controlplaneRKE2" "namespace" }} +--- +apiVersion: turtles-capi.cattle.io/v1alpha1 +kind: CAPIProvider +metadata: + name: rke2-control-plane + namespace: {{ index .Values "providers" "controlplaneRKE2" "namespace" }} +spec: + name: rke2 + type: controlPlane +{{- if index .Values "providers" "controlplaneRKE2" "version" }} + version: {{ index .Values "providers" "controlplaneRKE2" "version" }} +{{- end }} +{{- if index .Values "providers" "controlplaneRKE2" "enableAutomaticUpdate" }} + enableAutomaticUpdate: {{ index .Values "providers" "controlplaneRKE2" "enableAutomaticUpdate" }} +{{- end }} +{{- if index .Values "providers" "controlplaneRKE2" "features" }} + features: + machinePool: {{ index .Values "providers" "controlplaneRKE2" "features" "machinePool" }} + clusterResourceSet: {{ index .Values "providers" "controlplaneRKE2" "features" "clusterResourceSet" }} + clusterTopology: {{ index .Values "providers" "controlplaneRKE2" "features" "clusterTopology" }} +{{- end }} +{{- if index .Values "providers" "controlplaneRKE2" "variables" }} + variables: + {{- range $key, $val := .Values.providers.controlplaneRKE2.variables }} + {{ $key }}: "{{ $val }}" + {{- end }} +{{- end }} +{{- if index .Values "providers" "controlplaneRKE2" "manager" }} + manager: +{{ toYaml (index .Values "providers" "controlplaneRKE2" "manager") | nindent 4 }} +{{- end }} +{{- if or (index .Values "providers" "controlplaneRKE2" "credentials") }} + credentials: + name: {{ index .Values "providers" "controlplaneRKE2" "credentials" "name" }} + namespace: {{ index .Values "providers" "controlplaneRKE2" "credentials" "namespace" }} +{{- end }} +{{- if or (index .Values "providers" "controlplaneRKE2" "configSecret") }} + configSecret: + name: {{ index .Values "providers" "controlplaneRKE2" "configSecret" "name" }} + namespace: {{ index .Values "providers" "controlplaneRKE2" "configSecret" "namespace" }} +{{- end }} +{{- if index .Values "providers" "controlplaneRKE2" "fetchConfig" }} + fetchConfig: + {{- if index .Values "providers" "controlplaneRKE2" "fetchConfig" "url" }} + url: {{ index .Values "providers" "controlplaneRKE2" "fetchConfig" "url" }} + {{- end }} + {{- if index .Values "providers" "controlplaneRKE2" "fetchConfig" "oci" }} + oci: {{ index .Values "providers" "controlplaneRKE2" "fetchConfig" "oci" }} + {{- end }} +{{- end }} +{{- end }} \ No newline at end of file diff --git a/rancher-turtles-providers-chart/templates/infrastructure-metal3.yaml b/rancher-turtles-providers-chart/templates/infrastructure-metal3.yaml new file mode 100644 index 0000000..6c4df8c --- /dev/null +++ b/rancher-turtles-providers-chart/templates/infrastructure-metal3.yaml @@ -0,0 +1,105 @@ +{{- if index .Values "providers" "infrastructureMetal3" "enabled" }} +{{- $namespace := index .Values "providers" "infrastructureMetal3" "namespace" }} +{{- if not (lookup "v1" "Namespace" "" $namespace) }} +--- +apiVersion: v1 +kind: Namespace +metadata: + name: {{ index .Values "providers" "infrastructureMetal3" "namespace" }} +{{- end }} +--- +apiVersion: turtles-capi.cattle.io/v1alpha1 +kind: ClusterctlConfig +metadata: + name: clusterctl-config + namespace: cattle-turtles-system +spec: + providers: + - name: metal3 + url: "https://github.com/rancher-sandbox/cluster-api-provider-metal3/releases/v1.10.4/infrastructure-components.yaml" + type: InfrastructureProvider + - name: metal3ipam + url: "https://github.com/rancher-sandbox/ip-address-manager/releases/v1.10.4/ipam-components.yaml" + type: IPAMProvider + images: + control-plane-rke2: + repository: "registry.suse.com/rancher" + bootstrap-rke2: + repository: "registry.suse.com/rancher" + addon-fleet: + repository: "registry.suse.com/rancher" +--- +apiVersion: turtles-capi.cattle.io/v1alpha1 +kind: CAPIProvider +metadata: + name: metal3 + namespace: {{ index .Values "providers" "infrastructureMetal3" "namespace" }} +spec: + name: metal3 + type: infrastructure +{{- if index .Values "providers" "infrastructureMetal3" "version" }} + version: {{ index .Values "providers" "infrastructureMetal3" "version" }} +{{- end }} +{{- if index .Values "providers" "infrastructureMetal3" "enableAutomaticUpdate" }} + enableAutomaticUpdate: {{ index .Values "providers" "infrastructureMetal3" "enableAutomaticUpdate" }} +{{- end }} +{{- if or (index .Values "providers" "infrastructureMetal3" "configSecret") }} + configSecret: + name: {{ index .Values "providers" "infrastructureMetal3" "configSecret" "name" }} + namespace: {{ index .Values "providers" "infrastructureMetal3" "configSecret" "namespace" }} +{{- end }} +{{- if index .Values "providers" "infrastructureMetal3" "fetchConfig" }} + fetchConfig: + {{- if index .Values "providers" "infrastructureMetal3" "fetchConfig" "url" }} + url: {{ index .Values "providers" "infrastructureMetal3" "fetchConfig" "url" }} + {{- end }} + {{- if index .Values "providers" "infrastructureMetal3" "fetchConfig" "oci" }} + oci: {{ index .Values "providers" "infrastructureMetal3" "fetchConfig" "oci" }} + {{- end }} +{{- end }} + # Workaround for https://github.com/rancher-sandbox/cluster-api-provider-metal3/issues/1 + deployment: + containers: + - name: manager + imageUrl: "registry.suse.com/rancher/cluster-api-provider-metal3:v1.10.4" +{{- end }} + +{{- if index .Values "providers" "ipamMetal3" "enabled" }} +{{- $ipamnamespace := index .Values "providers" "ipamMetal3" "namespace" }} +{{- if not (lookup "v1" "Namespace" "" $ipamnamespace) }} +--- +apiVersion: v1 +kind: Namespace +metadata: + name: {{ index .Values "providers" "ipamMetal3" "namespace" }} +{{- end }} +--- +apiVersion: turtles-capi.cattle.io/v1alpha1 +kind: CAPIProvider +metadata: + name: metal3ipam + namespace: {{ index .Values "providers" "ipamMetal3" "namespace" }} +spec: + name: metal3ipam + type: ipam +{{- if index .Values "providers" "ipamMetal3" "version" }} + version: {{ index .Values "providers" "ipamMetal3" "version" }} +{{- end }} +{{- if index .Values "providers" "ipamMetal3" "enableAutomaticUpdate" }} + enableAutomaticUpdate: {{ index .Values "providers" "ipamMetal3" "enableAutomaticUpdate" }} +{{- end }} +{{- if or (index .Values "providers" "ipamMetal3" "configSecret") }} + configSecret: + name: {{ index .Values "providers" "ipamMetal3" "configSecret" "name" }} + namespace: {{ index .Values "providers" "ipamMetal3" "configSecret" "namespace" }} +{{- end }} +{{- if index .Values "providers" "ipamMetal3" "fetchConfig" }} + fetchConfig: + {{- if index .Values "providers" "ipamMetal3" "fetchConfig" "url" }} + url: {{ index .Values "providers" "ipamMetal3" "fetchConfig" "url" }} + {{- end }} + {{- if index .Values "providers" "ipamMetal3" "fetchConfig" "oci" }} + oci: {{ index .Values "providers" "ipamMetal3" "fetchConfig" "oci" }} + {{- end }} +{{- end }} +{{- end }} diff --git a/rancher-turtles-providers-chart/values.schema.json b/rancher-turtles-providers-chart/values.schema.json new file mode 100644 index 0000000..170f605 --- /dev/null +++ b/rancher-turtles-providers-chart/values.schema.json @@ -0,0 +1,163 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "title": "Helm Chart Values Schema", + "$defs": { + "providerSchema": { + "type": "object", + "description": "Provider configuration.", + "required": [ + "enabled", + "namespace" + ], + "properties": { + "enabled": { + "type": "boolean", + "description": "Enables the installation of this provider." + }, + "namespace": { + "type": "string", + "description": "The namespace where the provider manifests will be applied." + }, + "enableAutomaticUpdate": { + "type": "boolean", + "description": "Allows the provider to be updated automatically whenever this chart is updated." + }, + "version": { + "type": "string", + "description": "Optional provider version." + }, + "credentials": { + "type": "object", + "description": "Optional Secret reference containing Rancher credentials", + "required": [ + "name", + "namespace" + ], + "properties": { + "name": { + "type": "string", + "description": "The name of the Rancher Cloud credential." + }, + "namespace": { + "type": "string", + "description": "The namespace of the Rancher Cloud credential." + } + } + }, + "configSecret": { + "type": "object", + "description": "ConfigSecret is the object with name and namespace of the Secret providing the configuration variables for the current provider instance, like e.g. credentials.", + "required": [ + "name", + "namespace" + ], + "properties": { + "name": { + "type": "string", + "description": "The name of the Secret containing the provider configuration variables." + }, + "namespace": { + "type": "string", + "description": "The namespace of the Secret containing the provider configuration variables." + } + } + }, + "features": { + "type": "object", + "description": "Optional feature flags for this provider.", + "properties": { + "machinePool": { + "type": "boolean", + "description": "Enables CAPI MachinePool support." + }, + "clusterResourceSet": { + "type": "boolean", + "description": "Enables CAPI ClusterResourceSet support." + }, + "clusterTopology": { + "type": "boolean", + "description": "Enables CAPI ClusterClass support." + } + } + }, + "variables": { + "type": "object", + "description": "Optional environment variables exposed to the controller manager.", + "additionalProperties": { + "type": "string" + } + }, + "manager": { + "type": "object", + "description": "Optional controller manager settings.", + "properties": { + "syncPeriod": { + "type": "string", + "description": "Controller sync period duration, e.g. '5m'" + }, + "verbosity": { + "type": "number", + "description": "Verbosity set the logs verbosity. Defaults to 1.", + "minimum": 1, + "maximum": 5 + } + } + }, + "fetchConfig": { + "type": "object", + "description": "Override default artifact source via URL or OCI (specify one).", + "oneOf": [ + { + "properties": { + "url": { + "type": "string", + "description": "The URL to be used for fetching the provider components and metadata." + } + }, + "additionalProperties": false, + "required": [ + "url" + ] + }, + { + "properties": { + "oci": { + "type": "string", + "description": "OCI to be used for fetching the provider components and metadata." + } + }, + "additionalProperties": false, + "required": [ + "oci" + ] + } + ] + } + } + } + }, + "type": "object", + "properties": { + "providers": { + "type": "object", + "description": "Providers configuration.", + "properties": { + "addonFleet": { + "$ref": "#/$defs/providerSchema" + }, + "bootstrapRKE2": { + "$ref": "#/$defs/providerSchema" + }, + "controlplaneRKE2": { + "$ref": "#/$defs/providerSchema" + }, + "infrastructureMetal3": { + "$ref": "#/$defs/providerSchema" + }, + "ipamMetal3": { + "$ref": "#/$defs/providerSchema" + } + } + } + } +} diff --git a/rancher-turtles-providers-chart/values.yaml b/rancher-turtles-providers-chart/values.yaml new file mode 100644 index 0000000..6c35422 --- /dev/null +++ b/rancher-turtles-providers-chart/values.yaml @@ -0,0 +1,121 @@ +# Default values for rancher-turtles-providers. +# This is a YAML-formatted file. +# Declare variables to be passed into your templates. + +# providers: Providers configuration. +providers: + # addonFleet: Cluster API Add-on Provider for Fleet (CAAPF). + addonFleet: + # enabled: Enables the installation of this provider. + enabled: true + # namespace: The namespace where the provider manifests will be applied. + namespace: fleet-addon-system + # enableAutomaticUpdate: Allows the provider to be updated automatically whenever this chart is updated. + enableAutomaticUpdate: true + # version: Optional provider version + # version: "" + # features: Optional feature flags for this provider. + # features: + # machinePool: false + # clusterResourceSet: false + # clusterTopology: false + # variables: Optional environment variables exposed to the controller manager. + # variables: + # ENV_VAR: "value" + # credentials: Optional Secret reference containing Rancher credentials + # credentials: + # name: "" + # namespace: "" + # configSecret: ConfigSecret is the object with name and namespace of the Secret providing the configuration variables for the current provider instance, like e.g. credentials. + # configSecret: + # name: "" + # namespace: "" + # fetchConfig: Override default artifact source via URL or OCI (specify one). + # fetchConfig: + # url: "https://github.com///releases" + # # oci: "ghcr.io//:" + # manager: Optional controller manager settings. + # manager: + # syncPeriod: "5m" + # verbosity: 5 + bootstrapRKE2: + # enabled: Enables the installation of this provider. + enabled: true + # namespace: The namespace where the provider manifests will be applied. + namespace: rke2-bootstrap-system + # enableAutomaticUpdate: Allows the provider to be updated automatically whenever this chart is updated. + enableAutomaticUpdate: true + # version: Optional provider version + # version: "" + # features: Optional feature flags for this provider. + # features: + # machinePool: false + # clusterResourceSet: false + # clusterTopology: false + # variables: Optional environment variables exposed to the controller manager. + # variables: + # ENV_VAR: "value" + # credentials: Optional Secret reference containing Rancher credentials + # credentials: + # name: "" + # namespace: "" + # configSecret: ConfigSecret is the object with name and namespace of the Secret providing the configuration variables for the current provider instance, like e.g. credentials. + # configSecret: + # name: "" + # namespace: "" + # fetchConfig: Override default artifact source via URL or OCI (specify one). + # fetchConfig: + # url: "https://github.com///releases" + # # oci: "ghcr.io//:" + # manager: Optional controller manager settings. + # manager: + # syncPeriod: "5m" + # verbosity: 5 + controlplaneRKE2: + # enabled: Enables the installation of this provider. + enabled: true + # namespace: The namespace where the provider manifests will be applied. + namespace: rke2-control-plane-system + # enableAutomaticUpdate: Allows the provider to be updated automatically whenever this chart is updated. + enableAutomaticUpdate: true + # version: Optional provider version + # version: "" + # features: Optional feature flags for this provider. + # features: + # machinePool: false + # clusterResourceSet: false + # clusterTopology: false + # variables: Optional environment variables exposed to the controller manager. + # variables: + # ENV_VAR: "value" + # credentials: Optional Secret reference containing Rancher credentials + # credentials: + # name: "" + # namespace: "" + # configSecret: ConfigSecret is the object with name and namespace of the Secret providing the configuration variables for the current provider instance, like e.g. credentials. + # configSecret: + # name: "" + # namespace: "" + # fetchConfig: Override default artifact source via URL or OCI (specify one). + # fetchConfig: + # url: "https://github.com///releases" + # # oci: "ghcr.io//:" + # manager: Optional controller manager settings. + # manager: + # syncPeriod: "5m" + # verbosity: 5 + # infrastructureMetal3: Metal3 Infrastructure Provider (CAPM3). + infrastructureMetal3: + # enabled: Enables the installation of this provider. + enabled: true + # namespace: The namespace where the provider manifests will be applied. + namespace: capm3-system + # enableAutomaticUpdate: Allows the provider to be updated automatically whenever this chart is updated. + enableAutomaticUpdate: true + ipamMetal3: + # enabled: Enables the installation of this provider. + enabled: true + # namespace: The namespace where the provider manifests will be applied. + namespace: metal3-ipam-system + # enableAutomaticUpdate: Allows the provider to be updated automatically whenever this chart is updated. + enableAutomaticUpdate: true -- 2.51.1