+ def _add_vnf_metadata(self, preload):
+ vnf_meta = preload["input"]["vnf-topology-information"]["vnf-topology-identifier"]
+ vnf_meta["vnf-name"] = self.replace("vnf_name")
+ vnf_meta["generic-vnf-type"] = self.replace(
+ "vnf-type",
+ "VALUE FOR: Concatenation of <Service Name>/"
+ "<VF Instance Name> MUST MATCH SDC",
+ )
+ vnf_meta["vnf-type"] = self.replace(
+ "vf-module-model-name", "VALUE FOR: <vfModuleModelName> from CSAR or SDC"
+ )
+
+ def add_floating_ips(self, network_template, network):
+ # only one floating IP is really supported, in the preload model
+ # so for now we'll just use the last one. We might revisit this
+ # and if multiple floating params exist, then come up with an
+ # approach to pick just one
+ for ip in network.floating_ips:
+ key = "floating-ip" if ip.ip_version == 4 else "floating-ip-v6"
+ network_template[key] = self.replace(ip.param, single=True)
+
+ def add_fixed_ips(self, network_template, port):
+ for ip in port.fixed_ips:
+ if ip.ip_version == 4:
+ network_template["network-ips"].append(
+ {"ip-address": self.replace(ip.param, single=True)}
+ )
+ network_template["ip-count"] += 1
+ else:
+ network_template["network-ips-v6"].append(
+ {"ip-address": self.replace(ip.param, single=True)}
+ )
+ network_template["ip-count-ipv6"] += 1
+
+ def _add_availability_zones(self, preload, vnf_module):