Allow control over IRONIC_EXTERNAL_HTTP_URL via values.yaml
The purpose of this commit is to: - avoid providing IRONIC_EXTERNAL_HTTP_URL by default, as the Ironic startup scripts will be able to derive the value from other variables - define a new global value under the top values.yaml to generate IRONIC_EXTERNAL_HTTP_URL when actually needed - make sure that the input, which can either be a hostname or an IP address, is correctly formatted in case of an IPv6. This change also allows subsequent cleanups of the whole Configmap template for Ironic. Signed-off-by: Marco Chiappero <marco.chiappero@suse.com>
This commit is contained in:
@@ -83,3 +83,16 @@ Get ironic CA volumeMounts
|
|||||||
readOnly: true
|
readOnly: true
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Get the formatted "External" hostname or IP address
|
||||||
|
*/}}
|
||||||
|
{{- define "ironic.externalHttpHost" }}
|
||||||
|
{{- with .Values.global }}
|
||||||
|
{{- if regexMatch ".*:.*" .externalHttpHost }}
|
||||||
|
{{- print "[" .externalHttpHost "]" }}
|
||||||
|
{{- else }}
|
||||||
|
{{- .externalHttpHost }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
@@ -32,7 +32,9 @@ data:
|
|||||||
{{- else }}
|
{{- else }}
|
||||||
{{- $protocol = "http" }}
|
{{- $protocol = "http" }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
IRONIC_EXTERNAL_HTTP_URL: {{ $protocol }}://{{ $ironicCacheHost }}
|
{{- if .Values.global.externalHttpHost }}
|
||||||
|
IRONIC_EXTERNAL_HTTP_URL: {{ $protocol }}://{{ include "ironic.externalHttpHost" . }}:6385
|
||||||
|
{{- end }}
|
||||||
DEPLOY_ARCHITECTURE: {{ $deployArch }}
|
DEPLOY_ARCHITECTURE: {{ $deployArch }}
|
||||||
IRONIC_BOOT_BASE_URL: {{ $protocol }}://{{ $ironicBootHost }}
|
IRONIC_BOOT_BASE_URL: {{ $protocol }}://{{ $ironicBootHost }}
|
||||||
ENABLE_PXE_BOOT: "{{ .Values.global.enable_pxe_boot }}"
|
ENABLE_PXE_BOOT: "{{ .Values.global.enable_pxe_boot }}"
|
||||||
|
@@ -60,6 +60,9 @@ global:
|
|||||||
# IP Address assigned to network interface on provisioning network
|
# IP Address assigned to network interface on provisioning network
|
||||||
provisioningIP: ""
|
provisioningIP: ""
|
||||||
|
|
||||||
|
# Hostname or IP for accessing the Ironic API server from a non-provisioning network
|
||||||
|
externalHttpHost: ""
|
||||||
|
|
||||||
# Name for the MariaDB service
|
# Name for the MariaDB service
|
||||||
databaseServiceName: metal3-mariadb
|
databaseServiceName: metal3-mariadb
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user