+ table.add_row([name, repository])
+ table.align = 'l'
+ print(table)
+
+
+@cli_osm.command(name='vnfpkg-repo-list', short_help='list all xNF from OSM repositories')
+@click.option('--filter', default=None, multiple=True,
+ help='restricts the list to the NFpkg matching the filter')
+@click.option('--repo', default=None,
+ help='restricts the list to a particular OSM repository')
+@click.option('--long', is_flag=True, help='get more details')
+@click.pass_context
+def nfpkg_repo_list1(ctx, filter, repo, long):
+ """list xNF packages from OSM repositories"""
+ pkgtype = 'vnf'
+ pkg_repo_list(ctx, pkgtype, filter, repo, long)
+
+
+@cli_osm.command(name='nfpkg-repo-list', short_help='list all xNF from OSM repositories')
+@click.option('--filter', default=None, multiple=True,
+ help='restricts the list to the NFpkg matching the filter')
+@click.option('--repo', default=None,
+ help='restricts the list to a particular OSM repository')
+@click.option('--long', is_flag=True, help='get more details')
+@click.pass_context
+def nfpkg_repo_list2(ctx, filter, repo, long):
+ """list xNF packages from OSM repositories"""
+ pkgtype = 'vnf'
+ pkg_repo_list(ctx, pkgtype, filter, repo, long)
+
+
+@cli_osm.command(name='nsd-repo-list', short_help='list all NS from OSM repositories')
+@click.option('--filter', default=None, multiple=True,
+ help='restricts the list to the NS matching the filter')
+@click.option('--repo', default=None,
+ help='restricts the list to a particular OSM repository')
+@click.option('--long', is_flag=True, help='get more details')
+@click.pass_context
+def nspkg_repo_list(ctx, filter, repo, long):
+ """list xNF packages from OSM repositories"""
+ pkgtype = 'ns'
+ pkg_repo_list(ctx, pkgtype, filter, repo, long)
+
+
+@cli_osm.command(name='nspkg-repo-list', short_help='list all NS from OSM repositories')
+@click.option('--filter', default=None, multiple=True,
+ help='restricts the list to the NS matching the filter')
+@click.option('--repo', default=None,
+ help='restricts the list to a particular OSM repository')
+@click.option('--long', is_flag=True, help='get more details')
+@click.pass_context
+def nspkg_repo_list2(ctx, filter, repo, long):
+ """list xNF packages from OSM repositories"""
+ pkgtype = 'ns'
+ pkg_repo_list(ctx, pkgtype, filter, repo, long)
+
+
+def vnf_list(ctx, ns, filter, long):
+ # try:
+ if ns or filter:
+ if ns:
+ check_client_version(ctx.obj, '--ns')
+ if filter:
+ filter='&'.join(filter)
+ check_client_version(ctx.obj, '--filter')
+ resp = ctx.obj.vnf.list(ns, filter)
+ else:
+ resp = ctx.obj.vnf.list()
+ # except ClientException as e:
+ # print(str(e))
+ # exit(1)