"""
self.__keystone = keystone_utils.keystone_client(self.__os_creds)
self.__project = keystone_utils.get_project(
- keystone=self.__keystone, project_name=self.project_settings.name)
+ keystone=self.__keystone, project_settings=self.project_settings)
if self.__project:
logger.info(
'Found project with name - ' + self.project_settings.name)
def assoc_user(self, user):
"""
The user object to associate with the project
- :param user: the OpenStack user object to associate with project
+ :param user: the OpenStack User domain object to associate with project
:return:
"""
if not self.__role:
self.__role = keystone_utils.create_role(
self.__keystone, self.project_settings.name + '-role')
- keystone_utils.assoc_user_to_project(self.__keystone, self.__role,
- user, self.__project)
+ keystone_utils.grant_user_role_to_project(self.__keystone, self.__role,
+ user, self.__project)
class ProjectSettings:
self.enabled = True
if not self.name:
- raise Exception(
+ raise ProjectSettingsError(
"The attribute name is required for ProjectSettings")
+
+
+class ProjectSettingsError(Exception):
+ """
+ Exception to be thrown when project settings attributes are incorrect
+ """