Merge "Connect assembly commands and Rest API"
This commit is contained in:
@@ -93,28 +93,35 @@ class AssemblyCommands(cli_utils.CommandsBase):
|
|||||||
|
|
||||||
def create(self):
|
def create(self):
|
||||||
"""Create an assembly."""
|
"""Create an assembly."""
|
||||||
self.parser.add_argument('plan_name',
|
self.parser.add_argument('plan_uuid',
|
||||||
help="Tenant/project-wide unique plan name")
|
help="Tenant/project-wide unique plan uuid")
|
||||||
self.parser.add_argument('--assembly',
|
self.parser.add_argument('--assembly',
|
||||||
help="Assembly name")
|
help="Assembly name")
|
||||||
args = self.parser.parse_args()
|
args = self.parser.parse_args()
|
||||||
#TODO(noorul): Add REST communications
|
print("assembly create plan_uuid=%s assembly=%s" % (
|
||||||
print("assembly create plan_name=%s assembly=%s" % (
|
args.plan_uuid,
|
||||||
args.plan_name,
|
|
||||||
args.assembly))
|
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):
|
def delete(self):
|
||||||
"""Delete an assembly."""
|
"""Delete an assembly."""
|
||||||
self.parser.add_argument('assembly_name',
|
self.parser.add_argument('assembly_uuid',
|
||||||
help="Assembly name")
|
help="Assembly uuid")
|
||||||
args = self.parser.parse_args()
|
args = self.parser.parse_args()
|
||||||
#TODO(noorul): Add REST communications
|
print("assembly delete assembly_uuid=%s" % (
|
||||||
print("assembly delete assembly_name=%s" % (
|
args.assembly_uuid))
|
||||||
args.assembly_name))
|
self.client.assemblies.delete(assembly_id=args.assembly_uuid)
|
||||||
|
|
||||||
def list(self):
|
def list(self):
|
||||||
"""List all assemblies."""
|
"""List all assemblies."""
|
||||||
print(self.client.assemblies.list())
|
fields = ['uuid', 'name', 'description']
|
||||||
|
response = self.client.assemblies.list()
|
||||||
|
cliutils.print_list(response, fields)
|
||||||
|
|
||||||
|
|
||||||
def main():
|
def main():
|
||||||
|
@@ -106,7 +106,7 @@ class TestSolum(base.TestCase):
|
|||||||
self.make_env()
|
self.make_env()
|
||||||
required = [
|
required = [
|
||||||
'.*?^Solum Python Command Line Client',
|
'.*?^Solum Python Command Line Client',
|
||||||
'.*?\[\]'
|
'.*?^.*uuid.*name.*description.*'
|
||||||
]
|
]
|
||||||
|
|
||||||
mock_assembly_list.side_effect = (
|
mock_assembly_list.side_effect = (
|
||||||
|
@@ -37,3 +37,6 @@ class AssemblyManager(solum_base.CrudManager):
|
|||||||
|
|
||||||
def put(self, **kwargs):
|
def put(self, **kwargs):
|
||||||
return super(AssemblyManager, self).put(base_url="/v1", **kwargs)
|
return super(AssemblyManager, self).put(base_url="/v1", **kwargs)
|
||||||
|
|
||||||
|
def delete(self, **kwargs):
|
||||||
|
return super(AssemblyManager, self).delete(base_url="/v1", **kwargs)
|
||||||
|
Reference in New Issue
Block a user