Merge "Connect assembly commands and Rest API"

This commit is contained in:
Jenkins
2014-03-11 22:15:03 +00:00
committed by Gerrit Code Review
3 changed files with 22 additions and 12 deletions

View File

@@ -93,28 +93,35 @@ class AssemblyCommands(cli_utils.CommandsBase):
def create(self):
"""Create an assembly."""
self.parser.add_argument('plan_name',
help="Tenant/project-wide unique plan name")
self.parser.add_argument('plan_uuid',
help="Tenant/project-wide unique plan uuid")
self.parser.add_argument('--assembly',
help="Assembly name")
args = self.parser.parse_args()
#TODO(noorul): Add REST communications
print("assembly create plan_name=%s assembly=%s" % (
args.plan_name,
print("assembly create plan_uuid=%s assembly=%s" % (
args.plan_uuid,
args.assembly))
assembly = self.client.assemblies.create(name=args.assembly,
plan_uuid=args.plan_uuid)
fields = ['uuid', 'name', 'description']
data = dict([(f, getattr(assembly, f, ''))
for f in fields])
cliutils.print_dict(data, wrap=72)
def delete(self):
"""Delete an assembly."""
self.parser.add_argument('assembly_name',
help="Assembly name")
self.parser.add_argument('assembly_uuid',
help="Assembly uuid")
args = self.parser.parse_args()
#TODO(noorul): Add REST communications
print("assembly delete assembly_name=%s" % (
args.assembly_name))
print("assembly delete assembly_uuid=%s" % (
args.assembly_uuid))
self.client.assemblies.delete(assembly_id=args.assembly_uuid)
def list(self):
"""List all assemblies."""
print(self.client.assemblies.list())
fields = ['uuid', 'name', 'description']
response = self.client.assemblies.list()
cliutils.print_list(response, fields)
def main():

View File

@@ -106,7 +106,7 @@ class TestSolum(base.TestCase):
self.make_env()
required = [
'.*?^Solum Python Command Line Client',
'.*?\[\]'
'.*?^.*uuid.*name.*description.*'
]
mock_assembly_list.side_effect = (

View File

@@ -37,3 +37,6 @@ class AssemblyManager(solum_base.CrudManager):
def put(self, **kwargs):
return super(AssemblyManager, self).put(base_url="/v1", **kwargs)
def delete(self, **kwargs):
return super(AssemblyManager, self).delete(base_url="/v1", **kwargs)