X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=src%2Femuvim%2Fcli%2Frest%2Fcompute.py;h=fdfc11bb6fc62b670c8721f488c669a177b61454;hb=b1a426eeed8b2611e908869366ea0ab82c27ce36;hp=870eea155896df951cbe0f3be6206c9f6f7d947e;hpb=566779d267065c78708112623f9c60afcb01696e;p=osm%2Fvim-emu.git diff --git a/src/emuvim/cli/rest/compute.py b/src/emuvim/cli/rest/compute.py index 870eea1..fdfc11b 100755 --- a/src/emuvim/cli/rest/compute.py +++ b/src/emuvim/cli/rest/compute.py @@ -30,6 +30,7 @@ from tabulate import tabulate import pprint import argparse import json +from subprocess import Popen pp = pprint.PrettyPrinter(indent=4) @@ -77,7 +78,7 @@ class RestApiClient(): if len(c) > 1: name = c[0] status = c[1] - eth0ip = status.get("docker_network", "-") + #eth0ip = status.get("docker_network", "-") netw_list = [netw_dict['intf_name'] for netw_dict in status.get("network")] dc_if_list = [netw_dict['dc_portname'] for netw_dict in status.get("network")] table.append([status.get("datacenter"), @@ -103,8 +104,13 @@ class RestApiClient(): pp.pprint(list) + def xterm(self, args): + vnf_names = args.get("vnf_names") + for vnf_name in vnf_names: + Popen(['xterm', '-xrm', 'XTerm.vt100.allowTitleOps: false', '-T', vnf_name, + '-e', "docker exec -it mn.{0} /bin/bash".format(vnf_name)]) -parser = argparse.ArgumentParser(description="""son-emu compute +parser = argparse.ArgumentParser(description="""son-emu-cli compute Examples: - son-emu-cli compute start -d dc2 -n client -i sonatanfv/sonata-iperf3-vnf @@ -113,8 +119,12 @@ parser = argparse.ArgumentParser(description="""son-emu compute """, formatter_class=argparse.RawTextHelpFormatter) parser.add_argument( "command", - choices=['start', 'stop', 'list', 'status'], + choices=['start', 'stop', 'list', 'status', 'xterm'], help="Action to be executed.") +parser.add_argument( + "vnf_names", + nargs='*', + help="vnf names to open an xterm for") parser.add_argument( "--datacenter", "-d", dest="datacenter", help="Data center to which the command should be applied.") @@ -134,7 +144,7 @@ parser.add_argument( parser.add_argument( "--endpoint", "-e", dest="endpoint", default="http://127.0.0.1:5001", - help="UUID of the plugin to be manipulated.") + help="REST API endpoint of son-emu (default:http://127.0.0.1:5001)") def main(argv):