Bug 2051 fixed: avoid trying to insert pk in a VM for a KNF VCA
Change-Id: I62bb34d29848c57fda2af6556d5e8fce6795f0c8
Signed-off-by: Pedro Escaleira <escaleira@av.it.pt>
diff --git a/osm_lcm/ns.py b/osm_lcm/ns.py
index e3858e6..6b9bc89 100644
--- a/osm_lcm/ns.py
+++ b/osm_lcm/ns.py
@@ -1974,6 +1974,9 @@
step = "Waiting to VM being up and getting IP address"
self.logger.debug(logging_text + step)
+ # default rw_mgmt_ip to None, avoiding the non definition of the variable
+ rw_mgmt_ip = None
+
# n2vc_redesign STEP 5.1
# wait for RO (ip-address) Insert pub_key into VM
if vnfr_id:
@@ -1981,7 +1984,13 @@
rw_mgmt_ip = await self.wait_kdu_up(
logging_text, nsr_id, vnfr_id, kdu_name
)
- else:
+
+ # This verification is needed in order to avoid trying to add a public key
+ # to a VM, when the VNF is a KNF (in the edge case where the user creates a VCA
+ # for a KNF and not for its KDUs, the previous verification gives False, and the code
+ # jumps to this block, meaning that there is the need to verify if the VNF is actually a VNF
+ # or it is a KNF)
+ elif db_vnfr.get('vdur'):
rw_mgmt_ip = await self.wait_vm_up_insert_key_ro(
logging_text,
nsr_id,
@@ -1991,8 +2000,6 @@
user=user,
pub_key=pub_key,
)
- else:
- rw_mgmt_ip = None # This is for a NS configuration
self.logger.debug(logging_text + " VM_ip_address={}".format(rw_mgmt_ip))