skip generating etherenet_mac_address when null

* Host-generator template is generating a null value like below when host
  catalogue is not having any mac value for the interface.
  ethernet_mac_address: <no value>

* added another condition to ethernet_mac_address generation logic
  so generate only if macAddresses is provided and if it has
  value for the respective interface ( oam, pxe ...)

Closes: #404
Change-Id: I2fafe5ceaa4c58855a17929c1c41d60045d1675a
This commit is contained in:
Sirajudeen 2021-08-26 20:58:35 +00:00
parent 4750ab169c
commit 8971bc4882
2 changed files with 12 additions and 4 deletions

View File

@ -18,10 +18,16 @@ metadata:
image: localhost/templater
values:
hosts:
- macAddress: 00:aa:bb:cc:dd
- macAddresses:
oam: 00:aa:bb:cc:dd
pxe: 00:aa:bb:cc:ee
name: node-1
- macAddress: 00:aa:bb:cc:ee
- macAddresses:
oam: 00:aa:bb:cc:ff
name: node-2
- macAddresses:
pxe: 00:aa:bb:cc:22
name: node-3
template: |
{{ range .hosts -}}
---
@ -30,5 +36,7 @@ template: |
metadata:
name: {{ .name }}
spec:
bootMACAddress: {{ .macAddress }}
{{- if and (.macAddresses) (.macAddresses.oam) }}
bootMACAddress: {{ .macAddresses.oam }}
{{- end }}
{{ end -}}

View File

@ -92,7 +92,7 @@ template: |
{{- range $envAll.commonNetworking.links }}
-
{{ toYaml . | indent 6 }}
{{- if $host.macAddresses }}
{{- if and ($host.macAddresses) (index $host.macAddresses .id) }}
ethernet_mac_address: {{ index $host.macAddresses .id }}
{{- end }}
{{- end }}