X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=src%2Femuvim%2Fcli%2Frest%2Fcompute.py;fp=src%2Femuvim%2Fcli%2Frest%2Fcompute.py;h=cdc0b04d05c5ea64756c12a9bddeb6e4ce0c7094;hb=a9dd901a96789fea8b1f4dd6a11b6fdcc01da830;hp=3a719cc267fba8010628c606e6964d5714b86eca;hpb=50bb06a5a9aa9954d0a6300add216485eddf702c;p=osm%2Fvim-emu.git diff --git a/src/emuvim/cli/rest/compute.py b/src/emuvim/cli/rest/compute.py index 3a719cc..cdc0b04 100755 --- a/src/emuvim/cli/rest/compute.py +++ b/src/emuvim/cli/rest/compute.py @@ -25,7 +25,7 @@ the Horizon 2020 and 5G-PPP programmes. The authors would like to acknowledge the contributions of their colleagues of the SONATA partner consortium (www.sonata-nfv.eu). """ -from requests import get,put +from requests import get, put, delete from tabulate import tabulate import pprint import argparse @@ -33,8 +33,8 @@ import json pp = pprint.PrettyPrinter(indent=4) -class RestApiClient(): +class RestApiClient(): def __init__(self): self.cmds = {} @@ -47,29 +47,29 @@ class RestApiClient(): def start(self, args): - req = {'image':args.get("image"), - 'command':args.get("docker_command"), - 'network':args.get("network")} + req = {'image': args.get("image"), + 'command': args.get("docker_command"), + 'network': args.get("network")} - response = put("%s/restapi/compute/%s/%s/start" % + response = put("%s/restapi/compute/%s/%s" % (args.get("endpoint"), args.get("datacenter"), args.get("name")), - json = req) + json=req) pp.pprint(response.json()) def stop(self, args): - response = get("%s/restapi/compute/%s/%s/stop" % - (args.get("endpoint"), - args.get("datacenter"), - args.get("name"))) + response = delete("%s/restapi/compute/%s/%s" % + (args.get("endpoint"), + args.get("datacenter"), + args.get("name"))) pp.pprint(response.json()) - def list(self,args): + def list(self, args): - list = get('%s/restapi/compute/%s' % (args.get("endpoint"),args.get('datacenter'))).json() + list = get('%s/restapi/compute/%s' % (args.get("endpoint"), args.get('datacenter'))).json() table = [] for c in list: @@ -98,16 +98,17 @@ class RestApiClient(): "Status"] print(tabulate(table, headers=headers, tablefmt="grid")) - def status(self,args): + def status(self, args): list = get("%s/restapi/compute/%s/%s" % (args.get("endpoint"), args.get("datacenter"), args.get("name"))).json() + pp.pprint(list) -parser = argparse.ArgumentParser(description='son-emu datacenter') +parser = argparse.ArgumentParser(description='son-emu compute') parser.add_argument( "command", choices=['start', 'stop', 'list', 'status'], @@ -119,7 +120,7 @@ parser.add_argument( "--name", "-n", dest="name", help="Name of compute instance e.g. 'vnf1'.") parser.add_argument( - "--image","-i", dest="image", + "--image", "-i", dest="image", help="Name of container image to be used e.g. 'ubuntu:trusty'") parser.add_argument( "--dcmd", "-c", dest="docker_command", @@ -133,7 +134,8 @@ parser.add_argument( default="http://127.0.0.1:5001", help="UUID of the plugin to be manipulated.") + def main(argv): args = vars(parser.parse_args(argv)) c = RestApiClient() - c.execute_command(args) \ No newline at end of file + c.execute_command(args)