Merge "Stop inventory constantly giving containers new IP"

This commit is contained in:
Zuul 2018-03-19 10:50:12 +00:00 committed by Gerrit Code Review
commit db13d26c04
1 changed files with 11 additions and 6 deletions

View File

@ -514,10 +514,10 @@ def network_entry(is_metal, interface,
# simplified. The container address checking that is ssh address
# is only being done to support old inventory.
if is_metal:
_network = dict()
else:
_network = {'interface': interface}
_network = dict()
if not is_metal:
_network['interface'] = interface
if bridge:
_network['bridge'] = bridge
@ -622,10 +622,15 @@ def _add_additional_networks(key, inventory, ip_q, q_name, netmask, interface,
net_type,
net_mtu
)
# update values from _network in case they have changed
if old_address in networks:
for key in _network.keys():
networks[old_address][key] = _network[key]
# This should convert found addresses based on q_name + "_address"
# and then build the network if its not found.
if not is_metal and (old_address not in networks or
networks[old_address] != _network):
if not is_metal and old_address not in networks:
network = networks[old_address] = _network
if old_address in container and container[old_address]:
network['address'] = container.pop(old_address)