def delete(ctx, role_name, org_name): try: client = ctx.obj['client'] if org_name is not None: org_href = client.get_org_by_name(org_name).get('href') else: org_href = ctx.obj['profiles'].get('org_href') org = Org(client, org_href) org.delete_role(role_name) stdout('Role \'%s\' has been successfully deleted.' % role_name, ctx) except Exception as e: stderr(e, ctx)
def delete(ctx, role_name, org_name): try: restore_session(ctx) client = ctx.obj['client'] if org_name is not None: org_href = client.get_org_by_name(org_name).get('href') else: org_href = ctx.obj['profiles'].get('org_href') org = Org(client, href=org_href) org.delete_role(role_name) stdout('Role \'%s\' has been successfully deleted.' % role_name, ctx) except Exception as e: stderr(e, ctx)
def cleanup_roles_and_users(logger=NULL_LOGGER): """Cleanup all the new roles and users created. Deletes the following - cluster_author User - cluster_author_role Role - cluster_admin User - cluster_admin_role ROle """ user_and_role_list = [(CLUSTER_AUTHOR_NAME, CLUSTER_AUTHOR_ROLE_NAME), (CLUSTER_ADMIN_NAME, CLUSTER_ADMIN_ROLE_NAME)] org = Org(CLIENT, href=TEST_ORG_HREF) for user_and_role in user_and_role_list: try: logger.debug(f"cleaning up user {user_and_role[0]} and " f"role {user_and_role[1]}") org.delete_user(user_and_role[0]) org.delete_role(user_and_role[1]) except Exception as e: logger.warning("Exception occurred when " f"cleaning up roles and users: {e}")
def test_06_delete_role_in_org(self): logged_in_org = self.client.get_org() org = Org(self.client, resource=logged_in_org) role_name = self.config['vcd']['role_name'] org.delete_role(role_name)
class Roles(VcdAnsibleModule): def __init__(self, **kwargs): super(Roles, self).__init__(**kwargs) self.org = Org(self.client, resource=self.client.get_org()) def manage_states(self): state = self.params.get('state') if state == 'present': return self.create() if state == 'absent': return self.delete() if state == 'update': return self.update() def manage_operations(self): operation = self.params.get('operation') if operation == "list_rights": return self.list_rights() if operation == "list_roles": return self.list_roles() def create(self): role_name = self.params.get('role_name') role_description = self.params.get('role_description') role_rights = self.params.get('role_rights') response = dict() response['changed'] = False try: self.org.get_role_record(role_name) except EntityNotFoundException: self.org.create_role(role_name, role_description, role_rights) response['msg'] = 'Role {} has been created.'.format(role_name) response['changed'] = True else: response['warnings'] = 'Role {} is already present.'.format( role_name) return response def update(self): role_name = self.params.get('role_name') role_description = self.params.get('role_description') role_rights = self.params.get('role_rights') response = dict() response['changed'] = False role = self.org.get_role_record(role_name) role_resource = self.org.get_role_resource(role_name) role_resource.Description = E.Description(role_description) role_rights = tuple() if role_rights is None else role_rights for role_right in tuple(role_rights): role_right_record = self.org.get_right_record(role_right) role_resource.RightReferences.append( E.RightReference(name=role_right_record.get('name'), href=role_right_record.get('href'), type=EntityType.RIGHT.value)) self.client.put_resource(role.get('href'), role_resource, EntityType.ROLE.value) response['msg'] = 'Role {} has been updated.'.format(role_name) response['changed'] = True return response def delete(self): role_name = self.params.get('role_name') response = dict() response['changed'] = False try: self.org.get_role_record(role_name) self.org.delete_role(role_name) response['msg'] = 'Role {} has been deleted.'.format(role_name) response['changed'] = True except EntityNotFoundException: response['warnings'] = 'Role {} is not present.'.format(role_name) return response def list_rights(self): response = dict() response['changed'] = False response['msg'] = self.org.list_rights_of_org() return response def list_roles(self): response = dict() response['changed'] = False response['msg'] = self.org.list_roles() return response