X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=src%2Femuvim%2Fcli%2Frest%2Fcompute.py;h=9e5e0abb462cd425e223034d16447acae4ad9ec7;hb=9cc7360bf2c0dacb869d8ed0674d9d9e269a1082;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..9e5e0ab 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,6 +104,11 @@ 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 @@ -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.")