Ensure lowercase hostname in NodePortMap

When a node's hostnae contain uppercase characters the
RoleNetIpMap will have missing entries.

Since hostname is case insensitive, convert to lowercase
when creating the NodePortMap to ensure the lookups in
THT succeedes.

Closes-Bug: #1978362
Change-Id: I69050773472e25f49878c18a2ac4922a9aed8892
(cherry picked from commit f83c9e0cae)
This commit is contained in:
Harald Jensås 2022-06-11 01:47:39 +02:00
parent 000acea82e
commit e8ec5ecea6
2 changed files with 7 additions and 1 deletions

View File

@ -0,0 +1,6 @@
---
fixes:
- |
Fixed an issue which caused RoleNetIpMap to have missing overcloud node IP
addresses when overcloud node hostname contain uppercase characters.
See bug: `1978362 <https://bugs.launchpad.net/tripleo/+bug/1978362>`_.

View File

@ -424,7 +424,7 @@ def _unprovision_ports(result, conn, stack, instance, ironic_uuid):
def generate_node_port_map(result, net_maps, ports_by_node):
node_port_map = result['node_port_map']
for hostname, ports in ports_by_node.items():
node = node_port_map[hostname] = dict()
node = node_port_map[hostname.lower()] = dict()
for port in ports:
if not port.fixed_ips:
continue