From 67177381580fa733c10060a9554558cd8c2fac38 Mon Sep 17 00:00:00 2001 From: Aviram Bar-Haim Date: Thu, 14 Jan 2016 20:33:35 +0200 Subject: [PATCH] Fixing Mellanox IB configuration settings Change-Id: I6a44d4554f21d3744d619a9fa7393a95581ccb6c --- deployment_scripts/mellanox_settings.py | 44 +++++++++++++++---------- metadata.yaml | 2 +- 2 files changed, 27 insertions(+), 19 deletions(-) diff --git a/deployment_scripts/mellanox_settings.py b/deployment_scripts/mellanox_settings.py index c941975..62f752b 100755 --- a/deployment_scripts/mellanox_settings.py +++ b/deployment_scripts/mellanox_settings.py @@ -166,20 +166,34 @@ class MellanoxSettings(object): endpoints[vlan_name] = ( endpoints.pop('br-storage', {}) ) - for role,bridge in cls.data['network_scheme']['roles'].iteritems(): - if bridge == 'br-storage': - cls.data['network_scheme']['roles'][role] = vlan_name - else: - # Set storage rule to iSER port - cls.data['network_scheme']['roles']['storage'] = \ - mlnx['iser_ifc_name'] + else: + vlan_name = mlnx['iser_ifc_name'] - # Set iSER endpoint with br-storage parameters - endpoints[mlnx['iser_ifc_name']] = ( - endpoints.pop('br-storage', {}) - ) - interfaces[mlnx['iser_ifc_name']] = {} + # Commented until fixing bug LP #1450420 + # Meanwhile using a workaround of configuring ib0 + # and changing to its child in post deployment + #if storage_vlan: # IB child + # vlan_name = mlnx['iser_ifc_name'] = \ + # "{0}.{1}".format(mlnx['iser_ifc_name'], + # mlnx['storage_pkey']) + + # Set storage rule to iSER port + cls.data['network_scheme']['roles']['storage'] = \ + mlnx['iser_ifc_name'] + + # Set iSER endpoint with br-storage parameters + endpoints[mlnx['iser_ifc_name']] = ( + endpoints.pop('br-storage', {}) + ) + interfaces[mlnx['iser_ifc_name']] = {} + + # Set role + for role,bridge in cls.data['network_scheme']['roles'].iteritems(): + if bridge == 'br-storage': + cls.data['network_scheme']['roles'][role] = vlan_name + + # Clean if storage_vlan: \ storage_parent = "{0}.{1}".format(storage_parent, storage_vlan) transformations.remove({ @@ -330,12 +344,6 @@ def main(): sys.stderr.write(error_msg) logging.error(exc) sys.exit(1) - except Exception, exc: - error_msg = "An unknown error has occured while adding " \ - "Mellanox settings: {0}\n".format(exc) - sys.stderr.write(error_msg) - logging.exception(exc) - sys.exit(1) success_msg = "Done adding Mellanox settings\n" sys.stdout.write(success_msg) logging.info(success_msg) diff --git a/metadata.yaml b/metadata.yaml index 11774bb..83f68b5 100644 --- a/metadata.yaml +++ b/metadata.yaml @@ -5,7 +5,7 @@ name: mellanox-plugin title: Mellanox Openstack features # Plugin version -version: 2.0.10 +version: 2.0.11 # Description description: Enable features over Mellanox hardware