diff options
Diffstat (limited to 'openstackclient/identity/v3/project.py')
| -rw-r--r-- | openstackclient/identity/v3/project.py | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/openstackclient/identity/v3/project.py b/openstackclient/identity/v3/project.py index 1c93ad5d..49979763 100644 --- a/openstackclient/identity/v3/project.py +++ b/openstackclient/identity/v3/project.py @@ -47,6 +47,11 @@ class CreateProject(show.ShowOne): help='Domain owning the project (name or ID)', ) parser.add_argument( + '--parent', + metavar='<project>', + help='Parent of the project (name or ID)', + ) + parser.add_argument( '--description', metavar='<description>', help='Project description', @@ -86,6 +91,13 @@ class CreateProject(show.ShowOne): else: domain = None + parent = None + if parsed_args.parent: + parent = utils.find_resource( + identity_client.projects, + parsed_args.parent, + ).id + enabled = True if parsed_args.disable: enabled = False @@ -97,6 +109,7 @@ class CreateProject(show.ShowOne): project = identity_client.projects.create( name=parsed_args.name, domain=domain, + parent=parent, description=parsed_args.description, enabled=enabled, **kwargs @@ -111,8 +124,6 @@ class CreateProject(show.ShowOne): raise e project._info.pop('links') - # TODO(stevemar): Remove the line below when we support multitenancy - project._info.pop('parent_id', None) return zip(*sorted(six.iteritems(project._info))) |
