Fix bug 1232: k8scluster-list now shows the vim name it belongs to
VIM name is shown instead of VIM ID.
Similar code was already used in different places, so it has been
properly refactored through the function get_vim_name
Change-Id: I46137f0e17762786036b1cacbbbc043fad0d488f
Signed-off-by: garciadeblas <gerardo.garciadeblas@telefonica.com>
diff --git a/osmclient/scripts/osm.py b/osmclient/scripts/osm.py
index 1df00d6..054bbd1 100755
--- a/osmclient/scripts/osm.py
+++ b/osmclient/scripts/osm.py
@@ -84,6 +84,15 @@
return project_id, project_name
+def get_vim_name(vim_list, vim_id):
+ vim_name = '-'
+ for v in vim_list:
+ if v['uuid'] == vim_id:
+ vim_name = v['name']
+ break
+ return vim_name
+
+
@click.group(context_settings=dict(help_option_names=['-h', '--help'], max_content_width=160))
@click.option('--hostname',
default="127.0.0.1",
@@ -342,7 +351,10 @@
'deployment status',
'configuration status'])
project_list = ctx.obj.project.list()
- vim_list = ctx.obj.vim.list()
+ try:
+ vim_list = ctx.obj.vim.list()
+ except:
+ vim_list = []
else:
table = PrettyTable(
['ns instance name',
@@ -363,20 +375,11 @@
if long:
deployment_status = summarize_deployment_status(nsr.get('deploymentStatus'))
config_status = summarize_config_status(nsr.get('configurationStatus'))
- project_id = nsr.get('_admin').get('projects_read')[0]
- project_name = '-'
- for p in project_list:
- if p['_id'] == project_id:
- project_name = p['name']
- break
+ project_id, project_name = get_project(project_list, nsr)
#project = '{} ({})'.format(project_name, project_id)
project = project_name
vim_id = nsr.get('datacenter')
- vim_name = '-'
- for v in vim_list:
- if v['uuid'] == vim_id:
- vim_name = v['name']
- break
+ vim_name = get_vim_name(vim_list, vim_id)
#vim = '{} ({})'.format(vim_name, vim_id)
vim = vim_name
if 'currentOperation' in nsr:
@@ -3155,7 +3158,14 @@
project_list = ctx.obj.project.list()
else:
table = PrettyTable(['Name', 'Id', 'VIM', 'Operational State', 'Op. state details'])
+ try:
+ vim_list = ctx.obj.vim.list()
+ except:
+ vim_list = []
for cluster in resp:
+ vim_name = get_vim_name(vim_list, cluster['vim_account'])
+ #vim_info = '{} ({})'.format(vim_name,cluster['vim_account'])
+ vim_info = vim_name
op_state_details = "Helm: {}\nJuju: {}".format(
cluster["_admin"].get("helm-chart", "-").get("operationalState", "-"),
cluster["_admin"].get("juju-bundle", "-").get("operationalState", "-"))
@@ -3166,12 +3176,12 @@
project_info = project_name
detailed_status = cluster["_admin"].get("detailed-status","-")
table.add_row([cluster['name'], cluster['_id'], project_info,
- cluster['k8s_version'], cluster['vim_account'],
+ cluster['k8s_version'], vim_info,
json.dumps(cluster['nets']), cluster["_admin"]["operationalState"],
op_state_details, trunc_text(cluster.get('description') or '', 40),
wrap_text(text=detailed_status, width=40)])
else:
- table.add_row([cluster['name'], cluster['_id'], cluster['vim_account'],
+ table.add_row([cluster['name'], cluster['_id'], vim_info,
cluster["_admin"]["operationalState"], op_state_details])
table.align = 'l'
print(table)