X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=vimconn_openstack.py;h=96d89e361ac3756e6a722f1b7daea212cd913047;hb=00bdd8b2ba28833a250cbb86170039b393251c36;hp=c5b4ce1f4679598965c16fa7c2c03fa66501ce26;hpb=2a1fc4e770c0688ac1fcb41e1c62bf36a2719d28;p=osm%2FRO.git diff --git a/vimconn_openstack.py b/vimconn_openstack.py index c5b4ce1f..96d89e36 100644 --- a/vimconn_openstack.py +++ b/vimconn_openstack.py @@ -96,6 +96,9 @@ class vimconnector(vimconn.vimconnector): if self.osc_api_version == 'v3.3': self.k_creds['project_name'] = tenant_name self.k_creds['project_id'] = tenant_id + if config.get('region_name'): + self.k_creds['region_name'] = config.get('region_name') + self.n_creds['region_name'] = config.get('region_name') self.reload_client = True self.logger = logging.getLogger('openmano.vim.openstack') @@ -562,7 +565,7 @@ class vimconnector(vimconn.vimconnector): #determine format http://docs.openstack.org/developer/glance/formats.html if "disk_format" in image_dict: disk_format=image_dict["disk_format"] - else: #autodiscover base on extention + else: #autodiscover based on extension if image_dict['location'][-6:]==".qcow2": disk_format="qcow2" elif image_dict['location'][-4:]==".vhd": @@ -653,8 +656,8 @@ class vimconnector(vimconn.vimconnector): filtered_list = [] for image in image_list: image_dict=self.glance.images.get(image.id) - if image_dict['checksum']==filter_dict.get('checksum'): - filtered_list.append(image) + if 'checksum' not in filter_dict or image_dict['checksum']==filter_dict.get('checksum'): + filtered_list.append(image_dict) return filtered_list except (ksExceptions.ClientException, nvExceptions.ClientException, gl1Exceptions.CommunicationError, ConnectionError) as e: self._format_exception(e) @@ -706,7 +709,7 @@ class vimconnector(vimconn.vimconnector): port_dict["name"]=name if net.get("mac_address"): port_dict["mac_address"]=net["mac_address"] - if "port_security" in net: + if net.get("port_security") == False: port_dict["port_security_enabled"]=net["port_security"] new_port = self.neutron.create_port({"port": port_dict }) net["mac_adress"] = new_port["port"]["mac_address"] @@ -790,7 +793,7 @@ class vimconnector(vimconn.vimconnector): #delete ports we just created for net_item in net_list_vim: if 'port-id' in net_item: - self.neutron.delete_port(net_item['port_id']) + self.neutron.delete_port(net_item['port-id']) raise vimconn.vimconnException('Timeout creating volumes for instance ' + name, http_code=vimconn.HTTP_Request_Timeout) @@ -803,7 +806,6 @@ class vimconnector(vimconn.vimconnector): block_device_mapping = block_device_mapping ) # , description=description) #print "DONE :-)", server - pool_id = None floating_ips = self.neutron.list_floatingips().get("floatingips", ()) for floating_network in external_network: @@ -880,7 +882,7 @@ class vimconnector(vimconn.vimconnector): # delete ports we just created for net_item in net_list_vim: if 'port-id' in net_item: - self.neutron.delete_port(net_item['port_id']) + self.neutron.delete_port(net_item['port-id']) self._format_exception(e) except TypeError as e: raise vimconn.vimconnException(type(e).__name__ + ": "+ str(e), http_code=vimconn.HTTP_Bad_Request)