From a75704b8cbdd12a2b3c05879445e0f98d60c82ec Mon Sep 17 00:00:00 2001 From: Phil Sphicas Date: Sat, 30 May 2020 20:17:57 +0000 Subject: [PATCH] fix: prevent multiple IP assignments A recent change[0] to address PEP8 issues resulted in an unintended behavior modification, in some cases resulting in MAAS allocation of multiple IP addresses to the same NIC. This reverts to the original code logic. [0] https://opendev.org/airship/drydock/commit/1755930331b438bd2adb81af7a77e58792c533b3 Change-Id: I6dccd1b60c414e3aa966085e81dc0b61244e9814 --- .../drivers/node/maasdriver/models/interface.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/python/drydock_provisioner/drivers/node/maasdriver/models/interface.py b/python/drydock_provisioner/drivers/node/maasdriver/models/interface.py index bc7baf8a..4b423793 100644 --- a/python/drydock_provisioner/drivers/node/maasdriver/models/interface.py +++ b/python/drydock_provisioner/drivers/node/maasdriver/models/interface.py @@ -273,13 +273,13 @@ class Interface(model_base.ResourceBase): link_list = [] if isinstance(refined_dict.get('links', None), list): - for link in refined_dict['links']: - if isinstance(link, dict): - link = {'resource_id': link['id'], 'mode': link['mode']} + for li in refined_dict['links']: + if isinstance(li, dict): + link = {'resource_id': li['id'], 'mode': li['mode']} - if link.get('subnet', None) is not None: - link['subnet_id'] = link['subnet']['id'] - link['ip_address'] = link.get('ip_address', None) + if li.get('subnet', None) is not None: + link['subnet_id'] = li['subnet']['id'] + link['ip_address'] = li.get('ip_address', None) link_list.append(link)