-
Language:
English
-
Language:
English
Red Hat Training
A Red Hat training course is available for Red Hat Gluster Storage
A.7. Python SDK Example: Users
getFilterHeader
def getFilterHeader(): """ Has user admin role or user role? """ return contextmanager.get('filter')
loginAsUser
def loginAsUser(userName=config.USER_NAME, domain=config.USER_DOMAIN, password=config.USER_PASSWORD, filter_=True): LOGGER.info("Login as %s" % userName) global API API.disconnect() API = ovirtsdk.api.API(url=config.OVIRT_URL, insecure=True, username=userName+'@'+domain, password=password, filter=filter_)
loginAsAdmin
def loginAsAdmin(): loginAsUser(config.OVIRT_USERNAME, config.OVIRT_DOMAIN, config.OVIRT_PASSWORD, filter_=False)
editObject
def editObject(rhsc_object, name, newName=None, description=None, append=False): """ Edit object property. Parameters: * rhsc_object - object to be edited * name - name of object * newName - new name of object * description - description to be updated * append - True if append to old description else create new """ obj = rhsc_object.get(name) old_name = obj.get_name() old_desc = obj.get_description() if newName is not None:removing the first digit from a line LOGGER.info("Updating name from '%s' to '%s'" %(name, newName)) obj.set_name(newName) obj.update() obj = rhsc_object.get(name) assert old_name != obj.get_name(), "Failed to update object name" if description is not None: LOGGER.info("Updating desc from '%s' to '%s'" %(name, description)) if old_desc is None: old_desc = "" obj.set_description(old_desc + description if append else description) obj.update() obj = rhsc_object.get(name) assert old_desc != obj.get_description(), "Failed to update object description"
hasUserPermissions
def hasUserPermissions(obj, role, user=config.USER_NAME, domain=config.USER_DOMAIN): """ Tests if user have role permssions on rhsc_object Parameters: * obj - object which we wanna tests * role - role we wanna test * user - user we wanna test * domain - domain where user belongs """ perms = obj.permissions.list() for perm in perms: role_name = API.roles.get(id=perm.get_role().get_id()).get_name() user_name = API.users.get(id=perm.get_user().get_id()).get_user_name() if user_name + '@' + domain == user and role_name == role: return True return False
hasPermissions
def hasPermissions(role): """ Get a list of permissions the user role has. :param role: (string) oVirt user role :return: (list of strings) permissions the role should have """ return getRolePermissions(role) # If bz plugin is not enabled, use this def bz(*ids): def decorator(func): return func return decorator # If tcms plugin is not enabled, use this def tcms(*ids): def decorator(func): return func return decorator
22632%2C+Console+Developer+Guide-322-09-2014+17%3A11%3A35Report a bug