X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=rwcal%2Fplugins%2Fvala%2Frwcal_openstack%2Frift%2Frwcal%2Fopenstack%2Fopenstack_drv.py;h=a88013a5c9ae3680c08eeac621c7835173d05bad;hb=176e6d8f11f444598b58c7fff06052892c170d1f;hp=ce27e6a9e39b1cf3713fc16390252d978bd2850d;hpb=867ed1d01d7148493ff0ebc75a90ee295474f164;p=osm%2FSO.git diff --git a/rwcal/plugins/vala/rwcal_openstack/rift/rwcal/openstack/openstack_drv.py b/rwcal/plugins/vala/rwcal_openstack/rift/rwcal/openstack/openstack_drv.py index ce27e6a9..a88013a5 100644 --- a/rwcal/plugins/vala/rwcal_openstack/rift/rwcal/openstack/openstack_drv.py +++ b/rwcal/plugins/vala/rwcal_openstack/rift/rwcal/openstack/openstack_drv.py @@ -72,6 +72,18 @@ class KeystoneDriver(object): """ return self._tenant_name + def get_user_domain_name(self): + """ + Returns None as this field does not exist for v2. + """ + return None; + + def get_project_domain_name(self): + """ + Returns None as this field does not exist for v2. + """ + return None; + def _get_keystone_connection(self): """ Returns object of class python-keystoneclient class @@ -265,7 +277,7 @@ class KeystoneDriverV3(KeystoneDriver): """ Driver class for keystoneclient V3 APIs """ - def __init__(self, username, password, auth_url,tenant_name, insecure): + def __init__(self, username, password, auth_url,tenant_name, insecure, user_domain_name = None, project_domain_name = None): """ Constructor for KeystoneDriverV3 class Arguments: @@ -276,26 +288,41 @@ class KeystoneDriverV3(KeystoneDriver): Returns: None """ - self._username = username - self._password = password - self._auth_url = auth_url - self._tenant_name = tenant_name - self._insecure = insecure + self._username = username + self._password = password + self._auth_url = auth_url + self._tenant_name = tenant_name + self._insecure = insecure + self._user_domain_name = user_domain_name + self._project_domain_name = project_domain_name super(KeystoneDriverV3, self).__init__(ksclientv3.Client) def _get_keystone_credentials(self): """ Returns the dictionary of kwargs required to instantiate python-keystoneclient class """ - creds = {} - #creds['user_domain'] = self._domain_name - creds['username'] = self._username - creds['password'] = self._password - creds['auth_url'] = self._auth_url - creds['project_name'] = self._tenant_name - creds['insecure'] = self._insecure + creds = {} + creds['username'] = self._username + creds['password'] = self._password + creds['auth_url'] = self._auth_url + creds['project_name'] = self._tenant_name + creds['insecure'] = self._insecure + creds['user_domain_name'] = self._user_domain_name + creds['project_domain_name'] = self._project_domain_name return creds + def get_user_domain_name(self): + """ + Returns the domain_name of the associated OpenStack user account + """ + return self._user_domain_name; + + def get_project_domain_name(self): + """ + Returns the domain_name of the associated OpenStack project + """ + return self._project_domain_name; + def get_auth_token(self): """ Returns a valid auth_token @@ -342,6 +369,9 @@ class NovaDriver(object): creds['project_id'] = self.ks_drv.get_tenant_name() creds['auth_token'] = self.ks_drv.get_auth_token() creds['insecure'] = self.ks_drv.get_security_mode() + creds['user_domain_name'] = self.ks_drv.get_user_domain_name() + creds['project_domain_name'] = self.ks_drv.get_project_domain_name() + return creds def _get_nova_connection(self): @@ -901,7 +931,7 @@ class NovaDriverV21(NovaDriver): Constructor for NovaDriver Arguments: KeystoneDriver class object """ - super(NovaDriverV21, self).__init__(ks_drv, 'computev21', '2.1') + super(NovaDriverV21, self).__init__(ks_drv, 'compute', '2.1') class GlanceDriver(object): """ @@ -1406,7 +1436,8 @@ class NeutronDriver(object): "name" : kwargs['name'], "network_id" : kwargs['network_id'], "fixed_ips" : [ {"subnet_id": kwargs['subnet_id']}], - "binding:vnic_type" : kwargs['port_type']}} + "binding:vnic_type" : kwargs['port_type'], + "port_security_enabled" : kwargs['port_security_enabled']}} ntconn = self._get_neutron_connection() try: @@ -1641,7 +1672,7 @@ class OpenstackDriver(object): """ Driver for openstack nova, neutron, glance, keystone, swift, cinder services """ - def __init__(self, username, password, auth_url, tenant_name, mgmt_network = None, cert_validate = False): + def __init__(self, username, password, auth_url, tenant_name, mgmt_network = None, cert_validate = False, user_domain_name = None, project_domain_name = None): """ OpenstackDriver Driver constructor Arguments: @@ -1656,7 +1687,7 @@ class OpenstackDriver(object): """ insecure = not cert_validate if auth_url.find('/v3') != -1: - self.ks_drv = KeystoneDriverV3(username, password, auth_url, tenant_name, insecure) + self.ks_drv = KeystoneDriverV3(username, password, auth_url, tenant_name, insecure, user_domain_name, project_domain_name) self.glance_drv = GlanceDriverV2(self.ks_drv) self.nova_drv = NovaDriverV21(self.ks_drv) self.neutron_drv = NeutronDriverV2(self.ks_drv)