projects
/
osm
/
LCM.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
fix/feat(relations): external connection point ref now works with multiple KDU
[osm/LCM.git]
/
osm_lcm
/
ns.py
diff --git
a/osm_lcm/ns.py
b/osm_lcm/ns.py
index
6fd9e5a
..
443a09e
100644
(file)
--- a/
osm_lcm/ns.py
+++ b/
osm_lcm/ns.py
@@
-2287,6
+2287,12
@@
class NsLcm(LcmBase):
# Obtain management service info (if exists)
vnfr_update_dict = {}
# Obtain management service info (if exists)
vnfr_update_dict = {}
+ kdu_config = get_configuration(vnfd, kdud["name"])
+ if kdu_config:
+ target_ee_list = kdu_config.get("execution-environment-list", [])
+ else:
+ target_ee_list = []
+
if services:
vnfr_update_dict["kdur.{}.services".format(kdu_index)] = services
mgmt_services = [service for service in kdud.get("service", []) if service.get("mgmt-service")]
if services:
vnfr_update_dict["kdur.{}.services".format(kdu_index)] = services
mgmt_services = [service for service in kdud.get("service", []) if service.get("mgmt-service")]
@@
-2306,6
+2312,11
@@
class NsLcm(LcmBase):
if deep_get(vnfd, ("mgmt-interface", "cp")) == service_external_cp:
vnfr_update_dict["ip-address"] = ip
if deep_get(vnfd, ("mgmt-interface", "cp")) == service_external_cp:
vnfr_update_dict["ip-address"] = ip
+ if find_in_list(
+ target_ee_list,
+ lambda ee: ee.get("external-connection-point-ref", "") == service_external_cp
+ ):
+ vnfr_update_dict["kdur.{}.ip-address".format(kdu_index)] = ip
break
else:
self.logger.warn("Mgmt service name: {} not found".format(mgmt_service["name"]))
break
else:
self.logger.warn("Mgmt service name: {} not found".format(mgmt_service["name"]))