X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=osmclient%2Fscripts%2Fosm.py;h=75b3be24e29e2811cce1ba3f67260414e21608c3;hb=e4a7ea18501cbebdfc32cb3e0ca34f90e33e5583;hp=e3b284b006a2bc49d44e280c2311ccc352d47d67;hpb=2b2d07c4676f786d60e55c566c12fcc102c84d13;p=osm%2Fosmclient.git diff --git a/osmclient/scripts/osm.py b/osmclient/scripts/osm.py index e3b284b..75b3be2 100755 --- a/osmclient/scripts/osm.py +++ b/osmclient/scripts/osm.py @@ -36,9 +36,9 @@ def check_client_version(obj, what, version='sol005'): :raises ClientError: if the specified version does not match the client version ''' fullclassname = obj.__module__ + "." + obj.__class__.__name__ - message = 'the following commands or options are only supported with the option "--sol005": {}'.format(what) + message = 'The following commands or options are only supported with the option "--sol005": {}'.format(what) if version == 'v1': - message = 'the following commands or options are not supported when using option "--sol005": {}'.format(what) + message = 'The following commands or options are not supported when using option "--sol005": {}'.format(what) if fullclassname != 'osmclient.{}.client.Client'.format(version): raise ClientException(message) return @@ -104,7 +104,7 @@ def cli(ctx, hostname, so_port, so_project, ro_hostname, ro_port, sol005): def ns_list(ctx, filter): '''list all NS instances''' if filter: - check_client_version(ctx.obj, '--filter option') + check_client_version(ctx.obj, '--filter') resp = ctx.obj.ns.list(filter) else: resp = ctx.obj.ns.list() @@ -112,23 +112,30 @@ def ns_list(ctx, filter): ['ns instance name', 'id', 'operational status', - 'config status']) + 'config status', + 'detailed status']) for ns in resp: fullclassname = ctx.obj.__module__ + "." + ctx.obj.__class__.__name__ if fullclassname == 'osmclient.sol005.client.Client': nsr = ns + nsr_name = nsr['name'] + nsr_id = nsr['_id'] else: nsopdata = ctx.obj.ns.get_opdata(ns['id']) nsr = nsopdata['nsr:nsr'] + nsr_name = nsr['name-ref'] + nsr_id = nsr['ns-instance-config-ref'] opstatus = nsr['operational-status'] if 'operational-status' in nsr else 'Not found' configstatus = nsr['config-status'] if 'config-status' in nsr else 'Not found' + detailed_status = nsr['detailed-status'] if 'detailed-status' in nsr else 'Not found' if configstatus == "config_not_needed": configstatus = "configured (no charms)" table.add_row( - [nsr['name'], - nsr['_id'], + [nsr_name, + nsr_id, opstatus, - configstatus]) + configstatus, + detailed_status]) table.align = 'l' print(table) @@ -213,7 +220,12 @@ def vnfd_list2(ctx, filter): @click.pass_context def vnf_list(ctx): ''' list all VNF instances''' - resp = ctx.obj.vnf.list() + try: + check_client_version(ctx.obj, ctx.command.name, 'v1') + resp = ctx.obj.vnf.list() + except ClientException as inst: + print(inst.message) + exit(1) table = PrettyTable( ['vnf name', 'id', @@ -529,7 +541,8 @@ def vnfd_create2(ctx, filename, overwrite): help='comma separated list of keys to inject to vnfs') @click.option('--config', default=None, - help='ns specific yaml configuration') + help='ns specific yaml configuration:\nvnf: [member-vnf-index: TEXT, vim_account: TEXT]\n' + 'vld: [name: TEXT, vim-network-name: TEXT or DICT with vim_account, vim_net entries]') @click.pass_context def ns_create(ctx, nsd_name, @@ -540,8 +553,8 @@ def ns_create(ctx, config): '''creates a new NS instance''' try: - if config: - check_client_version(ctx.obj, '--config', 'v1') + # if config: + # check_client_version(ctx.obj, '--config', 'v1') ctx.obj.ns.create( nsd_name, ns_name, @@ -856,6 +869,8 @@ def vim_show(ctx, name): ''' try: resp = ctx.obj.vim.get(name) + if 'vim_password' in resp: + resp['vim_password']='********' except ClientException as inst: print(inst.message) exit(1)