import yaml
import json
import time
+import pycurl
def check_client_version(obj, what, version='sol005'):
'''
@click.group()
@click.option('--hostname',
- default=None,
+ default="127.0.0.1",
envvar='OSM_HOSTNAME',
help='hostname of server. ' +
'Also can set OSM_HOSTNAME in environment')
kwargs['ro_host']=ro_hostname
if ro_port is not None:
kwargs['ro_port']=ro_port
-
+
ctx.obj = client.Client(host=hostname, sol005=sol005, **kwargs)
help='administration status')
@click.option('--ssh_keys',
default=None,
- help='comma separated list of keys to inject to vnfs')
+ help='comma separated list of public key files to inject to vnfs')
@click.option('--config',
default=None,
- 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]')
+ help='ns specific yaml configuration')
+@click.option('--config_file',
+ default=None,
+ help='ns specific yaml configuration file')
@click.pass_context
def ns_create(ctx,
nsd_name,
vim_account,
admin_status,
ssh_keys,
- config):
+ config,
+ config_file):
'''creates a new NS instance'''
try:
- # if config:
- # check_client_version(ctx.obj, '--config', 'v1')
+ if config_file:
+ check_client_version(ctx.obj, '--config_file')
+ if config:
+ raise ClientException('"--config" option is incompatible with "--config_file" option')
+ with open(config_file, 'r') as cf:
+ config=cf.read()
ctx.obj.ns.create(
nsd_name,
ns_name,
####################
# VIM operations
####################
-
+
@cli.command(name='vim-create')
@click.option('--name',
prompt=True,
if __name__ == '__main__':
- cli()
+ try:
+ cli()
+ except pycurl.error as e:
+ print(e)
+ print('Maybe "--hostname" option or OSM_HOSTNAME' +
+ 'environment variable needs to be specified')
+ exit(1)
+