From 033f27fe4dc4455c2f07978a273fd65faa653b67 Mon Sep 17 00:00:00 2001 From: Terry Howe Date: Wed, 19 Feb 2014 19:30:56 -0700 Subject: Add ability to prompt for passwords for user create and set * Add get_password method to the utilities * Add --password-prompt option * Call the get_password method if a prompt is requested * Various tests Change-Id: I1786ad531e2a2fbcc21b8bc86aac0ccd7985995a Closes-Bug: 1100116 --- openstackclient/identity/v2_0/user.py | 17 +++++++++++++++++ openstackclient/identity/v3/user.py | 17 +++++++++++++++++ 2 files changed, 34 insertions(+) (limited to 'openstackclient/identity') diff --git a/openstackclient/identity/v2_0/user.py b/openstackclient/identity/v2_0/user.py index 371c45a9..abcafdd0 100644 --- a/openstackclient/identity/v2_0/user.py +++ b/openstackclient/identity/v2_0/user.py @@ -42,6 +42,12 @@ class CreateUser(show.ShowOne): metavar='', help='New user password', ) + parser.add_argument( + '--password-prompt', + dest="password_prompt", + action="store_true", + help='Prompt interactively for password', + ) parser.add_argument( '--email', metavar='', @@ -80,6 +86,8 @@ class CreateUser(show.ShowOne): enabled = True if parsed_args.disable: enabled = False + if parsed_args.password_prompt: + parsed_args.password = utils.get_password(self.app.stdin) user = identity_client.users.create( parsed_args.name, @@ -224,6 +232,12 @@ class SetUser(command.Command): metavar='', help='New user password', ) + parser.add_argument( + '--password-prompt', + dest="password_prompt", + action="store_true", + help='Prompt interactively for password', + ) parser.add_argument( '--email', metavar='', @@ -251,6 +265,9 @@ class SetUser(command.Command): self.log.debug('take_action(%s)' % parsed_args) identity_client = self.app.client_manager.identity + if parsed_args.password_prompt: + parsed_args.password = utils.get_password(self.app.stdin) + if (not parsed_args.name and not parsed_args.name and not parsed_args.password diff --git a/openstackclient/identity/v3/user.py b/openstackclient/identity/v3/user.py index 54ffe561..7e710ac0 100644 --- a/openstackclient/identity/v3/user.py +++ b/openstackclient/identity/v3/user.py @@ -43,6 +43,12 @@ class CreateUser(show.ShowOne): metavar='', help='New user password', ) + parser.add_argument( + '--password-prompt', + dest="password_prompt", + action="store_true", + help='Prompt interactively for password', + ) parser.add_argument( '--email', metavar='', @@ -97,6 +103,8 @@ class CreateUser(show.ShowOne): enabled = True if parsed_args.disable: enabled = False + if parsed_args.password_prompt: + parsed_args.password = utils.get_password(self.app.stdin) user = identity_client.users.create( parsed_args.name, @@ -273,6 +281,12 @@ class SetUser(command.Command): metavar='', help='New user password', ) + parser.add_argument( + '--password-prompt', + dest="password_prompt", + action="store_true", + help='Prompt interactively for password', + ) parser.add_argument( '--email', metavar='', @@ -310,6 +324,9 @@ class SetUser(command.Command): self.log.debug('take_action(%s)' % parsed_args) identity_client = self.app.client_manager.identity + if parsed_args.password_prompt: + parsed_args.password = utils.get_password(self.app.stdin) + if (not parsed_args.name and not parsed_args.name and not parsed_args.password -- cgit v1.2.1