From ea0364a25649e955e27f4e75cab3f6db29bee150 Mon Sep 17 00:00:00 2001 From: Oleksandr Kosse Date: Mon, 10 Oct 2016 14:39:23 +0300 Subject: [PATCH] Added check of return value from fuel-devops When we manage the environment with a manually added node, the lack of this check leads to a fail. Change-Id: I782bb7e0f6676281207e0f4201ce6b9fd930e76e --- fuelweb_test/models/fuel_web_client.py | 35 +++++++++++++------------- 1 file changed, 18 insertions(+), 17 deletions(-) diff --git a/fuelweb_test/models/fuel_web_client.py b/fuelweb_test/models/fuel_web_client.py index c38f3de35..180ab7313 100644 --- a/fuelweb_test/models/fuel_web_client.py +++ b/fuelweb_test/models/fuel_web_client.py @@ -3236,23 +3236,24 @@ class FuelWebClient30(FuelWebClient29): node = [n for n in self.client.list_nodes() if n['id'] == node_id][0] d_node = self.get_devops_node_by_nailgun_node(node) - bonds = [n for n in d_node.network_configs - if n.aggregation is not None] - for bond in bonds: - macs = [i.mac_address.lower() for i in - d_node.interface_set.filter(label__in=bond.parents)] - parents = [{'name': iface['name']} for iface in interfaces - if iface['mac'].lower() in macs] - bond_config = { - 'mac': None, - 'mode': bond.aggregation, - 'name': bond.label, - 'slaves': parents, - 'state': None, - 'type': 'bond', - 'assigned_networks': [] - } - interfaces.append(bond_config) + if d_node: + bonds = [n for n in d_node.network_configs + if n.aggregation is not None] + for bond in bonds: + macs = [i.mac_address.lower() for i in + d_node.interface_set.filter(label__in=bond.parents)] + parents = [{'name': iface['name']} for iface in interfaces + if iface['mac'].lower() in macs] + bond_config = { + 'mac': None, + 'mode': bond.aggregation, + 'name': bond.label, + 'slaves': parents, + 'state': None, + 'type': 'bond', + 'assigned_networks': [] + } + interfaces.append(bond_config) if raw_data is not None: interfaces.extend(raw_data)