From 8da51ba73fefcc156ef6436aae124b5516c4e9f95103aac4ef5cbe312f417e4a Mon Sep 17 00:00:00 2001 From: Marco Chiappero Date: Tue, 12 Aug 2025 14:36:38 +0000 Subject: [PATCH 1/3] Allow the use of IRONIC_IP again in ironic-image Signed-off-by: Marco Chiappero --- ironic-image/scripts/ironic-common.sh | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/ironic-image/scripts/ironic-common.sh b/ironic-image/scripts/ironic-common.sh index d2c3215..f192e36 100644 --- a/ironic-image/scripts/ironic-common.sh +++ b/ironic-image/scripts/ironic-common.sh @@ -164,6 +164,11 @@ wait_for_interface_or_ip() else export IRONIC_IP="$PROVISIONING_IP" fi + elif [[ -n "${IRONIC_IP}" ]]; then + if [[ "$IRONIC_IP" =~ .*:.* ]]; then + export IRONIC_IPV6="$IRONIC_IP" + export IRONIC_IP="" + fi elif [[ -n "${PROVISIONING_INTERFACE}" ]]; then until [[ -n "$IRONIC_IPV6" ]] || [[ -n "$IRONIC_IP" ]]; do echo "Waiting for ${PROVISIONING_INTERFACE} interface to be configured..." -- 2.51.1 From 6059a859a12f5e3a75f3be57d5680070f3315d4d4af87a7b3a24755d0cebd730 Mon Sep 17 00:00:00 2001 From: Marco Chiappero Date: Tue, 12 Aug 2025 15:06:48 +0000 Subject: [PATCH 2/3] Bring IRONIC_IP back and give provisioningIP higher priority Revert the change that translated ironicIP into provisioningIP, as well as the messages on deprecation. This is to allow for the use with Metal LB in SV. Signed-off-by: Marco Chiappero --- .../charts/baremetal-operator/templates/_helpers.tpl | 8 ++++---- metal3-chart/charts/ironic/templates/_helpers.tpl | 6 +++--- metal3-chart/charts/ironic/templates/configmap.yaml | 6 ++++-- metal3-chart/templates/_helpers.tpl | 8 ++++---- 4 files changed, 15 insertions(+), 13 deletions(-) diff --git a/metal3-chart/charts/baremetal-operator/templates/_helpers.tpl b/metal3-chart/charts/baremetal-operator/templates/_helpers.tpl index 209fcc3..f5fee54 100644 --- a/metal3-chart/charts/baremetal-operator/templates/_helpers.tpl +++ b/metal3-chart/charts/baremetal-operator/templates/_helpers.tpl @@ -66,14 +66,14 @@ Create the name of the service account to use Create the URL to use for connecting to the Ironic servers (e.g. API, cache) */}} {{- define "baremetal-operator.ironicHttpHost" -}} -{{- $ironicIP := include "metal3.provisioningIP" . -}} +{{- $hostIP := include "metal3.hostIP" . -}} {{- with .Values.global }} {{- if .provisioningHostname }} {{- .provisioningHostname }} -{{- else if regexMatch ".*:.*" $ironicIP}} -{{- print "[" $ironicIP "]" }} +{{- else if regexMatch ".*:.*" $hostIP}} +{{- print "[" $hostIP "]" }} {{- else }} -{{- $ironicIP }} +{{- $hostIP }} {{- end }} {{- end }} {{- end }} diff --git a/metal3-chart/charts/ironic/templates/_helpers.tpl b/metal3-chart/charts/ironic/templates/_helpers.tpl index 4ddd909..270f57d 100644 --- a/metal3-chart/charts/ironic/templates/_helpers.tpl +++ b/metal3-chart/charts/ironic/templates/_helpers.tpl @@ -88,7 +88,7 @@ Get ironic CA volumeMounts Get the formatted "External" hostname or IP based URL */}} {{- define "ironic.externalHttpUrl" }} -{{- $host := ternary (include "metal3.provisioningIP" .) .Values.global.externalHttpHost (empty .Values.global.externalHttpHost) }} +{{- $host := ternary (include "metal3.hostIP" .) .Values.global.externalHttpHost (empty .Values.global.externalHttpHost) }} {{- if regexMatch ".*:.*" $host }} {{- $host = print "[" $host "]" }} {{- end }} @@ -107,7 +107,7 @@ Get the command to use for Liveness and Readiness probes {{- define "ironic.probeCommand" }} {{- $host := "127.0.0.1" }} {{- if eq .Values.listenOnAll false }} -{{- $host = coalesce .Values.global.ironicIP .Values.global.provisioningIP .Values.global.provisioningHostname }} +{{- $host = coalesce .Values.global.provisioningIP .Values.global.ironicIP .Values.global.provisioningHostname }} {{- if regexMatch ".*:.*" $host }} {{- $host = print "[" $host "]" }} {{- end }} @@ -126,7 +126,7 @@ dnsNames: {{- end -}} {{- if or .ironicIP .provisioningIP }} ipAddresses: - - {{ coalesce .ironicIP .provisioningIP }} + - {{ coalesce .provisioningIP .ironicIP }} {{- end }} {{- end }} {{- end }} diff --git a/metal3-chart/charts/ironic/templates/configmap.yaml b/metal3-chart/charts/ironic/templates/configmap.yaml index 05f690a..7262e58 100644 --- a/metal3-chart/charts/ironic/templates/configmap.yaml +++ b/metal3-chart/charts/ironic/templates/configmap.yaml @@ -23,8 +23,10 @@ data: {{- if .Values.global.provisioningInterface }} PROVISIONING_INTERFACE: {{ .Values.global.provisioningInterface }} {{- end }} - {{- if or .Values.global.ironicIP .Values.global.provisioningIP }} - PROVISIONING_IP: {{ include "metal3.provisioningIP" . }} + {{- if .Values.global.provisioningIP }} + PROVISIONING_IP: {{ include "metal3.hostIP" . }} + {{- else if .Values.global.ironicIP }} + IRONIC_IP: {{ include "metal3.hostIP" . }} {{- else if .Values.global.provisioningHostname }} IRONIC_URL_HOSTNAME: {{ .Values.global.provisioningHostname }} {{- end }} diff --git a/metal3-chart/templates/_helpers.tpl b/metal3-chart/templates/_helpers.tpl index caaef3d..e3014cc 100644 --- a/metal3-chart/templates/_helpers.tpl +++ b/metal3-chart/templates/_helpers.tpl @@ -64,14 +64,14 @@ Create the name of the service account to use {{/* Produce the correct IP or hostname for Ironic provisioning */}} -{{- define "metal3.provisioningIP" -}} +{{- define "metal3.hostIP" -}} {{- with .Values.global }} {{- if and .provisioningHostname (or .provisioningIP .ironicIP) }} -{{ fail "Please provide either provisioningHostname or provisioningIP (note: ironic IP is deprecated)" }} +{{ fail "Please provide either provisioningHostname or provisioningIP or ironicIP" }} {{- end }} {{- if and .provisioningIP .ironicIP }} -{{ fail "Please provide either ironicIP or provisioningIP (note: ironicIP is deprecated)" }} +{{ fail "Please provide either ironicIP or provisioningIP" }} {{- end }} -{{- coalesce .ironicIP .provisioningIP }} +{{- coalesce .provisioningIP .ironicIP }} {{- end }} {{- end }} -- 2.51.1 From a8a7b3a542f0cbdd1fb34931ea77075710742617bf329bbe603bb604cf32443f Mon Sep 17 00:00:00 2001 From: Marco Chiappero Date: Tue, 12 Aug 2025 15:13:01 +0000 Subject: [PATCH 3/3] Bump metal3-chart due to ironicIP Signed-off-by: Marco Chiappero --- ironic-image/Dockerfile | 8 ++++---- metal3-chart/Chart.yaml | 12 ++++++------ metal3-chart/charts/baremetal-operator/Chart.yaml | 2 +- metal3-chart/charts/ironic/Chart.yaml | 2 +- metal3-chart/charts/ironic/values.yaml | 2 +- metal3-chart/charts/media/values.yaml | 2 +- release-manifest-image/release_manifest.yaml | 2 +- 7 files changed, 15 insertions(+), 15 deletions(-) diff --git a/ironic-image/Dockerfile b/ironic-image/Dockerfile index 4d3f5c9..9912dfa 100644 --- a/ironic-image/Dockerfile +++ b/ironic-image/Dockerfile @@ -1,6 +1,6 @@ # SPDX-License-Identifier: Apache-2.0 -#!BuildTag: %%IMG_PREFIX%%ironic:29.0.4.0 -#!BuildTag: %%IMG_PREFIX%%ironic:29.0.4.0-%RELEASE% +#!BuildTag: %%IMG_PREFIX%%ironic:29.0.4.1 +#!BuildTag: %%IMG_PREFIX%%ironic:29.0.4.1-%RELEASE% ARG SLE_VERSION FROM registry.suse.com/bci/bci-micro:$SLE_VERSION AS micro @@ -41,8 +41,8 @@ LABEL org.opencontainers.image.description="Openstack Ironic based on the SLE Ba LABEL org.opencontainers.image.url="https://www.suse.com/products/server/" LABEL org.opencontainers.image.created="%BUILDTIME%" LABEL org.opencontainers.image.vendor="SUSE LLC" -LABEL org.opencontainers.image.version="29.0.4.0" -LABEL org.opensuse.reference="%%IMG_REPO%%/%%IMG_PREFIX%%ironic:29.0.4.0-%RELEASE%" +LABEL org.opencontainers.image.version="29.0.4.1" +LABEL org.opensuse.reference="%%IMG_REPO%%/%%IMG_PREFIX%%ironic:29.0.4.1-%RELEASE%" LABEL org.openbuildservice.disturl="%DISTURL%" LABEL com.suse.supportlevel="%%SUPPORT_LEVEL%%" LABEL com.suse.eula="SUSE Combined EULA February 2024" diff --git a/metal3-chart/Chart.yaml b/metal3-chart/Chart.yaml index fc539fd..b1bdbbe 100644 --- a/metal3-chart/Chart.yaml +++ b/metal3-chart/Chart.yaml @@ -1,16 +1,16 @@ -#!BuildTag: %%CHART_PREFIX%%metal3:%%CHART_MAJOR%%.0.11_up0.12.1 -#!BuildTag: %%CHART_PREFIX%%metal3:%%CHART_MAJOR%%.0.11_up0.12.1-%RELEASE% +#!BuildTag: %%CHART_PREFIX%%metal3:%%CHART_MAJOR%%.0.12_up0.12.2 +#!BuildTag: %%CHART_PREFIX%%metal3:%%CHART_MAJOR%%.0.12_up0.12.2-%RELEASE% apiVersion: v2 -appVersion: 0.12.1 +appVersion: 0.12.2 dependencies: - alias: metal3-baremetal-operator name: baremetal-operator repository: file://./charts/baremetal-operator - version: 0.9.3 + version: 0.9.4 - alias: metal3-ironic name: ironic repository: file://./charts/ironic - version: 0.11.1 + version: 0.11.2 - alias: metal3-mariadb condition: global.enable_mariadb name: mariadb @@ -25,4 +25,4 @@ description: A Helm chart that installs all of the dependencies needed for Metal icon: https://github.com/cncf/artwork/raw/master/projects/metal3/icon/color/metal3-icon-color.svg name: metal3 type: application -version: "%%CHART_MAJOR%%.0.11+up0.12.1" +version: "%%CHART_MAJOR%%.0.12+up0.12.2" diff --git a/metal3-chart/charts/baremetal-operator/Chart.yaml b/metal3-chart/charts/baremetal-operator/Chart.yaml index 38dbbbd..ac9cf2c 100644 --- a/metal3-chart/charts/baremetal-operator/Chart.yaml +++ b/metal3-chart/charts/baremetal-operator/Chart.yaml @@ -3,4 +3,4 @@ appVersion: 0.9.1 description: A Helm chart for baremetal-operator, used by Metal3 name: baremetal-operator type: application -version: 0.9.3 +version: 0.9.4 diff --git a/metal3-chart/charts/ironic/Chart.yaml b/metal3-chart/charts/ironic/Chart.yaml index cdfa0a5..4aaafad 100644 --- a/metal3-chart/charts/ironic/Chart.yaml +++ b/metal3-chart/charts/ironic/Chart.yaml @@ -3,4 +3,4 @@ appVersion: 29.0.4 description: A Helm chart for Ironic, used by Metal3 name: ironic type: application -version: 0.11.1 +version: 0.11.2 diff --git a/metal3-chart/charts/ironic/values.yaml b/metal3-chart/charts/ironic/values.yaml index 81ea464..3ca47ae 100644 --- a/metal3-chart/charts/ironic/values.yaml +++ b/metal3-chart/charts/ironic/values.yaml @@ -64,7 +64,7 @@ images: ironic: repository: registry.opensuse.org/isv/suse/edge/metal3/containers/images/ironic pullPolicy: IfNotPresent - tag: 29.0.4.0 + tag: 29.0.4.1 ironicIPADownloader: repository: registry.opensuse.org/isv/suse/edge/metal3/containers/images/ironic-ipa-downloader pullPolicy: IfNotPresent diff --git a/metal3-chart/charts/media/values.yaml b/metal3-chart/charts/media/values.yaml index 3192ca0..115511a 100644 --- a/metal3-chart/charts/media/values.yaml +++ b/metal3-chart/charts/media/values.yaml @@ -24,7 +24,7 @@ replicaCount: 1 image: repository: registry.opensuse.org/isv/suse/edge/metal3/containers/images/ironic pullPolicy: IfNotPresent - tag: 29.0.4.0 + tag: 29.0.4.1 imagePullSecrets: [] nameOverride: "" diff --git a/release-manifest-image/release_manifest.yaml b/release-manifest-image/release_manifest.yaml index 6ae3a82..18f99d8 100644 --- a/release-manifest-image/release_manifest.yaml +++ b/release-manifest-image/release_manifest.yaml @@ -171,7 +171,7 @@ spec: - prettyName: Metal3 releaseName: metal3 chart: '%%CHART_REPO%%/%%CHART_PREFIX%%metal3' - version: '%%CHART_MAJOR%%.0.11+up0.12.1' + version: '%%CHART_MAJOR%%.0.12+up0.12.2' - prettyName: RancherTurtles releaseName: rancher-turtles chart: '%%CHART_REPO%%/%%CHART_PREFIX%%rancher-turtles' -- 2.51.1