return vnfd_name + "__" + str(member_idx)
-def rift2openmano_nsd(rift_nsd, rift_vnfds):
+def rift2openmano_nsd(rift_nsd, rift_vnfds,openmano_vnfd_ids):
for vnfd_id in rift_nsd.vnfd_ids:
if vnfd_id not in rift_vnfds:
raise VNFNotFoundError("VNF id %s not provided" % vnfd_id)
vnfd_id = vnfd.vnfd_id_ref
rift_vnfd = rift_vnfds[vnfd_id]
member_idx = vnfd.member_vnf_index
- topology["nodes"][rift_vnfd.name + "__" + str(member_idx)] = {
+ openmano_vnfd_id = openmano_vnfd_ids.get(vnfd_id,None)
+ if openmano_vnfd_id:
+ topology["nodes"][rift_vnfd.name + "__" + str(member_idx)] = {
+ "type": "VNF",
+ "vnf_id": openmano_vnfd_id
+ }
+ else:
+ topology["nodes"][rift_vnfd.name + "__" + str(member_idx)] = {
"type": "VNF",
"VNF model": rift_vnfd.name
}
if action == rwdts.QueryAction.READ:
schema = RwVnfrYang.YangData_RwVnfr_VnfrConsole_Vnfr_Vdur.schema()
path_entry = schema.keyspec_to_entry(ks_path)
- self._log.debug("VDU Opdata path is {}".format(path_entry))
try:
console_url = yield from self._loop.run_in_executor(
def vnfds(self):
return {v.rift_vnfd_id: v.vnfd for v in self._vnfrs}
+ @property
+ def vnfr_ids(self):
+ return {v.rift_vnfd_id: v.openmano_vnfd_id for v in self._vnfrs}
+
@property
def vnfrs(self):
return self._vnfrs
@property
def openmano_nsd_yaml(self):
self._log.debug("Converting nsd %s from rift to openmano", self.nsd.id)
- openmano_nsd = rift2openmano.rift2openmano_nsd(self.nsd, self.vnfds)
+ openmano_nsd = rift2openmano.rift2openmano_nsd(self.nsd, self.vnfds,self.vnfr_ids)
return yaml.safe_dump(openmano_nsd, default_flow_style=False)