From 0a8dced06eb3b416d89b64c78f4f945dea1f002f Mon Sep 17 00:00:00 2001 From: Ai Hamano Date: Thu, 5 Dec 2024 11:10:35 +0900 Subject: [PATCH] Improved display of vnfPkgId for v2 Tacker This patch fixes the output of v2 Tacker so that vnfPkgId of VnfInstance that are only used in v1 Tacker are not displayed as CLI output. This is because it is confusing for v2 users that unused vnfPkgId (VNF Package ID) is always displayed as empty. The vnfPkgId (VNF Package ID) remain displayed in the v1 Tacker CLI output. Change-Id: I4adea34e9c2c7fc51e087d2a00f47db77d67fe4a --- tackerclient/osc/v1/vnflcm/vnflcm.py | 12 ++++++++---- tackerclient/tests/unit/osc/v1/test_vnflcm.py | 2 +- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/tackerclient/osc/v1/vnflcm/vnflcm.py b/tackerclient/osc/v1/vnflcm/vnflcm.py index 6fa7a90a..ed03d220 100644 --- a/tackerclient/osc/v1/vnflcm/vnflcm.py +++ b/tackerclient/osc/v1/vnflcm/vnflcm.py @@ -31,8 +31,7 @@ _attr_map = ( ('vnfProvider', 'VNF Provider', tacker_osc_utils.LIST_BOTH), ('vnfSoftwareVersion', 'VNF Software Version', tacker_osc_utils.LIST_BOTH), ('vnfProductName', 'VNF Product Name', tacker_osc_utils.LIST_BOTH), - ('vnfdId', 'VNFD ID', tacker_osc_utils.LIST_BOTH), - ('vnfPkgId', 'VNF Package ID', tacker_osc_utils.LIST_BOTH) + ('vnfdId', 'VNFD ID', tacker_osc_utils.LIST_BOTH) ) LOG = logging.getLogger(__name__) @@ -68,8 +67,7 @@ def _get_columns(vnflcm_obj, action=None): 'vnfdVersion': 'VNFD Version', 'instantiationState': 'Instantiation State', '_links': 'Links', - 'vnfConfigurableProperties': 'VNF Configurable Properties', - 'vnfPkgId': 'VNF Package ID', + 'vnfConfigurableProperties': 'VNF Configurable Properties' } if action == 'show': if vnflcm_obj['instantiationState'] == 'INSTANTIATED': @@ -80,6 +78,12 @@ def _get_columns(vnflcm_obj, action=None): {'vimConnectionInfo': 'VIM Connection Info', '_links': 'Links'} ) + # Note: To prevent it from appearing in the v2 API output, + # the 'VNF Package ID' will be output only if the vnfPkgId exists. + if 'vnfPkgId' in vnflcm_obj: + column_map.update( + {'vnfPkgId': 'VNF Package ID'} + ) return sdk_utils.get_osc_show_columns_for_sdk_resource(vnflcm_obj, column_map) diff --git a/tackerclient/tests/unit/osc/v1/test_vnflcm.py b/tackerclient/tests/unit/osc/v1/test_vnflcm.py index dca1f0f9..17e46ef2 100644 --- a/tackerclient/tests/unit/osc/v1/test_vnflcm.py +++ b/tackerclient/tests/unit/osc/v1/test_vnflcm.py @@ -56,7 +56,7 @@ def _get_columns_vnflcm(action='create'): if action == 'list': columns = [ele for ele in columns if ele not in ['VNFD Version', 'VNF Instance Description', - 'VNF Configurable Properties']] + 'VNF Configurable Properties', 'VNF Package ID']] columns.remove('Links') return columns