summaryrefslogtreecommitdiff
path: root/openstackclient/identity
diff options
context:
space:
mode:
authorJenkins <jenkins@review.openstack.org>2017-01-26 03:01:10 +0000
committerGerrit Code Review <review@openstack.org>2017-01-26 03:01:10 +0000
commit029b389cf89960babf62a0087836f58b26bd6b5b (patch)
tree70ff37639fddd7e0b756e4cdb24c27505013d4d2 /openstackclient/identity
parenta05e2762dca25e4717655b0d3e78209998d61a69 (diff)
parent4cb56269ad30d0bd59f7685040ab0585f38c3b0f (diff)
downloadpython-openstackclient-029b389cf89960babf62a0087836f58b26bd6b5b.tar.gz
Merge "Adds domain specification for SetUser"
Diffstat (limited to 'openstackclient/identity')
-rw-r--r--openstackclient/identity/v3/user.py23
1 files changed, 19 insertions, 4 deletions
diff --git a/openstackclient/identity/v3/user.py b/openstackclient/identity/v3/user.py
index 19a4c298..9c289a6d 100644
--- a/openstackclient/identity/v3/user.py
+++ b/openstackclient/identity/v3/user.py
@@ -302,6 +302,12 @@ class SetUser(command.Command):
help=_('Set user name'),
)
parser.add_argument(
+ '--domain',
+ metavar='<domain>',
+ help=_('Domain the user belongs to (name or ID). This can be '
+ 'used in case collisions between user names exist.'),
+ )
+ parser.add_argument(
'--project',
metavar='<project>',
help=_('Set default project (name or ID)'),
@@ -351,10 +357,19 @@ class SetUser(command.Command):
LOG.warning(_("No password was supplied, authentication will fail "
"when a user does not have a password."))
- user = utils.find_resource(
- identity_client.users,
- parsed_args.user,
- )
+ user_str = common._get_token_resource(identity_client, 'user',
+ parsed_args.user)
+ if parsed_args.domain:
+ domain = common.find_domain(identity_client, parsed_args.domain)
+ user = utils.find_resource(identity_client.users,
+ user_str,
+ domain_id=domain.id)
+ else:
+ user = utils.find_resource(
+ identity_client.users,
+ parsed_args.user,
+ )
+
kwargs = {}
if parsed_args.name:
kwargs['name'] = parsed_args.name