From c1b666ef958fed2ab60df66d71f5f9cfed244a34 Mon Sep 17 00:00:00 2001 From: eleonorali Date: Mon, 12 Mar 2018 11:54:42 +0200 Subject: Support Dual stuck - for difference version (2) E2E Defect 430981 - ip_requirments for multiple ports with difference version wasn't supported Change-Id: If3e93f099900bc078de6da9092b9d1460609e232 Issue-ID: SDC-1096 Signed-off-by: eleonorali --- .../expectedoutputfiles/MainServiceTemplate.yaml | 668 +++++++++++++++++++++ .../neutron_dual_stacks/inputfiles/MANIFEST.json | 27 + .../inputfiles/Use_Case_1_base.env | 8 + .../inputfiles/Use_Case_1_base.yaml | 49 ++ .../inputfiles/Use_Case_1_module.env | 16 + .../inputfiles/Use_Case_1_module.yaml | 167 ++++++ 6 files changed, 935 insertions(+) create mode 100644 openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/neutron_dual_stacks/expectedoutputfiles/MainServiceTemplate.yaml create mode 100644 openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/neutron_dual_stacks/inputfiles/MANIFEST.json create mode 100644 openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/neutron_dual_stacks/inputfiles/Use_Case_1_base.env create mode 100644 openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/neutron_dual_stacks/inputfiles/Use_Case_1_base.yaml create mode 100644 openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/neutron_dual_stacks/inputfiles/Use_Case_1_module.env create mode 100644 openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/neutron_dual_stacks/inputfiles/Use_Case_1_module.yaml (limited to 'openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/neutron_dual_stacks') diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/neutron_dual_stacks/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/neutron_dual_stacks/expectedoutputfiles/MainServiceTemplate.yaml new file mode 100644 index 0000000000..a922d0ff52 --- /dev/null +++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/neutron_dual_stacks/expectedoutputfiles/MainServiceTemplate.yaml @@ -0,0 +1,668 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +metadata: + template_name: Main +imports: +- openecomp_heat_index: + file: openecomp-heat/_index.yml +node_types: + org.openecomp.resource.vfc.nodes.heat.dns: + derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server +topology_template: + inputs: + vf_module_id: + hidden: false + immutable: false + annotations: + source: + type: org.openecomp.annotations.Source + properties: + vf_module_label: + - Use_Case_1_module + source_type: HEAT + param_name: vf_module_id + type: string + description: Unique ID for this VF module instance + dns_int_bearer_ips: + hidden: false + immutable: false + annotations: + source: + type: org.openecomp.annotations.Source + properties: + vf_module_label: + - Use_Case_1_module + source_type: HEAT + param_name: dns_int_bearer_ips + type: list + description: DNS Bearer IP list + entry_schema: + type: string + vnf_name: + hidden: false + immutable: false + annotations: + source: + type: org.openecomp.annotations.Source + properties: + vf_module_label: + - Use_Case_1_module + - Use_Case_1_base + source_type: HEAT + param_name: vnf_name + type: string + description: Unique name for this VF instance + security_group: + hidden: false + immutable: false + annotations: + source: + type: org.openecomp.annotations.Source + properties: + vf_module_label: + - Use_Case_1_module + source_type: HEAT + param_name: security_group + type: string + description: security group + oam_protected_net_name: + hidden: false + immutable: false + annotations: + source: + type: org.openecomp.annotations.Source + properties: + vf_module_label: + - Use_Case_1_module + source_type: HEAT + param_name: oam_protected_net_name + type: string + description: OAM network where instaces will connect + dns_oam_protected_ips: + hidden: false + immutable: false + annotations: + source: + type: org.openecomp.annotations.Source + properties: + vf_module_label: + - Use_Case_1_module + source_type: HEAT + param_name: dns_oam_protected_ips + type: list + description: DNS OAM IP list + entry_schema: + type: string + int_bearer_net_name: + hidden: false + immutable: false + annotations: + source: + type: org.openecomp.annotations.Source + properties: + vf_module_label: + - Use_Case_1_module + source_type: HEAT + param_name: int_bearer_net_name + type: string + description: Bearer network where instaces will connect + dns_oam_protected_v6_ips: + hidden: false + immutable: false + annotations: + source: + type: org.openecomp.annotations.Source + properties: + vf_module_label: + - Use_Case_1_module + source_type: HEAT + param_name: dns_oam_protected_v6_ips + type: list + description: DNS OAM IP list + entry_schema: + type: string + dns_names: + hidden: false + immutable: false + annotations: + source: + type: org.openecomp.annotations.Source + properties: + vf_module_label: + - Use_Case_1_module + source_type: HEAT + param_name: dns_names + type: list + description: server name + entry_schema: + type: string + vnf_id: + hidden: false + immutable: false + annotations: + source: + type: org.openecomp.annotations.Source + properties: + vf_module_label: + - Use_Case_1_module + source_type: HEAT + param_name: vnf_id + type: string + description: Unique ID for this VF instance + dns_int_bearer_v6_ips: + hidden: false + immutable: false + annotations: + source: + type: org.openecomp.annotations.Source + properties: + vf_module_label: + - Use_Case_1_module + source_type: HEAT + param_name: dns_int_bearer_v6_ips + type: list + description: fixed IPv6 assignment for VM's on the Bearer network + entry_schema: + type: string + availability_zone_0: + hidden: false + immutable: false + annotations: + source: + type: org.openecomp.annotations.Source + properties: + vf_module_label: + - Use_Case_1_module + source_type: HEAT + param_name: availability_zone_0 + type: string + description: availability zone ID or Name + availability_zone_1: + hidden: false + immutable: false + annotations: + source: + type: org.openecomp.annotations.Source + properties: + vf_module_label: + - Use_Case_1_module + source_type: HEAT + param_name: availability_zone_1 + type: string + description: availability zone ID or Name + dns_image_name: + hidden: false + immutable: false + annotations: + source: + type: org.openecomp.annotations.Source + properties: + vf_module_label: + - Use_Case_1_module + source_type: HEAT + param_name: dns_image_name + type: string + description: server image + default: NIMBUS_DNS_3.0.2.qcow2 + dns_flavor_name: + hidden: false + immutable: false + annotations: + source: + type: org.openecomp.annotations.Source + properties: + vf_module_label: + - Use_Case_1_module + source_type: HEAT + param_name: dns_flavor_name + type: string + description: server flavor + default: nv.c4r4d80 + node_templates: + dns_0_oam_protected_port_0: + type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port + properties: + ip_requirements: + - ip_version: 4 + ip_count_required: + is_required: false + floating_ip_count_required: + is_required: true + - ip_version: 6 + ip_count_required: + is_required: false + floating_ip_count_required: + is_required: true + security_groups: + - get_input: security_group + mac_requirements: + mac_count_required: + is_required: false + allowed_address_pairs: + - ip_address: + get_input: + - dns_oam_protected_ips + - 5 + - ip_address: + get_input: + - dns_oam_protected_floating_v6_ip + - 5 + - ip_address: + get_input: + - dns_oam_protected_ips + - 5 + name: + str_replace: + template: VNF_NAME_dns_0_oam_protected_port_0 + params: + VNF_NAME: + get_input: vnf_name + network_role_tag: oam_protected + network: + get_input: oam_protected_net_name + requirements: + - binding: + capability: tosca.capabilities.network.Bindable + node: dns_server_0 + relationship: tosca.relationships.network.BindsTo + dns_0_oam_protected_port_1: + type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port + properties: + ip_requirements: + - ip_version: 4 + ip_count_required: + is_required: false + floating_ip_count_required: + is_required: false + - ip_version: 6 + ip_count_required: + is_required: true + floating_ip_count_required: + is_required: false + security_groups: + - get_input: security_group + fixed_ips: + - ip_address: + get_input: + - dns_int_bearer_ips_v6_ips + - 0 + mac_requirements: + mac_count_required: + is_required: false + name: + str_replace: + template: VNF_NAME_dns_0_oam_protected_port_1 + params: + VNF_NAME: + get_input: vnf_name + network_role_tag: oam_protected + network: + get_input: oam_protected_net_name + requirements: + - binding: + capability: tosca.capabilities.network.Bindable + node: dns_server_0 + relationship: tosca.relationships.network.BindsTo + dns_1_int_bearer_port: + type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port + properties: + ip_requirements: + - ip_version: 4 + ip_count_required: + is_required: true + floating_ip_count_required: + is_required: false + - ip_version: 6 + ip_count_required: + is_required: true + floating_ip_count_required: + is_required: true + security_groups: + - get_input: security_group + fixed_ips: + - ip_address: + get_input: + - dns_int_bearer_ips + - 0 + - ip_address: + get_input: + - dns_int_bearer_v6_ips + - 0 + mac_requirements: + mac_count_required: + is_required: false + allowed_address_pairs: + - ip_address: + get_input: + - dns_int_bearer_floating_v6_ip + - 0 + - ip_address: + get_input: + - dns_int_bearer_floating_v6_ip + - 0 + name: + str_replace: + template: VNF_NAME_dns_bearer_port + params: + VNF_NAME: + get_input: vnf_name + network_role_tag: int_bearer + network: + get_input: int_bearer_net_name + requirements: + - binding: + capability: tosca.capabilities.network.Bindable + node: dns_server_1 + relationship: tosca.relationships.network.BindsTo + DNS_SECURITY_GROUP: + type: org.openecomp.resource.vfc.rules.nodes.heat.network.neutron.SecurityRules + properties: + name: + str_replace: + template: VF_NAME_sec_grp_DNS + params: + VF_NAME: + get_input: vnf_name + description: security group + rules: + - protocol: tcp + ethertype: IPv4 + port_range_max: 65535 + remote_ip_prefix: 0.0.0.0/0 + direction: egress + port_range_min: 1 + - protocol: udp + ethertype: IPv4 + port_range_max: 65535 + remote_ip_prefix: 0.0.0.0/0 + direction: egress + port_range_min: 1 + - protocol: icmp + ethertype: IPv4 + remote_ip_prefix: 0.0.0.0/0 + direction: egress + - protocol: tcp + ethertype: IPv4 + port_range_max: 65535 + remote_ip_prefix: 0.0.0.0/0 + direction: ingress + port_range_min: 1 + - protocol: udp + ethertype: IPv4 + port_range_max: 65535 + remote_ip_prefix: 0.0.0.0/0 + direction: ingress + port_range_min: 1 + - protocol: icmp + ethertype: IPv4 + remote_ip_prefix: 0.0.0.0/0 + direction: ingress + - protocol: tcp + ethertype: IPv6 + port_range_max: 65535 + remote_ip_prefix: ::/0 + direction: egress + port_range_min: 1 + - protocol: udp + ethertype: IPv6 + port_range_max: 65535 + remote_ip_prefix: ::/0 + direction: egress + port_range_min: 1 + - protocol: icmp + ethertype: IPv6 + remote_ip_prefix: ::/0 + direction: egress + - protocol: tcp + ethertype: IPv6 + port_range_max: 65535 + remote_ip_prefix: ::/0 + direction: ingress + port_range_min: 1 + - protocol: udp + ethertype: IPv6 + port_range_max: 65535 + remote_ip_prefix: ::/0 + direction: ingress + port_range_min: 1 + - protocol: icmp + ethertype: IPv6 + remote_ip_prefix: ::/0 + direction: ingress + dns_server_1: + type: org.openecomp.resource.vfc.nodes.heat.dns + properties: + flavor: + get_input: dns_flavor_name + availability_zone: + get_input: availability_zone_1 + image: + get_input: dns_image_name + metadata: + vf_module_id: + get_input: vf_module_id + vnf_id: + get_input: vnf_id + vnf_name: + get_input: vnf_name + name: + get_input: + - dns_names + - 1 + dns_0_int_bearer_port: + type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port + properties: + ip_requirements: + - ip_version: 4 + ip_count_required: + is_required: true + floating_ip_count_required: + is_required: true + - ip_version: 6 + ip_count_required: + is_required: true + floating_ip_count_required: + is_required: false + security_groups: + - get_input: security_group + fixed_ips: + - ip_address: + get_input: + - dns_int_bearer_ips + - 0 + - ip_address: + get_input: + - dns_int_bearer_v6_ips + - 0 + mac_requirements: + mac_count_required: + is_required: false + allowed_address_pairs: + - ip_address: + get_input: + - dns_int_bearer + - 0 + - ip_address: + get_input: + - dns_int_bearer + - 0 + name: + str_replace: + template: VNF_NAME_dns_bearer_port + params: + VNF_NAME: + get_input: vnf_name + network_role_tag: int_bearer + network: + get_input: int_bearer_net_name + requirements: + - binding: + capability: tosca.capabilities.network.Bindable + node: dns_server_0 + relationship: tosca.relationships.network.BindsTo + dns_server_0: + type: org.openecomp.resource.vfc.nodes.heat.dns + properties: + flavor: + get_input: dns_flavor_name + availability_zone: + get_input: availability_zone_0 + image: + get_input: dns_image_name + metadata: + vf_module_id: + get_input: vf_module_id + vnf_id: + get_input: vnf_id + vnf_name: + get_input: vnf_name + name: + get_input: + - dns_names + - 0 + dns_1_oam_protected_port_0: + type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port + properties: + ip_requirements: + - ip_version: 4 + ip_count_required: + is_required: true + floating_ip_count_required: + is_required: true + - ip_version: 6 + ip_count_required: + is_required: false + floating_ip_count_required: + is_required: true + security_groups: + - get_input: security_group + fixed_ips: + - ip_address: + get_input: + - dns_oam_protected_ips + - 6 + - ip_address: + get_input: + - dns_oam_protected_ips + - 7 + - ip_address: + get_input: + - dns_oam_protected_ips + - 5 + mac_requirements: + mac_count_required: + is_required: false + allowed_address_pairs: + - ip_address: + get_input: + - dns_oam_protected_ips + - 5 + - ip_address: + get_input: + - dns_oam_protected_floating_v6_ip + - 5 + - ip_address: + get_input: + - dns_oam_protected_ips + - 5 + name: + str_replace: + template: VNF_NAME_dns_1_oam_protected_port_0 + params: + VNF_NAME: + get_input: vnf_name + network_role_tag: oam_protected + network: + get_input: oam_protected_net_name + requirements: + - binding: + capability: tosca.capabilities.network.Bindable + node: dns_server_1 + relationship: tosca.relationships.network.BindsTo + dns_1_oam_protected_port_1: + type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port + properties: + ip_requirements: + - ip_version: 4 + ip_count_required: + is_required: true + floating_ip_count_required: + is_required: true + - ip_version: 6 + ip_count_required: + is_required: true + floating_ip_count_required: + is_required: true + security_groups: + - get_input: security_group + fixed_ips: + - ip_address: + get_input: + - dns_oam_protected_v6_ips + - 6 + - ip_address: + get_input: + - dns_oam_protected_ips + - 7 + - ip_address: + get_input: + - dns_oam_protected_ips + - 5 + mac_requirements: + mac_count_required: + is_required: false + allowed_address_pairs: + - ip_address: + get_input: + - dns_oam_protected_floating_v6_ip + - 4 + - ip_address: + get_input: + - dns_oam_protected_ips + - 5 + - ip_address: + get_input: + - dns_oam_protected_floating_v6_ip + - 5 + name: + str_replace: + template: VNF_NAME_dns_1_oam_protected_port_1 + params: + VNF_NAME: + get_input: vnf_name + network_role_tag: oam_protected + network: + get_input: oam_protected_net_name + requirements: + - binding: + capability: tosca.capabilities.network.Bindable + node: dns_server_1 + relationship: tosca.relationships.network.BindsTo + groups: + Use_Case_1_base_group: + type: org.openecomp.groups.heat.HeatStack + properties: + heat_file: ../Artifacts/Use_Case_1_base.yaml + description: | + Base HOT template to create The Security Group for the the DNS VNF + members: + - DNS_SECURITY_GROUP + Use_Case_1_module_group: + type: org.openecomp.groups.heat.HeatStack + properties: + heat_file: ../Artifacts/Use_Case_1_module.yaml + description: | + nested DNS template for a single VM + all parameters are passed from calling heat template of resourcegroup + members: + - dns_0_oam_protected_port_0 + - dns_0_oam_protected_port_1 + - dns_1_int_bearer_port + - dns_server_1 + - dns_0_int_bearer_port + - dns_server_0 + - dns_1_oam_protected_port_0 + - dns_1_oam_protected_port_1 + outputs: + security_group: + description: UUID of DNS Resource SecurityGroup + value: DNS_SECURITY_GROUP \ No newline at end of file diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/neutron_dual_stacks/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/neutron_dual_stacks/inputfiles/MANIFEST.json new file mode 100644 index 0000000000..670b5fbfaf --- /dev/null +++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/neutron_dual_stacks/inputfiles/MANIFEST.json @@ -0,0 +1,27 @@ +{ + "name": "multiple_not_nested", + "description": "multiple heat files in zip, no nesting", + "version": "2013-05-23", + "data": [ + { + "file": "Use_Case_1_base.yaml", + "type": "HEAT", + "data": [ + { + "file": "Use_Case_1_base.env", + "type": "HEAT_ENV" + } + ] + }, + { + "file": "Use_Case_1_module.yaml", + "type": "HEAT", + "data": [ + { + "file": "Use_Case_1_module.env", + "type": "HEAT_ENV" + } + ] + } + ] +} \ No newline at end of file diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/neutron_dual_stacks/inputfiles/Use_Case_1_base.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/neutron_dual_stacks/inputfiles/Use_Case_1_base.env new file mode 100644 index 0000000000..46862c461e --- /dev/null +++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/neutron_dual_stacks/inputfiles/Use_Case_1_base.env @@ -0,0 +1,8 @@ +##NIMBUS - DNS Base Template ENV File +#AUTHORS: + +##################### +parameters: +##################### + + vnf_name: 'MyDNS01' \ No newline at end of file diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/neutron_dual_stacks/inputfiles/Use_Case_1_base.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/neutron_dual_stacks/inputfiles/Use_Case_1_base.yaml new file mode 100644 index 0000000000..75eaf41108 --- /dev/null +++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/neutron_dual_stacks/inputfiles/Use_Case_1_base.yaml @@ -0,0 +1,49 @@ +heat_template_version: 2015-04-30 +#Nimbus DNS Base Template +#AUTHORS: +description: > + Base HOT template to create The Security Group for the the DNS VNF + +##################### +parameters: +##################### + +## GLOBAL//Basic Parameters + vnf_name: + type: string + description: Unique name for this VF instance +# For manual spinups, value must be in the ENV file. Must be removed from ENV before uploading to ASDC + +##################### +resources: +##################### + + DNS_SECURITY_GROUP: + type: OS::Neutron::SecurityGroup + properties: + description: security group + name: + str_replace: + template: VF_NAME_sec_grp_DNS + params: + VF_NAME: {get_param: vnf_name} + rules: [{"direction": egress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": 0.0.0.0/0}, + {"direction": egress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": 0.0.0.0/0}, + {"direction": egress, "ethertype": IPv4, "protocol": icmp, "remote_ip_prefix": 0.0.0.0/0}, + {"direction": ingress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": 0.0.0.0/0}, + {"direction": ingress, "ethertype": IPv4, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": 0.0.0.0/0}, + {"direction": ingress, "ethertype": IPv4, "protocol": icmp, "remote_ip_prefix": 0.0.0.0/0}, + {"direction": egress, "ethertype": IPv6, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": "::/0"}, + {"direction": egress, "ethertype": IPv6, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": "::/0"}, + {"direction": egress, "ethertype": IPv6, "protocol": icmp, "remote_ip_prefix": "::/0"}, + {"direction": ingress, "ethertype": IPv6, "port_range_min": 1, "port_range_max": 65535, "protocol": tcp, "remote_ip_prefix": "::/0"}, + {"direction": ingress, "ethertype": IPv6, "port_range_min": 1, "port_range_max": 65535, "protocol": udp, "remote_ip_prefix": "::/0"}, + {"direction": ingress, "ethertype": IPv6, "protocol": icmp, "remote_ip_prefix": "::/0"} + ] + + +outputs: + security_group: + description: UUID of DNS Resource SecurityGroup + value: { get_resource: DNS_SECURITY_GROUP } + diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/neutron_dual_stacks/inputfiles/Use_Case_1_module.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/neutron_dual_stacks/inputfiles/Use_Case_1_module.env new file mode 100644 index 0000000000..f2c270f0c0 --- /dev/null +++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/neutron_dual_stacks/inputfiles/Use_Case_1_module.env @@ -0,0 +1,16 @@ +parameters: + dns_image_name: NIMBUS_DNS_3.0.2.qcow2 + dns_flavor_name: nv.c4r4d80 +# oam_protected_net_name: +# int_bearer_net_name: +# dns_oam_protected_ips: +# dns_int_bearer_ips: +# dns_int_bearer_v6_ips: +# dns_names: +# security_group: +# availability_zone_0: rdm3-kvm-az01 +# availability_zone_1: rdm3-kvm-az02 +# vnf_name: 'zrdm3mdns01' +# vnf_id: 'dummy' +# vf_module_id: 'dummy' + diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/neutron_dual_stacks/inputfiles/Use_Case_1_module.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/neutron_dual_stacks/inputfiles/Use_Case_1_module.yaml new file mode 100644 index 0000000000..b787785643 --- /dev/null +++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/neutron_dual_stacks/inputfiles/Use_Case_1_module.yaml @@ -0,0 +1,167 @@ +heat_template_version: 2014-10-16 + +description: | + nested DNS template for a single VM + all parameters are passed from calling heat template of resourcegroup + +parameters: + dns_image_name: + type: string + description: server image + dns_flavor_name: + type: string + description: server flavor + oam_protected_net_name: + type: string + description: OAM network where instaces will connect + int_bearer_net_name: + type: string + description: Bearer network where instaces will connect + dns_oam_protected_ips: + type: comma_delimited_list + description: DNS OAM IP list + dns_oam_protected_v6_ips: + type: comma_delimited_list + description: DNS OAM IP list + dns_int_bearer_ips: + type: comma_delimited_list + description: DNS Bearer IP list + dns_int_bearer_v6_ips: + type: comma_delimited_list + description: fixed IPv6 assignment for VM's on the Bearer network + dns_names: + type: comma_delimited_list + description: server name + security_group: + type: string + description: security group + availability_zone_0: + type: string + description: availability zone ID or Name + availability_zone_1: + type: string + description: availability zone ID or Name + vnf_name: + type: string + description: Unique name for this VF instance +# For manual spinups, value must be in the ENV file. Must be removed from ENV before uploading to ASDC + vnf_id: + type: string + description: Unique ID for this VF instance +# For manual spinups, value must be in the ENV file. Must be removed from ENV before uploading to ASDC + vf_module_id: + type: string + description: Unique ID for this VF module instance +# For manual spinups, value must be in the ENV file. Must be removed from ENV before uploading to ASDC + +resources: + + dns_0_oam_protected_port_0: + type: OS::Neutron::Port + properties: + name: + str_replace: + template: VNF_NAME_dns_0_oam_protected_port_0 + params: + VNF_NAME: {get_param: vnf_name} + network: { get_param: oam_protected_net_name } + allowed_address_pairs: [{ "ip_address": { get_param: [ dns_oam_protected_ips, 5 ]}}, { "ip_address": { get_param: [ dns_oam_protected_floating_v6_ip, 5 ]}}, { "ip_address": { get_param: [ dns_oam_protected_ips, 5 ]}}] + security_groups: [{ get_param: security_group }] + + dns_0_oam_protected_port_1: + type: OS::Neutron::Port + properties: + name: + str_replace: + template: VNF_NAME_dns_0_oam_protected_port_1 + params: + VNF_NAME: {get_param: vnf_name} + network: { get_param: oam_protected_net_name } + fixed_ips: [{ "ip_address": { get_param: [ dns_int_bearer_ips_v6_ips, 0 ]}}] + security_groups: [{ get_param: security_group }] + + dns_0_int_bearer_port: + type: OS::Neutron::Port + properties: + name: + str_replace: + template: VNF_NAME_dns_bearer_port + params: + VNF_NAME: {get_param: vnf_name} + network: { get_param: int_bearer_net_name } + fixed_ips: [{ "ip_address": { get_param: [ dns_int_bearer_ips, 0 ]}}, { "ip_address": { get_param: [ dns_int_bearer_v6_ips, 0 ]}}] + allowed_address_pairs: [{ "ip_address": { get_param: [ dns_int_bearer, 0 ]}}, { "ip_address": { get_param: [ dns_int_bearer, 0 ]}}] + security_groups: [{ get_param: security_group }] + + dns_server_0: + type: OS::Nova::Server + properties: + name: { get_param: [ dns_names, 0 ] } + image: { get_param: dns_image_name } + flavor: { get_param: dns_flavor_name } + availability_zone: { get_param: availability_zone_0 } + networks: + - port: { get_resource: dns_0_oam_protected_port_0 } + - port: { get_resource: dns_0_oam_protected_port_1 } + - port: { get_resource: dns_0_int_bearer_port } + metadata: + vnf_id: { get_param: vnf_id } + vf_module_id: { get_param: vf_module_id } + vnf_name: {get_param: vnf_name } + + dns_1_oam_protected_port_0: + type: OS::Neutron::Port + properties: + name: + str_replace: + template: VNF_NAME_dns_1_oam_protected_port_0 + params: + VNF_NAME: {get_param: vnf_name} + network: { get_param: oam_protected_net_name } + fixed_ips: [{ "ip_address": { get_param: [ dns_oam_protected_ips, 6 ]}}, { "ip_address": { get_param: [ dns_oam_protected_ips, 7 ]}}, { "ip_address": { get_param: [ dns_oam_protected_ips, 5 ]}}] + allowed_address_pairs: [{ "ip_address": { get_param: [ dns_oam_protected_ips, 5 ]}}, { "ip_address": { get_param: [ dns_oam_protected_floating_v6_ip, 5 ]}}, { "ip_address": { get_param: [ dns_oam_protected_ips, 5 ]}}] + security_groups: [{ get_param: security_group }] + + dns_1_oam_protected_port_1: + type: OS::Neutron::Port + properties: + name: + str_replace: + template: VNF_NAME_dns_1_oam_protected_port_1 + params: + VNF_NAME: {get_param: vnf_name} + network: { get_param: oam_protected_net_name } + fixed_ips: [{ "ip_address": { get_param: [ dns_oam_protected_v6_ips, 6 ]}}, { "ip_address": { get_param: [ dns_oam_protected_ips, 7 ]}}, { "ip_address": { get_param: [ dns_oam_protected_ips, 5 ]}}] + allowed_address_pairs: [{ "ip_address": { get_param: [ dns_oam_protected_floating_v6_ip, 4 ]}}, { "ip_address": { get_param: [ dns_oam_protected_ips, 5 ]}}, { "ip_address": { get_param: [ dns_oam_protected_floating_v6_ip, 5 ]}}] + security_groups: [{ get_param: security_group }] + + dns_1_int_bearer_port: + type: OS::Neutron::Port + properties: + name: + str_replace: + template: VNF_NAME_dns_bearer_port + params: + VNF_NAME: {get_param: vnf_name} + network: { get_param: int_bearer_net_name } + fixed_ips: [{ "ip_address": { get_param: [ dns_int_bearer_ips, 0 ]}}, { "ip_address": { get_param: [ dns_int_bearer_v6_ips, 0 ]}}] + allowed_address_pairs: [{ "ip_address": { get_param: [ dns_int_bearer_floating_v6_ip, 0 ]}}, { "ip_address": { get_param: [ dns_int_bearer_floating_v6_ip, 0 ]}}] + security_groups: [{ get_param: security_group }] + + dns_server_1: + type: OS::Nova::Server + properties: + name: { get_param: [ dns_names, 1 ] } + image: { get_param: dns_image_name } + flavor: { get_param: dns_flavor_name } + availability_zone: { get_param: availability_zone_1 } + networks: + - port: { get_resource: dns_1_oam_protected_port_0 } + - port: { get_resource: dns_1_oam_protected_port_1 } + - port: { get_resource: dns_1_int_bearer_port } + metadata: + vnf_id: { get_param: vnf_id } + vf_module_id: { get_param: vf_module_id } + vnf_name: {get_param: vnf_name } + + -- cgit 1.2.3-korg