def modify(self, args, config, connection): role = Role(args['name'], connection=connection) if not role.exists(): print("Error: Role does not exist: {0}".format(args['name'])) sys.exit(1) if args['json'] is not None: role = self._read(args['name'], args['json']) self.roles = [] self._properties(role, args) if len(self.roles) > 0: role.set_role_names(self.roles) print("Modify role {0}...".format(args['name'])) role.update(connection=connection)
# Create roles for config in data['roles']: name = config['role-name'] role = Role.lookup(conn, name) if role is None: print("Need to create role: {0}".format(name)) role = Role(name) role.create(conn) # Update privileges for config in data['roles']: name = config['role-name'] role = Role.unmarshal(config) print("Updating role: {0}".format(name)) role.update(conn) # Update privileges for config in data['privileges']: name = config['privilege-name'] kind = config['kind'] priv = Privilege.lookup(conn, name, kind) if priv is None: verb = "Creating" priv = Privilege.unmarshal(config) print("{0} privilege: {1}".format(verb, name)) priv.create(conn) else: verb = "Updating" priv = Privilege.unmarshal(config) print("{0} {1} privilege: {2}".format(verb, kind, name))