summaryrefslogtreecommitdiff
path: root/openstackclient/identity/v2_0/project.py
diff options
context:
space:
mode:
authorDean Troyer <dtroyer@gmail.com>2013-09-09 14:52:45 -0500
committerDean Troyer <dtroyer@gmail.com>2013-09-09 14:52:50 -0500
commit7a0a7d67ed639cf664f02e1148c7b4a9348f4672 (patch)
treec706b3cfb5b59aa354375ab31ed46baed34a8155 /openstackclient/identity/v2_0/project.py
parent16edd97007a71129197e4b3df303ed97ccffe436 (diff)
downloadpython-openstackclient-7a0a7d67ed639cf664f02e1148c7b4a9348f4672.tar.gz
Prepare for Identity v3 tests
* Split identity/fakes.py for v2_0 and v3 * Split identity/test_identity.py for v2_0 and v3 * Fix issues in commands with enable/disable * Clean up v2 commands Change-Id: I6e536b6a130fc556dbd7dcf9f2e76d939ca1bc1c
Diffstat (limited to 'openstackclient/identity/v2_0/project.py')
-rw-r--r--openstackclient/identity/v2_0/project.py22
1 files changed, 15 insertions, 7 deletions
diff --git a/openstackclient/identity/v2_0/project.py b/openstackclient/identity/v2_0/project.py
index 0721a7ce..2d0acb8f 100644
--- a/openstackclient/identity/v2_0/project.py
+++ b/openstackclient/identity/v2_0/project.py
@@ -33,7 +33,7 @@ class CreateProject(show.ShowOne):
def get_parser(self, prog_name):
parser = super(CreateProject, self).get_parser(prog_name)
parser.add_argument(
- 'project_name',
+ 'name',
metavar='<project-name>',
help='New project name',
)
@@ -57,13 +57,14 @@ class CreateProject(show.ShowOne):
def take_action(self, parsed_args):
self.log.debug('take_action(%s)' % parsed_args)
-
identity_client = self.app.client_manager.identity
+
enabled = True
if parsed_args.disable:
enabled = False
+
project = identity_client.tenants.create(
- parsed_args.project_name,
+ parsed_args.name,
description=parsed_args.description,
enabled=enabled,
)
@@ -90,10 +91,12 @@ class DeleteProject(command.Command):
def take_action(self, parsed_args):
self.log.debug('take_action(%s)' % parsed_args)
identity_client = self.app.client_manager.identity
+
project = utils.find_resource(
identity_client.tenants,
parsed_args.project,
)
+
identity_client.tenants.delete(project.id)
return
@@ -164,8 +167,14 @@ class SetProject(command.Command):
def take_action(self, parsed_args):
self.log.debug('take_action(%s)' % parsed_args)
-
identity_client = self.app.client_manager.identity
+
+ if (not parsed_args.name
+ and not parsed_args.description
+ and not parsed_args.enable
+ and not parsed_args.disable):
+ return
+
project = utils.find_resource(
identity_client.tenants,
parsed_args.project,
@@ -180,7 +189,6 @@ class SetProject(command.Command):
kwargs['enabled'] = True
if parsed_args.disable:
kwargs['enabled'] = False
-
if 'id' in kwargs:
del kwargs['id']
if 'name' in kwargs:
@@ -188,8 +196,8 @@ class SetProject(command.Command):
kwargs['tenant_name'] = kwargs['name']
del kwargs['name']
- if len(kwargs):
- identity_client.tenants.update(project.id, **kwargs)
+ identity_client.tenants.update(project.id, **kwargs)
+ return
class ShowProject(show.ShowOne):