multiple=True,
help="remove role(s) in a project. Can be used several times: 'project,role1[,role2,...]'",
)
+@click.option(
+ "--change_password",
+ "change_password",
+ help="user's current password"
+)
+@click.option(
+ "--new_password",
+ "new_password",
+ help="user's new password to update in expiry condition"
+)
@click.pass_context
def user_update(
ctx,
remove_project,
add_project_role,
remove_project_role,
+ change_password,
+ new_password,
):
"""Update a user information
REMOVE_PROJECT: deleting mappings for project/role(s)
ADD_PROJECT_ROLE: adding mappings for project/role(s)
REMOVE_PROJECT_ROLE: removing mappings for project/role(s)
+ CHANGE_PASSWORD: user's current password to change
+ NEW_PASSWORD: user's new password to update in expiry condition
"""
logger.debug("")
user = {}
user["remove-project"] = remove_project
user["add-project-role"] = add_project_role
user["remove-project-role"] = remove_project_role
+ user["change_password"] = change_password
+ user["new_password"] = new_password
# try:
check_client_version(ctx.obj, ctx.command.name)
- ctx.obj.user.update(username, user)
+ if not user.get("change_password"):
+ ctx.obj.user.update(username, user)
+ else:
+ ctx.obj.user.update(username, user, pwd_change=True)
# except ClientException as e:
# print(str(e))
# exit(1)