Răsfoiți Sursa

Added support for project domain id

Nuwan Goonasekera 6 ani în urmă
părinte
comite
90c34cdfc2
2 a modificat fișierele cu 11 adăugiri și 0 ștergeri
  1. 5 0
      cloudbridge/providers/openstack/provider.py
  2. 6 0
      docs/topics/setup.rst

+ 5 - 0
cloudbridge/providers/openstack/provider.py

@@ -47,6 +47,9 @@ class OpenStackCloudProvider(BaseCloudProvider):
             'os_region_name', get_env('OS_REGION_NAME'))
         self._zone_name = self._get_config_value(
             'os_zone_name', get_env('OS_ZONE_NAME'))
+        self.project_domain_id = self._get_config_value(
+            'os_project_domain_id',
+            get_env('OS_PROJECT_DOMAIN_ID'))
         self.project_domain_name = self._get_config_value(
             'os_project_domain_name',
             get_env('OS_PROJECT_DOMAIN_NAME'))
@@ -113,6 +116,7 @@ class OpenStackCloudProvider(BaseCloudProvider):
                                username=self.username,
                                password=self.password,
                                user_domain_name=self.user_domain_name,
+                               project_domain_id=self.project_domain_id,
                                project_domain_name=self.project_domain_name,
                                project_name=self.project_name)
             self._cached_keystone_session = session.Session(auth=auth)
@@ -133,6 +137,7 @@ class OpenStackCloudProvider(BaseCloudProvider):
             username=self.username,
             password=self.password,
             user_domain_name=self.user_domain_name,
+            project_domain_id=self.project_domain_id,
             project_domain_name=self.project_domain_name
         )
 

+ 6 - 0
docs/topics/setup.rst

@@ -67,6 +67,7 @@ will override environment values.
               'os_password': '<your password>',
               'os_auth_url': '<auth url>,
               'os_user_domain_name': '<user_domain_name>',
+              'os_project_domain_id': '<project_domain_id>',
               'os_project_domain_name': '<project_domain_name>',
               'os_project_name': '<project_name>')
     provider = CloudProviderFactory().create_provider(ProviderList.OPENSTACK, config)
@@ -211,6 +212,8 @@ OpenStack
 +-------------------------+--------------------------------------------------------------+
 | os_storage_url          | Storage endpoint URL, if applicable                          |
 +-------------------------+--------------------------------------------------------------+
+| os_project_domain_id    | Project domain id for authentication.                      |
++-------------------------+--------------------------------------------------------------+
 | os_project_domain_name  | Project domain name for authentication.                      |
 +-------------------------+--------------------------------------------------------------+
 | os_user_domain_name     | User domain name for authentication.                         |
@@ -328,6 +331,8 @@ OpenStack
 +------------------------+-----------+
 | OS_STORAGE_URL         |           |
 +------------------------+-----------+
+| OS_PROJECT_DOMAIN_ID   |           |
++------------------------+-----------+
 | OS_PROJECT_DOMAIN_NAME |           |
 +------------------------+-----------+
 | OS_USER_DOMAIN_NAME    |           |
@@ -376,6 +381,7 @@ OpenStack clouds).
     os_password: password
     os_auth_url: auth url
     os_user_domain_name: user domain name
+    os_project_domain_id: project domain id
     os_project_domain_name: project domain name
     os_project_name: project name