"vnfd-ref": vnfd_id,
"vnfd-id": vnfd["_id"], # not at OSM model, but useful
"vim-account-id": None,
+ "vca-id": None,
"vdur": [],
"connection-point": [],
"ip-address": None, # mgmt-interface filled by LCM
# update vim-account-id
vim_account = indata["vimAccountId"]
+ vca_id = indata.get("vcaId")
# check instantiate parameters
for vnf_inst_params in get_iterable(indata.get("vnf")):
if vnf_inst_params["member-vnf-index"] != member_vnf_index:
continue
if vnf_inst_params.get("vimAccountId"):
vim_account = vnf_inst_params.get("vimAccountId")
+ if vnf_inst_params.get("vcaId"):
+ vca_id = vnf_inst_params.get("vcaId")
# get vnf.vdu.interface instantiation params to update vnfr.vdur.interfaces ip, mac
for vdu_inst_param in get_iterable(vnf_inst_params.get("vdu")):
vnfr_update["vim-account-id"] = vim_account
vnfr_update_rollback["vim-account-id"] = vnfr.get("vim-account-id")
+ if vca_id:
+ vnfr_update["vca-id"] = vca_id
+ vnfr_update_rollback["vca-id"] = vnfr.get("vca-id")
+
# get pdu
ifaces_forcing_vim_network = self._look_for_pdu(session, rollback, vnfr, vim_account, vnfr_update,
vnfr_update_rollback)