From f5f13c4f6b6fe3b4d98e349dfd7db59339803436 Mon Sep 17 00:00:00 2001 From: Michael Lando Date: Sun, 19 Feb 2017 12:35:04 +0200 Subject: push addional code Change-Id: Ia427bb3460cda3a896f8faced2de69eaf3807b74 Signed-off-by: Michael Lando --- .../GlobalSubstitutionTypesServiceTemplate.yaml | 83 ++++ .../expectedoutputfiles/MainServiceTemplate.yaml | 401 ++++++++++++++++++ .../service_instance_1ServiceTemplate.yaml | 407 +++++++++++++++++++ .../service_instance_2ServiceTemplate.yaml | 319 +++++++++++++++ .../diffServiceTemplate/inputfiles/MANIFEST.json | 12 + .../diffServiceTemplate/inputfiles/OCS-fw.yml | 213 ++++++++++ .../GlobalSubstitutionTypesServiceTemplate.yaml | 64 +++ .../expectedoutputfiles/MainServiceTemplate.yaml | 300 ++++++++++++++ .../service_instanceServiceTemplate.yaml | 411 +++++++++++++++++++ .../oneServiceInstance/inputfiles/MANIFEST.json | 17 + .../inputfiles/lcp1_mss.oam-fw_si.yaml | 153 +++++++ .../lcp1_mss.oam-fw_si_with_comments.env | 26 ++ .../GlobalSubstitutionTypesServiceTemplate.yaml | 64 +++ .../expectedoutputfiles/MainServiceTemplate.yaml | 441 ++++++++++++++++++++ .../service_instance_1ServiceTemplate.yaml | 407 +++++++++++++++++++ .../service_instance_2ServiceTemplate.yaml | 407 +++++++++++++++++++ .../sameServiceTemplate/inputfiles/MANIFEST.json | 12 + .../sameServiceTemplate/inputfiles/OCS-fw.yml | 213 ++++++++++ .../GlobalSubstitutionTypesServiceTemplate.yaml | 71 ++++ .../expectedoutputfiles/MainServiceTemplate.yaml | 407 +++++++++++++++++++ .../service_instanceServiceTemplate.yaml | 451 +++++++++++++++++++++ .../sharedNetworkMulti/inputfiles/MANIFEST.json | 17 + .../sharedNetworkMulti/inputfiles/OCS-fw.yml | 173 ++++++++ .../sharedNetworkMulti/inputfiles/network_base.yml | 47 +++ .../GlobalSubstitutionTypesServiceTemplate.yaml | 154 +++++++ .../expectedoutputfiles/MainServiceTemplate.yaml | 90 ++++ .../expectedoutputfiles/OCS-fwServiceTemplate.yaml | 294 ++++++++++++++ .../service_instanceServiceTemplate.yaml | 275 +++++++++++++ .../sharedNetworkNested/inputfiles/MANIFEST.json | 16 + .../sharedNetworkNested/inputfiles/OCS-fw.yml | 163 ++++++++ .../sharedNetworkNested/inputfiles/main.yml | 30 ++ 31 files changed, 6138 insertions(+) create mode 100644 openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/diffServiceTemplate/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml create mode 100644 openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/diffServiceTemplate/expectedoutputfiles/MainServiceTemplate.yaml create mode 100644 openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/diffServiceTemplate/expectedoutputfiles/service_instance_1ServiceTemplate.yaml create mode 100644 openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/diffServiceTemplate/expectedoutputfiles/service_instance_2ServiceTemplate.yaml create mode 100644 openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/diffServiceTemplate/inputfiles/MANIFEST.json create mode 100644 openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/diffServiceTemplate/inputfiles/OCS-fw.yml create mode 100644 openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/oneServiceInstance/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml create mode 100644 openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/oneServiceInstance/expectedoutputfiles/MainServiceTemplate.yaml create mode 100644 openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/oneServiceInstance/expectedoutputfiles/service_instanceServiceTemplate.yaml create mode 100644 openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/oneServiceInstance/inputfiles/MANIFEST.json create mode 100644 openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/oneServiceInstance/inputfiles/lcp1_mss.oam-fw_si.yaml create mode 100644 openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/oneServiceInstance/inputfiles/lcp1_mss.oam-fw_si_with_comments.env create mode 100644 openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sameServiceTemplate/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml create mode 100644 openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sameServiceTemplate/expectedoutputfiles/MainServiceTemplate.yaml create mode 100644 openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sameServiceTemplate/expectedoutputfiles/service_instance_1ServiceTemplate.yaml create mode 100644 openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sameServiceTemplate/expectedoutputfiles/service_instance_2ServiceTemplate.yaml create mode 100644 openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sameServiceTemplate/inputfiles/MANIFEST.json create mode 100644 openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sameServiceTemplate/inputfiles/OCS-fw.yml create mode 100644 openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkMulti/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml create mode 100644 openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkMulti/expectedoutputfiles/MainServiceTemplate.yaml create mode 100644 openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkMulti/expectedoutputfiles/service_instanceServiceTemplate.yaml create mode 100644 openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkMulti/inputfiles/MANIFEST.json create mode 100644 openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkMulti/inputfiles/OCS-fw.yml create mode 100644 openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkMulti/inputfiles/network_base.yml create mode 100644 openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkNested/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml create mode 100644 openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkNested/expectedoutputfiles/MainServiceTemplate.yaml create mode 100644 openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkNested/expectedoutputfiles/OCS-fwServiceTemplate.yaml create mode 100644 openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkNested/expectedoutputfiles/service_instanceServiceTemplate.yaml create mode 100644 openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkNested/inputfiles/MANIFEST.json create mode 100644 openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkNested/inputfiles/OCS-fw.yml create mode 100644 openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkNested/inputfiles/main.yml (limited to 'openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance') diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/diffServiceTemplate/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/diffServiceTemplate/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml new file mode 100644 index 0000000000..d5a177bddb --- /dev/null +++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/diffServiceTemplate/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml @@ -0,0 +1,83 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +metadata: + template_name: GlobalSubstitutionTypes +imports: + ContrailComputeGlobalTypes: + file: ContrailComputeGlobalTypesServiceTemplate.yaml + CinderVolumeGlobalTypes: + file: CinderVolumeGlobalTypesServiceTemplate.yaml + ContrailVirtualNetworkGlobalType: + file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml + AbstractSubstituteGlobalTypes: + file: AbstractSubstituteGlobalTypesServiceTemplate.yaml + ContrailPortGlobalTypes: + file: ContrailPortGlobalTypesServiceTemplate.yaml + NeutronPortGlobalTypes: + file: NeutronPortGlobalTypesServiceTemplate.yaml + NeutronNetGlobalTypes: + file: NeutronNetGlobalTypesServiceTemplate.yaml + CommonGlobalTypes: + file: CommonGlobalTypesServiceTemplate.yaml + ContrailAbstractSubstituteGlobalTypes: + file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml + ContrailNetworkRuleGlobalType: + file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml + NeutronSecurityRulesGlobalTypes: + file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml + NovaServerGlobalTypes: + file: NovaServerGlobalTypesServiceTemplate.yaml + ContrailV2VirtualMachineInterfaceGlobalType: + file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml +node_types: + org.openecomp.resource.vfc.nodes.heat.compute_service_template_1: + derived_from: org.openecomp.resource.vfc.nodes.heat.contrail.Compute + org.openecomp.resource.abstract.nodes.heat.service_template_2: + derived_from: org.openecomp.resource.abstract.nodes.contrail.AbstractSubstitute + requirements: + - link_port_0: + capability: tosca.capabilities.network.Linkable + node: tosca.nodes.Root + relationship: tosca.relationships.network.LinksTo + occurrences: + - 1 + - 1 + - link_port_1: + capability: tosca.capabilities.network.Linkable + node: tosca.nodes.Root + relationship: tosca.relationships.network.LinksTo + occurrences: + - 1 + - 1 + org.openecomp.resource.abstract.nodes.heat.service_template_1: + derived_from: org.openecomp.resource.abstract.nodes.contrail.AbstractSubstitute + requirements: + - link_port_0: + capability: tosca.capabilities.network.Linkable + node: tosca.nodes.Root + relationship: tosca.relationships.network.LinksTo + occurrences: + - 1 + - 1 + - link_port_1: + capability: tosca.capabilities.network.Linkable + node: tosca.nodes.Root + relationship: tosca.relationships.network.LinksTo + occurrences: + - 1 + - 1 + - link_port_2: + capability: tosca.capabilities.network.Linkable + node: tosca.nodes.Root + relationship: tosca.relationships.network.LinksTo + occurrences: + - 1 + - 1 + - link_port_3: + capability: tosca.capabilities.network.Linkable + node: tosca.nodes.Root + relationship: tosca.relationships.network.LinksTo + occurrences: + - 1 + - 1 + org.openecomp.resource.vfc.nodes.heat.st: + derived_from: org.openecomp.resource.vfc.nodes.heat.contrail.Compute \ 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/contrail2serviceinstance/diffServiceTemplate/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/diffServiceTemplate/expectedoutputfiles/MainServiceTemplate.yaml new file mode 100644 index 0000000000..a96c947d9d --- /dev/null +++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/diffServiceTemplate/expectedoutputfiles/MainServiceTemplate.yaml @@ -0,0 +1,401 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +metadata: + template_name: Main +imports: + ContrailComputeGlobalTypes: + file: ContrailComputeGlobalTypesServiceTemplate.yaml + CinderVolumeGlobalTypes: + file: CinderVolumeGlobalTypesServiceTemplate.yaml + ContrailVirtualNetworkGlobalType: + file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml + AbstractSubstituteGlobalTypes: + file: AbstractSubstituteGlobalTypesServiceTemplate.yaml + ContrailPortGlobalTypes: + file: ContrailPortGlobalTypesServiceTemplate.yaml + GlobalSubstitutionTypes: + file: GlobalSubstitutionTypesServiceTemplate.yaml + NeutronPortGlobalTypes: + file: NeutronPortGlobalTypesServiceTemplate.yaml + NeutronNetGlobalTypes: + file: NeutronNetGlobalTypesServiceTemplate.yaml + CommonGlobalTypes: + file: CommonGlobalTypesServiceTemplate.yaml + ContrailAbstractSubstituteGlobalTypes: + file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml + ContrailNetworkRuleGlobalType: + file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml + NeutronSecurityRulesGlobalTypes: + file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml + NovaServerGlobalTypes: + file: NovaServerGlobalTypesServiceTemplate.yaml + ContrailV2VirtualMachineInterfaceGlobalType: + file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml +topology_template: + inputs: + service_policy_name: + hidden: false + immutable: false + type: string + description: Policy Name + st_static_routes_list: + hidden: false + immutable: false + type: string + description: List of static routes enabled-disabled + st_type: + hidden: false + immutable: false + type: string + description: service type + st_service_interface_type_list: + hidden: false + immutable: false + type: string + description: List of interface types + st_mode: + hidden: false + immutable: false + type: string + description: service mode + Cricket_OCS_protected_net_id: + hidden: false + immutable: false + type: string + description: Name of Cricket OCS network + oam_mgmt_net_0_id: + hidden: false + immutable: false + type: string + description: Name of OAM network + start_dst_ports: + hidden: false + immutable: false + type: float + description: Start of dst port + st_flavor: + hidden: false + immutable: false + type: string + description: Flavor + availability_zone_1: + hidden: false + immutable: false + type: string + description: availability zone + service_instance_name: + hidden: false + immutable: false + type: string + description: Service instance name + st_scaling: + hidden: false + immutable: false + type: string + description: Indicates whether service scaling is enabled + max_num_fw_instances: + hidden: false + immutable: false + type: float + description: maximum number of firewall instances for scaling + start_src_ports: + hidden: false + immutable: false + type: float + description: Start of src port + service_policy_direction: + hidden: false + immutable: false + type: string + description: Direction of Policy + st_name: + hidden: false + immutable: false + type: string + description: Name of service template + count: + hidden: false + immutable: false + HSL_direct_net_gateway: + hidden: false + immutable: false + type: string + description: HSL (Logging) network gateway address + st_image: + hidden: false + immutable: false + type: string + description: Name of the image + st_shared_ip_list: + hidden: false + immutable: false + type: string + description: List of shared ip enabled-disabled + prefix_0: + hidden: false + immutable: false + type: string + Cricket_OCS_direct_net_id: + hidden: false + immutable: false + type: string + description: Name of Cricket OCS network + oam_mgmt_net_1_id: + hidden: false + immutable: false + type: string + description: Name of OAM network + prefix_1: + hidden: false + immutable: false + type: string + end_src_ports: + hidden: false + immutable: false + type: float + description: End of src port + prefix_2: + hidden: false + immutable: false + type: string + end_dst_ports: + hidden: false + immutable: false + type: float + description: End of dst port + st_image_name: + hidden: false + immutable: false + type: string + description: Name of the image + HSL_direct_net_id: + hidden: false + immutable: false + type: string + description: Name of HSL (Logging) network + HSL_direct_net_cidr: + hidden: false + immutable: false + type: string + description: HSL (Logging) network address (CIDR notation) + node_templates: + service_instance_1: + type: org.openecomp.resource.abstract.nodes.heat.service_template_1 + directives: + - substitutable + properties: + flavor: + get_input: st_flavor + availability_zone: + get_input: availability_zone_1 + image_name: + get_input: st_image + service_template_filter: + substitute_service_template: service_instance_1ServiceTemplate.yaml + count: + get_input: max_num_fw_instances + scaling_enabled: false + mandatory: false + service_type: + get_input: st_type + static_routes_list: + - token: + - get_input: st_static_routes_list + - ',' + - 0 + - token: + - get_input: st_static_routes_list + - ',' + - 1 + - token: + - get_input: st_static_routes_list + - ',' + - 2 + - token: + - get_input: st_static_routes_list + - ',' + - 3 + service_template_name: + get_input: st_name + service_interface_type_list: + - token: + - management,left,right,other + - ',' + - 0 + - token: + - management,left,right,other + - ',' + - 1 + - token: + - management,left,right,other + - ',' + - 2 + - token: + - management,left,right,other + - ',' + - 3 + interface_list: + - virtual_network: + get_input: oam_mgmt_net_0_id + - virtual_network: + get_input: Cricket_OCS_direct_net_id + - virtual_network: hsl_direct_net + - static_routes: + - prefix: + get_input: prefix_0 + - prefix: + get_input: prefix_1 + - prefix: + get_input: prefix_2 + virtual_network: + get_input: oam_mgmt_net_1_id + service_instance_name: + get_input: service_instance_name + service_mode: + get_input: st_mode + shared_ip_list: + - token: + - get_input: st_shared_ip_list + - ',' + - 0 + - token: + - get_input: st_shared_ip_list + - ',' + - 1 + - token: + - get_input: st_shared_ip_list + - ',' + - 2 + - token: + - get_input: st_shared_ip_list + - ',' + - 3 + requirements: + - link_port_2: + capability: tosca.capabilities.network.Linkable + node: hsl_direct_net + relationship: tosca.relationships.network.LinksTo + - dependency: + capability: tosca.capabilities.Node + node: hsl_direct_net + relationship: tosca.relationships.DependsOn + service_instance_2: + type: org.openecomp.resource.abstract.nodes.heat.service_template_2 + directives: + - substitutable + properties: + flavor: + get_input: st_flavor + availability_zone: + get_input: availability_zone_1 + image_name: + get_input: st_image_name + service_template_filter: + substitute_service_template: service_instance_2ServiceTemplate.yaml + count: 9 + mandatory: true + service_type: + get_input: st_type + static_routes_list: + - token: + - get_input: st_static_routes_list + - ',' + - 0 + - token: + - get_input: st_static_routes_list + - ',' + - 1 + service_template_name: + get_input: st_name + service_interface_type_list: + - token: + - get_input: st_service_interface_type_list + - ',' + - 0 + - token: + - get_input: st_service_interface_type_list + - ',' + - 1 + interface_list: + - virtual_network: + get_input: oam_mgmt_net_0_id + - virtual_network: + get_input: Cricket_OCS_direct_net_id + service_instance_name: + get_input: service_instance_name + service_mode: + get_input: st_mode + shared_ip_list: + - token: + - get_input: st_shared_ip_list + - ',' + - 0 + - token: + - get_input: st_shared_ip_list + - ',' + - 1 + requirements: + - dependency: + capability: tosca.capabilities.Node + node: hsl_direct_net + relationship: tosca.relationships.DependsOn + hsl_direct_net: + type: org.openecomp.resource.vl.nodes.heat.network.contrail.VirtualNetwork + properties: + network_name: + get_input: HSL_direct_net_id + subnets: + hsl_ip_subnet: + cidr: + get_input: HSL_direct_net_cidr + gateway_ip: + get_input: HSL_direct_net_gateway + service_policy: + type: org.openecomp.resource.vfc.rules.nodes.heat.network.contrail.NetworkRules + properties: + entries: + policy_rule: + - src_ports: + - start_port: + get_input: start_src_ports + end_port: + get_input: end_src_ports + protocol: any + metadata: + get_attribute: + - service_instance_2 + - service_instance_name + action_list: + apply_service: + - service_instance_1 + dst_addresses: + - virtual_network: + get_input: Cricket_OCS_direct_net_id + dst_ports: + - start_port: + get_input: start_dst_ports + end_port: + get_input: end_dst_ports + src_addresses: + - virtual_network: + get_input: Cricket_OCS_protected_net_id + direction: + get_input: service_policy_direction + name: + get_input: service_policy_name + requirements: + - dependency: + capability: tosca.capabilities.Node + node: service_instance_1 + relationship: tosca.relationships.DependsOn + groups: + OCS-fw: + type: org.openecomp.groups.heat.HeatStack + properties: + heat_file: ../Artifacts/OCS-fw.yml + description: | + Based on the following reference for the HOT-DMZ-FW template: Version 3.5 8-10-2015 (Authors: Art Mishurov,am254u & Johhny Chen, jc3066) - HOT-DMZ-FW template that creates two DMZ networks (direct and protected) with a scaled out firewall service between the two. + members: + - service_instance_1 + - service_instance_2 + - hsl_direct_net + - service_policy \ 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/contrail2serviceinstance/diffServiceTemplate/expectedoutputfiles/service_instance_1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/diffServiceTemplate/expectedoutputfiles/service_instance_1ServiceTemplate.yaml new file mode 100644 index 0000000000..d84d6c6889 --- /dev/null +++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/diffServiceTemplate/expectedoutputfiles/service_instance_1ServiceTemplate.yaml @@ -0,0 +1,407 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +metadata: + template_name: service_instance_1 +imports: + ContrailComputeGlobalTypes: + file: ContrailComputeGlobalTypesServiceTemplate.yaml + CinderVolumeGlobalTypes: + file: CinderVolumeGlobalTypesServiceTemplate.yaml + ContrailVirtualNetworkGlobalType: + file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml + AbstractSubstituteGlobalTypes: + file: AbstractSubstituteGlobalTypesServiceTemplate.yaml + ContrailPortGlobalTypes: + file: ContrailPortGlobalTypesServiceTemplate.yaml + GlobalSubstitutionTypes: + file: GlobalSubstitutionTypesServiceTemplate.yaml + NeutronPortGlobalTypes: + file: NeutronPortGlobalTypesServiceTemplate.yaml + NeutronNetGlobalTypes: + file: NeutronNetGlobalTypesServiceTemplate.yaml + CommonGlobalTypes: + file: CommonGlobalTypesServiceTemplate.yaml + ContrailAbstractSubstituteGlobalTypes: + file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml + ContrailNetworkRuleGlobalType: + file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml + NeutronSecurityRulesGlobalTypes: + file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml + NovaServerGlobalTypes: + file: NovaServerGlobalTypesServiceTemplate.yaml + ContrailV2VirtualMachineInterfaceGlobalType: + file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml +topology_template: + inputs: + availability_zone: + hidden: false + immutable: false + type: string + description: Availability zone to create servers in + required: false + status: SUPPORTED + static_routes_list: + hidden: false + immutable: false + type: list + description: Static routes enabled + required: false + status: SUPPORTED + entry_schema: + type: boolean + availability_zone_enable: + hidden: false + immutable: false + type: boolean + description: Indicates availability zone is enabled + required: false + default: false + status: SUPPORTED + service_template_name: + hidden: false + immutable: false + type: string + description: Service template name + required: false + status: SUPPORTED + ordered_interfaces: + hidden: false + immutable: false + type: boolean + description: Indicates if service interface are ordered + required: false + default: false + status: SUPPORTED + flavor: + hidden: false + immutable: false + type: string + description: flavor + required: false + status: SUPPORTED + image_name: + hidden: false + immutable: false + type: string + description: Image name + required: true + status: SUPPORTED + service_type: + hidden: false + immutable: false + type: string + description: Service type + required: true + status: SUPPORTED + constraints: + - valid_values: + - firewall + - analyzer + - source-nat + - loadbalancer + service_interface_type_list: + hidden: false + immutable: false + type: list + description: List of interface types + required: true + status: SUPPORTED + entry_schema: + type: string + constraints: + - valid_values: + - management + - left + - right + - other + service_instance_name: + hidden: false + immutable: false + type: string + description: Service instance name + required: true + status: SUPPORTED + interface_list: + hidden: false + immutable: false + type: list + description: List of interfaces + required: false + status: SUPPORTED + entry_schema: + type: org.openecomp.datatypes.heat.network.contrail.InterfaceData + service_mode: + hidden: false + immutable: false + type: string + description: Service mode + required: true + status: SUPPORTED + constraints: + - valid_values: + - transparent + - in-network + - in-network-nat + shared_ip_list: + hidden: false + immutable: false + type: list + description: Shared ips enabled + required: false + status: SUPPORTED + entry_schema: + type: boolean + node_templates: + service_instance_1: + type: org.openecomp.resource.vfc.nodes.heat.compute_service_template_1 + properties: + flavor: + get_input: flavor + image_name: + get_input: image_name + availability_zone: + get_input: availability_zone + service_type: + get_input: service_type + availability_zone_enable: + get_input: availability_zone_enable + service_template_name: + get_input: service_template_name + service_instance_name: + get_input: service_instance_name + service_mode: + get_input: service_mode + port_0: + type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port + properties: + static_routes: + get_input: + - interface_list + - 0 + - static_routes + virtual_network: + get_input: + - interface_list + - 0 + - virtual_network + static_route: + get_input: + - static_routes_list + - 0 + allowed_address_pairs: + get_input: + - interface_list + - 0 + - allowed_address_pairs + shared_ip: + get_input: + - shared_ip_list + - 0 + ip_address: + get_input: + - interface_list + - 0 + - ip_address + interface_type: + get_input: + - service_interface_type_list + - 0 + requirements: + - binding: + capability: tosca.capabilities.network.Bindable + node: service_instance_1 + relationship: tosca.relationships.network.BindsTo + port_1: + type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port + properties: + static_routes: + get_input: + - interface_list + - 1 + - static_routes + virtual_network: + get_input: + - interface_list + - 1 + - virtual_network + static_route: + get_input: + - static_routes_list + - 1 + allowed_address_pairs: + get_input: + - interface_list + - 1 + - allowed_address_pairs + shared_ip: + get_input: + - shared_ip_list + - 1 + ip_address: + get_input: + - interface_list + - 1 + - ip_address + interface_type: + get_input: + - service_interface_type_list + - 1 + requirements: + - binding: + capability: tosca.capabilities.network.Bindable + node: service_instance_1 + relationship: tosca.relationships.network.BindsTo + port_2: + type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port + properties: + static_routes: + get_input: + - interface_list + - 2 + - static_routes + virtual_network: + get_input: + - interface_list + - 2 + - virtual_network + static_route: + get_input: + - static_routes_list + - 2 + allowed_address_pairs: + get_input: + - interface_list + - 2 + - allowed_address_pairs + shared_ip: + get_input: + - shared_ip_list + - 2 + ip_address: + get_input: + - interface_list + - 2 + - ip_address + interface_type: + get_input: + - service_interface_type_list + - 2 + requirements: + - binding: + capability: tosca.capabilities.network.Bindable + node: service_instance_1 + relationship: tosca.relationships.network.BindsTo + port_3: + type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port + properties: + static_routes: + get_input: + - interface_list + - 3 + - static_routes + virtual_network: + get_input: + - interface_list + - 3 + - virtual_network + static_route: + get_input: + - static_routes_list + - 3 + allowed_address_pairs: + get_input: + - interface_list + - 3 + - allowed_address_pairs + shared_ip: + get_input: + - shared_ip_list + - 3 + ip_address: + get_input: + - interface_list + - 3 + - ip_address + interface_type: + get_input: + - service_interface_type_list + - 3 + requirements: + - binding: + capability: tosca.capabilities.network.Bindable + node: service_instance_1 + relationship: tosca.relationships.network.BindsTo + groups: + service_instance_1: + type: org.openecomp.groups.heat.HeatStack + properties: + heat_file: ../Artifacts/OCS-fw.yml + members: + - service_instance_1 + - port_0 + - port_1 + - port_2 + - port_3 + outputs: + tenant_id: + description: Tenant id of the Service Instance + value: + get_attribute: + - service_instance_1 + - tenant_id + fq_name: + description: The FQ name of the service instance + value: + get_attribute: + - service_instance_1 + - fq_name + service_template_name: + description: Service Template of the Service Instance + value: + get_attribute: + - service_instance_1 + - service_template_name + show: + description: All attributes + value: + get_attribute: + - service_instance_1 + - show + active_vms: + description: Number of service VMs active for this Service Instance + value: + get_attribute: + - service_instance_1 + - active_vms + service_instance_name: + description: The name of the service instance + value: + get_attribute: + - service_instance_1 + - service_instance_name + virtual_machines: + description: Service VMs for the Service Instance + value: + get_attribute: + - service_instance_1 + - virtual_machines + status: + description: Status of the service instance + value: + get_attribute: + - service_instance_1 + - status + substitution_mappings: + node_type: org.openecomp.resource.abstract.nodes.heat.service_template_1 + requirements: + link_port_0: + - port_0 + - link + link_port_1: + - port_1 + - link + link_port_2: + - port_2 + - link + link_port_3: + - port_3 + - link \ 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/contrail2serviceinstance/diffServiceTemplate/expectedoutputfiles/service_instance_2ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/diffServiceTemplate/expectedoutputfiles/service_instance_2ServiceTemplate.yaml new file mode 100644 index 0000000000..3a2de0696f --- /dev/null +++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/diffServiceTemplate/expectedoutputfiles/service_instance_2ServiceTemplate.yaml @@ -0,0 +1,319 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +metadata: + template_name: service_instance_2 +imports: + ContrailComputeGlobalTypes: + file: ContrailComputeGlobalTypesServiceTemplate.yaml + CinderVolumeGlobalTypes: + file: CinderVolumeGlobalTypesServiceTemplate.yaml + ContrailVirtualNetworkGlobalType: + file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml + AbstractSubstituteGlobalTypes: + file: AbstractSubstituteGlobalTypesServiceTemplate.yaml + ContrailPortGlobalTypes: + file: ContrailPortGlobalTypesServiceTemplate.yaml + GlobalSubstitutionTypes: + file: GlobalSubstitutionTypesServiceTemplate.yaml + NeutronPortGlobalTypes: + file: NeutronPortGlobalTypesServiceTemplate.yaml + NeutronNetGlobalTypes: + file: NeutronNetGlobalTypesServiceTemplate.yaml + CommonGlobalTypes: + file: CommonGlobalTypesServiceTemplate.yaml + ContrailAbstractSubstituteGlobalTypes: + file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml + ContrailNetworkRuleGlobalType: + file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml + NeutronSecurityRulesGlobalTypes: + file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml + NovaServerGlobalTypes: + file: NovaServerGlobalTypesServiceTemplate.yaml + ContrailV2VirtualMachineInterfaceGlobalType: + file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml +topology_template: + inputs: + availability_zone: + hidden: false + immutable: false + type: string + description: Availability zone to create servers in + required: false + status: SUPPORTED + static_routes_list: + hidden: false + immutable: false + type: list + description: Static routes enabled + required: false + status: SUPPORTED + entry_schema: + type: boolean + availability_zone_enable: + hidden: false + immutable: false + type: boolean + description: Indicates availability zone is enabled + required: false + default: false + status: SUPPORTED + service_template_name: + hidden: false + immutable: false + type: string + description: Service template name + required: false + status: SUPPORTED + ordered_interfaces: + hidden: false + immutable: false + type: boolean + description: Indicates if service interface are ordered + required: false + default: false + status: SUPPORTED + flavor: + hidden: false + immutable: false + type: string + description: flavor + required: false + status: SUPPORTED + image_name: + hidden: false + immutable: false + type: string + description: Image name + required: true + status: SUPPORTED + service_type: + hidden: false + immutable: false + type: string + description: Service type + required: true + status: SUPPORTED + constraints: + - valid_values: + - firewall + - analyzer + - source-nat + - loadbalancer + service_interface_type_list: + hidden: false + immutable: false + type: list + description: List of interface types + required: true + status: SUPPORTED + entry_schema: + type: string + constraints: + - valid_values: + - management + - left + - right + - other + service_instance_name: + hidden: false + immutable: false + type: string + description: Service instance name + required: true + status: SUPPORTED + interface_list: + hidden: false + immutable: false + type: list + description: List of interfaces + required: false + status: SUPPORTED + entry_schema: + type: org.openecomp.datatypes.heat.network.contrail.InterfaceData + service_mode: + hidden: false + immutable: false + type: string + description: Service mode + required: true + status: SUPPORTED + constraints: + - valid_values: + - transparent + - in-network + - in-network-nat + shared_ip_list: + hidden: false + immutable: false + type: list + description: Shared ips enabled + required: false + status: SUPPORTED + entry_schema: + type: boolean + node_templates: + service_instance_2: + type: org.openecomp.resource.vfc.nodes.heat.st + properties: + flavor: + get_input: flavor + image_name: + get_input: image_name + availability_zone: + get_input: availability_zone + service_type: + get_input: service_type + availability_zone_enable: + get_input: availability_zone_enable + service_template_name: + get_input: service_template_name + service_instance_name: + get_input: service_instance_name + service_mode: + get_input: service_mode + port_0: + type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port + properties: + static_routes: + get_input: + - interface_list + - 0 + - static_routes + virtual_network: + get_input: + - interface_list + - 0 + - virtual_network + static_route: + get_input: + - static_routes_list + - 0 + allowed_address_pairs: + get_input: + - interface_list + - 0 + - allowed_address_pairs + shared_ip: + get_input: + - shared_ip_list + - 0 + ip_address: + get_input: + - interface_list + - 0 + - ip_address + interface_type: + get_input: + - service_interface_type_list + - 0 + requirements: + - binding: + capability: tosca.capabilities.network.Bindable + node: service_instance_2 + relationship: tosca.relationships.network.BindsTo + port_1: + type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port + properties: + static_routes: + get_input: + - interface_list + - 1 + - static_routes + virtual_network: + get_input: + - interface_list + - 1 + - virtual_network + static_route: + get_input: + - static_routes_list + - 1 + allowed_address_pairs: + get_input: + - interface_list + - 1 + - allowed_address_pairs + shared_ip: + get_input: + - shared_ip_list + - 1 + ip_address: + get_input: + - interface_list + - 1 + - ip_address + interface_type: + get_input: + - service_interface_type_list + - 1 + requirements: + - binding: + capability: tosca.capabilities.network.Bindable + node: service_instance_2 + relationship: tosca.relationships.network.BindsTo + groups: + service_instance_2: + type: org.openecomp.groups.heat.HeatStack + properties: + heat_file: ../Artifacts/OCS-fw.yml + members: + - service_instance_2 + - port_0 + - port_1 + outputs: + tenant_id: + description: Tenant id of the Service Instance + value: + get_attribute: + - service_instance_2 + - tenant_id + fq_name: + description: The FQ name of the service instance + value: + get_attribute: + - service_instance_2 + - fq_name + service_template_name: + description: Service Template of the Service Instance + value: + get_attribute: + - service_instance_2 + - service_template_name + show: + description: All attributes + value: + get_attribute: + - service_instance_2 + - show + active_vms: + description: Number of service VMs active for this Service Instance + value: + get_attribute: + - service_instance_2 + - active_vms + service_instance_name: + description: The name of the service instance + value: + get_attribute: + - service_instance_2 + - service_instance_name + virtual_machines: + description: Service VMs for the Service Instance + value: + get_attribute: + - service_instance_2 + - virtual_machines + status: + description: Status of the service instance + value: + get_attribute: + - service_instance_2 + - status + substitution_mappings: + node_type: org.openecomp.resource.abstract.nodes.heat.service_template_2 + requirements: + link_port_0: + - port_0 + - link + link_port_1: + - port_1 + - link \ 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/contrail2serviceinstance/diffServiceTemplate/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/diffServiceTemplate/inputfiles/MANIFEST.json new file mode 100644 index 0000000000..a26430ba72 --- /dev/null +++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/diffServiceTemplate/inputfiles/MANIFEST.json @@ -0,0 +1,12 @@ +{ + "name": "vMME_Small", + "description": "HOT template to create 2 cinder volume attachment", + "version": "2013-05-23", + "data": [ + { + "file": "OCS-fw.yml", + "type": "HEAT", + "isBase": "false" + } + ] +} diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/diffServiceTemplate/inputfiles/OCS-fw.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/diffServiceTemplate/inputfiles/OCS-fw.yml new file mode 100644 index 0000000000..725ba49459 --- /dev/null +++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/diffServiceTemplate/inputfiles/OCS-fw.yml @@ -0,0 +1,213 @@ +heat_template_version: 2013-05-23 + +description: > + Based on the following reference for the HOT-DMZ-FW template: + Version 3.5 8-10-2015 (Authors: Art Mishurov,am254u & Johhny Chen, jc3066) - HOT-DMZ-FW template that creates two DMZ networks (direct and protected) with a scaled out firewall service between the two. + +parameters: + HSL_direct_net_id: + type: string + description: Name of HSL (Logging) network + prefix_0: + type: string + prefix_1: + type: string + prefix_2: + type: string + HSL_direct_net_cidr: + type: string + description: HSL (Logging) network address (CIDR notation) + HSL_direct_net_gateway: + type: string + description: HSL (Logging) network gateway address + oam_mgmt_net_0_id: + type: string + description: Name of OAM network + oam_mgmt_net_1_id: + type: string + description: Name of OAM network + Cricket_OCS_direct_net_id: + type: string + description: Name of Cricket OCS network + Cricket_OCS_protected_net_id: + type: string + description: Name of Cricket OCS network + service_instance_name: + type: string + description: Service instance name + service_policy_name: + type: string + description: Policy Name + service_policy_direction: + type: string + description: Direction of Policy + start_src_ports: + type: number + description: Start of src port + end_src_ports: + type: number + description: End of src port + start_dst_ports: + type: number + description: Start of dst port + end_dst_ports: + type: number + description: End of dst port + st_name: + type: string + description: Name of service template + st_mode: + type: string + description: service mode + st_type: + type: string + description: service type + st_image: + type: string + description: Name of the image + st_image_name: + type: string + description: Name of the image + st_flavor: + type: string + description: Flavor + st_service_interface_type_list: + type: string + description: List of interface types + st_shared_ip_list: + type: string + description: List of shared ip enabled-disabled + st_static_routes_list: + type: string + description: List of static routes enabled-disabled + st_scaling: + type: string + description: Indicates whether service scaling is enabled + max_num_fw_instances: + type: number + description: maximum number of firewall instances for scaling + availability_zone_1: + type: string + description: availability zone + count: + type: integer + +resources: + + hsl_direct_net: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: HSL_direct_net_id } +# external: True + + hsl_ip_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: hsl_direct_net } + cidr: { get_param: HSL_direct_net_cidr } + gateway_ip: { get_param: HSL_direct_net_gateway } + + service_template_1: + type: OS::Contrail::ServiceTemplate + properties: + name: { get_param: st_name } + service_mode: { get_param: st_mode } + service_type: { get_param: st_type } + image_name: { get_param: st_image } + flavor: { get_param: st_flavor } + service_interface_type_list: { "Fn::Split" : [ ",", "management,left,right,other" ] } + shared_ip_list: { "Fn::Split" : [ ",", Ref: st_shared_ip_list ] } + static_routes_list: { "Fn::Split" : [ ",", Ref: st_static_routes_list ] } + service_scaling: n + + service_instance_1: + type: OS::Contrail::ServiceInstance + depends_on: [ hsl_ip_subnet] + properties: + name: { get_param: service_instance_name } + availability_zone: { get_param: availability_zone_1 } + service_template: { get_resource: service_template_1 } + scale_out: + max_instances: {get_param: max_num_fw_instances} + interface_list: [ + { + virtual_network: { get_param: oam_mgmt_net_0_id } + }, + { + virtual_network: { get_param: Cricket_OCS_direct_net_id } + }, + { + virtual_network: { get_resource: hsl_direct_net } + }, + { + virtual_network: {get_param: oam_mgmt_net_1_id}, + static_routes: [ + { "prefix": {get_param: prefix_0} }, + { "prefix": {get_param: prefix_1} }, + { "prefix": {get_param: prefix_2} }, + ], + } + ] + + service_template_2: + type: OS::Contrail::ServiceTemplate + properties: + name: { get_param: st_name } + service_mode: { get_param: st_mode } + service_type: { get_param: st_type } + image_name: { get_param: st_image_name } + flavor: { get_param: st_flavor } + service_interface_type_list: { "Fn::Split" : [ ",", Ref: st_service_interface_type_list ] } + shared_ip_list: { "Fn::Split" : [ ",", Ref: st_shared_ip_list ] } + static_routes_list: { "Fn::Split" : [ ",", Ref: st_static_routes_list ] } + + service_instance_2: + type: OS::Contrail::ServiceInstance + depends_on: [ hsl_ip_subnet] + properties: + name: { get_param: service_instance_name } + availability_zone: { get_param: availability_zone_1 } + service_template: { get_resource: service_template_2 } + scale_out: + max_instances: 9 + interface_list: [ + { + virtual_network: { get_param: oam_mgmt_net_0_id } + }, + { + virtual_network: { get_param: Cricket_OCS_direct_net_id } + } + ] + + service_policy: + type: OS::Contrail::NetworkPolicy + depends_on: [ service_instance_1 ] + properties: + name: { get_param: service_policy_name } + entries: + policy_rule: [ + { + "direction": { get_param: service_policy_direction }, + "protocol": "any", + "src_ports": [{"start_port": {get_param: start_src_ports}, "end_port": {get_param: end_src_ports}}], + "dst_ports": [{"start_port": {get_param: start_dst_ports}, "end_port": {get_param: end_dst_ports}}], + "dst_addresses": [{ "virtual_network": { get_param: Cricket_OCS_direct_net_id }}], + "action_list": { "apply_service": [{ get_resource: service_instance_1 }]}, + "src_addresses": [{ "virtual_network": { get_param: Cricket_OCS_protected_net_id }}], + "metadata": {get_attr: [service_instance_2, name]} + }, + ] + + service_policy_attach_direct_net: + type: OS::Contrail::AttachPolicy + depends_on: [ service_policy ] + properties: + network: { get_param: Cricket_OCS_direct_net_id } + policy: { get_attr: [service_policy, fq_name] } + + service_policy_attach_protected_net: + type: OS::Contrail::AttachPolicy + depends_on: [ service_policy ] + properties: + network: { get_param: Cricket_OCS_protected_net_id } + policy: { get_attr: [service_policy, fq_name] } \ 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/contrail2serviceinstance/oneServiceInstance/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/oneServiceInstance/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml new file mode 100644 index 0000000000..b00d3d8bc0 --- /dev/null +++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/oneServiceInstance/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml @@ -0,0 +1,64 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +metadata: + template_name: GlobalSubstitutionTypes +imports: + ContrailComputeGlobalTypes: + file: ContrailComputeGlobalTypesServiceTemplate.yaml + CinderVolumeGlobalTypes: + file: CinderVolumeGlobalTypesServiceTemplate.yaml + ContrailVirtualNetworkGlobalType: + file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml + AbstractSubstituteGlobalTypes: + file: AbstractSubstituteGlobalTypesServiceTemplate.yaml + ContrailPortGlobalTypes: + file: ContrailPortGlobalTypesServiceTemplate.yaml + NeutronPortGlobalTypes: + file: NeutronPortGlobalTypesServiceTemplate.yaml + NeutronNetGlobalTypes: + file: NeutronNetGlobalTypesServiceTemplate.yaml + CommonGlobalTypes: + file: CommonGlobalTypesServiceTemplate.yaml + ContrailAbstractSubstituteGlobalTypes: + file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml + ContrailNetworkRuleGlobalType: + file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml + NeutronSecurityRulesGlobalTypes: + file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml + NovaServerGlobalTypes: + file: NovaServerGlobalTypesServiceTemplate.yaml + ContrailV2VirtualMachineInterfaceGlobalType: + file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml +node_types: + org.openecomp.resource.abstract.nodes.heat.service_template: + derived_from: org.openecomp.resource.abstract.nodes.contrail.AbstractSubstitute + requirements: + - link_port_0: + capability: tosca.capabilities.network.Linkable + node: tosca.nodes.Root + relationship: tosca.relationships.network.LinksTo + occurrences: + - 1 + - 1 + - link_port_1: + capability: tosca.capabilities.network.Linkable + node: tosca.nodes.Root + relationship: tosca.relationships.network.LinksTo + occurrences: + - 1 + - 1 + - link_port_2: + capability: tosca.capabilities.network.Linkable + node: tosca.nodes.Root + relationship: tosca.relationships.network.LinksTo + occurrences: + - 1 + - 1 + - link_port_3: + capability: tosca.capabilities.network.Linkable + node: tosca.nodes.Root + relationship: tosca.relationships.network.LinksTo + occurrences: + - 1 + - 1 + org.openecomp.resource.vfc.nodes.heat.compute_service_template: + derived_from: org.openecomp.resource.vfc.nodes.heat.contrail.Compute \ 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/contrail2serviceinstance/oneServiceInstance/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/oneServiceInstance/expectedoutputfiles/MainServiceTemplate.yaml new file mode 100644 index 0000000000..016e4d3f70 --- /dev/null +++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/oneServiceInstance/expectedoutputfiles/MainServiceTemplate.yaml @@ -0,0 +1,300 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +metadata: + template_name: Main +imports: + ContrailComputeGlobalTypes: + file: ContrailComputeGlobalTypesServiceTemplate.yaml + CinderVolumeGlobalTypes: + file: CinderVolumeGlobalTypesServiceTemplate.yaml + ContrailVirtualNetworkGlobalType: + file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml + AbstractSubstituteGlobalTypes: + file: AbstractSubstituteGlobalTypesServiceTemplate.yaml + ContrailPortGlobalTypes: + file: ContrailPortGlobalTypesServiceTemplate.yaml + GlobalSubstitutionTypes: + file: GlobalSubstitutionTypesServiceTemplate.yaml + NeutronPortGlobalTypes: + file: NeutronPortGlobalTypesServiceTemplate.yaml + NeutronNetGlobalTypes: + file: NeutronNetGlobalTypesServiceTemplate.yaml + CommonGlobalTypes: + file: CommonGlobalTypesServiceTemplate.yaml + ContrailAbstractSubstituteGlobalTypes: + file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml + ContrailNetworkRuleGlobalType: + file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml + NeutronSecurityRulesGlobalTypes: + file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml + NovaServerGlobalTypes: + file: NovaServerGlobalTypesServiceTemplate.yaml + ContrailV2VirtualMachineInterfaceGlobalType: + file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml +topology_template: + inputs: + protected_net: + hidden: false + immutable: false + type: string + service_policy_name: + hidden: false + immutable: false + type: string + description: Policy Name + default: MNS-25180-L-02Shared_policy_direct_fw_protected_oam_1 + oam_direct_net_id: + hidden: false + immutable: false + type: string + description: Name of private network to be created + st_static_routes_list: + hidden: false + immutable: false + type: string + description: List of static routes enabled-disabled + default: True,True,True,True + st_type: + hidden: false + immutable: false + type: string + description: service type + default: firewall + st_service_interface_type_list: + hidden: false + immutable: false + type: string + description: List of interface types + default: management,left,right,other + oam_protected_net_id: + hidden: false + immutable: false + type: string + description: Name of private network to be created + st_mode: + hidden: false + immutable: false + type: string + description: service mode + default: in-network-nat + static_prefix_3_1: + hidden: false + immutable: false + type: string + description: prefix for static route + default: 107.239.80.0/21 + oam_hsl_net_id: + hidden: false + immutable: false + type: string + description: Name of private network to be created + start_dst_ports: + hidden: false + immutable: false + type: float + description: Start of dst port + default: -1 + st_flavor: + hidden: false + immutable: false + type: string + description: Flavor + default: lc.medium + st_scaling: + hidden: false + immutable: false + type: string + description: Indicates whether service scaling is enabled + default: 'True' + service_instance_name: + hidden: false + immutable: false + type: string + description: service instance name + max_num_fw_instances: + hidden: false + immutable: false + type: float + description: maximum number of firewall instances for scaling + default: 8 + start_src_ports: + hidden: false + immutable: false + type: float + description: Start of src port + default: -1 + availability_zone: + hidden: false + immutable: false + type: string + description: availability zone in form of Zone:Host + service_policy_direction: + hidden: false + immutable: false + type: string + description: Direction of Policy + default: <> + st_name: + hidden: false + immutable: false + type: string + description: service template name or ID + default: MNS-25180-L-02Shared_oam_fw_template_1 + st_availability_zone_enable_flag: + hidden: false + immutable: false + type: string + description: service template availablity_zone feature enable flag + default: 'True' + st_image: + hidden: false + immutable: false + type: string + description: Name of the image + default: NIMBUS_SRX_151X49-D303 + st_shared_ip_list: + hidden: false + immutable: false + type: string + description: List of shared ip enabled-disabled + default: False,True,False,False + oam_mgmt_net_id: + hidden: false + immutable: false + type: string + description: Name of private network to be created + end_src_ports: + hidden: false + immutable: false + type: float + description: End of src port + default: -1 + end_dst_ports: + hidden: false + immutable: false + type: float + description: End of dst port + default: -1 + node_templates: + service_instance: + type: org.openecomp.resource.abstract.nodes.heat.service_template + directives: + - substitutable + properties: + availability_zone: + get_input: availability_zone + static_routes_list: + - token: + - false;false;false;false + - ; + - 0 + - token: + - false;false;false;false + - ; + - 1 + - token: + - false;false;false;false + - ; + - 2 + - token: + - false;false;false;false + - ; + - 3 + availability_zone_enable: + get_input: st_availability_zone_enable_flag + service_template_name: + get_input: st_name + ordered_interfaces: true + flavor: + get_input: st_flavor + image_name: + get_input: st_image + service_template_filter: + substitute_service_template: service_instanceServiceTemplate.yaml + count: 5 + scaling_enabled: + get_input: st_scaling + mandatory: true + service_type: + get_input: st_type + service_interface_type_list: + - token: + - get_input: st_service_interface_type_list + - ',' + - 0 + - token: + - get_input: st_service_interface_type_list + - ',' + - 1 + - token: + - get_input: st_service_interface_type_list + - ',' + - 2 + - token: + - get_input: st_service_interface_type_list + - ',' + - 3 + interface_list: + - virtual_network: + get_input: oam_mgmt_net_id + - virtual_network: + get_input: oam_protected_net_id + - static_routes: + - prefix: + get_input: static_prefix_3_1 + virtual_network: + get_input: oam_direct_net_id + - virtual_network: + get_input: oam_hsl_net_id + service_instance_name: + get_input: service_instance_name + service_mode: + get_input: st_mode + shared_ip_list: + - true + - true + - false + - false + service_policy: + type: org.openecomp.resource.vfc.rules.nodes.heat.network.contrail.NetworkRules + properties: + entries: + policy_rule: + - src_ports: + - start_port: + get_input: start_src_ports + end_port: + get_input: end_src_ports + protocol: any + action_list: + apply_service: + - service_instance + dst_addresses: + - virtual_network: + get_input: oam_direct_net_id + dst_ports: + - start_port: + get_input: start_dst_ports + end_port: + get_input: end_dst_ports + src_addresses: + - virtual_network: + get_input: protected_net + direction: + get_input: service_policy_direction + name: + get_input: service_policy_name + requirements: + - dependency: + capability: tosca.capabilities.Node + node: service_instance + relationship: tosca.relationships.DependsOn + groups: + lcp1_mss.oam-fw_si: + type: org.openecomp.groups.heat.HeatStack + properties: + heat_file: ../Artifacts/lcp1_mss.oam-fw_si.yaml + description: | + Version 2.0 10-14-2015 (Authors: Art Mishurov,am254u & Johhny Chen, jc3066) - HOT-OAM-FW-SI template that creates two OAM networks (direct and protected) with a scaled out firewall service between the two. + members: + - service_instance + - service_policy \ 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/contrail2serviceinstance/oneServiceInstance/expectedoutputfiles/service_instanceServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/oneServiceInstance/expectedoutputfiles/service_instanceServiceTemplate.yaml new file mode 100644 index 0000000000..e9f2511604 --- /dev/null +++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/oneServiceInstance/expectedoutputfiles/service_instanceServiceTemplate.yaml @@ -0,0 +1,411 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +metadata: + template_name: service_instance +imports: + ContrailComputeGlobalTypes: + file: ContrailComputeGlobalTypesServiceTemplate.yaml + CinderVolumeGlobalTypes: + file: CinderVolumeGlobalTypesServiceTemplate.yaml + ContrailVirtualNetworkGlobalType: + file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml + AbstractSubstituteGlobalTypes: + file: AbstractSubstituteGlobalTypesServiceTemplate.yaml + ContrailPortGlobalTypes: + file: ContrailPortGlobalTypesServiceTemplate.yaml + GlobalSubstitutionTypes: + file: GlobalSubstitutionTypesServiceTemplate.yaml + NeutronPortGlobalTypes: + file: NeutronPortGlobalTypesServiceTemplate.yaml + NeutronNetGlobalTypes: + file: NeutronNetGlobalTypesServiceTemplate.yaml + CommonGlobalTypes: + file: CommonGlobalTypesServiceTemplate.yaml + ContrailAbstractSubstituteGlobalTypes: + file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml + ContrailNetworkRuleGlobalType: + file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml + NeutronSecurityRulesGlobalTypes: + file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml + NovaServerGlobalTypes: + file: NovaServerGlobalTypesServiceTemplate.yaml + ContrailV2VirtualMachineInterfaceGlobalType: + file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml +topology_template: + inputs: + availability_zone: + hidden: false + immutable: false + type: string + description: Availability zone to create servers in + required: false + status: SUPPORTED + static_routes_list: + hidden: false + immutable: false + type: list + description: Static routes enabled + required: false + status: SUPPORTED + entry_schema: + type: boolean + availability_zone_enable: + hidden: false + immutable: false + type: boolean + description: Indicates availability zone is enabled + required: false + default: false + status: SUPPORTED + service_template_name: + hidden: false + immutable: false + type: string + description: Service template name + required: false + status: SUPPORTED + ordered_interfaces: + hidden: false + immutable: false + type: boolean + description: Indicates if service interface are ordered + required: false + default: false + status: SUPPORTED + flavor: + hidden: false + immutable: false + type: string + description: flavor + required: false + status: SUPPORTED + image_name: + hidden: false + immutable: false + type: string + description: Image name + required: true + status: SUPPORTED + service_type: + hidden: false + immutable: false + type: string + description: Service type + required: true + status: SUPPORTED + constraints: + - valid_values: + - firewall + - analyzer + - source-nat + - loadbalancer + service_interface_type_list: + hidden: false + immutable: false + type: list + description: List of interface types + required: true + status: SUPPORTED + entry_schema: + type: string + constraints: + - valid_values: + - management + - left + - right + - other + service_instance_name: + hidden: false + immutable: false + type: string + description: Service instance name + required: true + status: SUPPORTED + interface_list: + hidden: false + immutable: false + type: list + description: List of interfaces + required: false + status: SUPPORTED + entry_schema: + type: org.openecomp.datatypes.heat.network.contrail.InterfaceData + service_mode: + hidden: false + immutable: false + type: string + description: Service mode + required: true + status: SUPPORTED + constraints: + - valid_values: + - transparent + - in-network + - in-network-nat + shared_ip_list: + hidden: false + immutable: false + type: list + description: Shared ips enabled + required: false + status: SUPPORTED + entry_schema: + type: boolean + node_templates: + port_0: + type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port + properties: + static_routes: + get_input: + - interface_list + - 0 + - static_routes + virtual_network: + get_input: + - interface_list + - 0 + - virtual_network + static_route: + get_input: + - static_routes_list + - 0 + allowed_address_pairs: + get_input: + - interface_list + - 0 + - allowed_address_pairs + shared_ip: + get_input: + - shared_ip_list + - 0 + ip_address: + get_input: + - interface_list + - 0 + - ip_address + interface_type: + get_input: + - service_interface_type_list + - 0 + order: 0 + requirements: + - binding: + capability: tosca.capabilities.network.Bindable + node: service_instance + relationship: tosca.relationships.network.BindsTo + port_1: + type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port + properties: + static_routes: + get_input: + - interface_list + - 1 + - static_routes + virtual_network: + get_input: + - interface_list + - 1 + - virtual_network + static_route: + get_input: + - static_routes_list + - 1 + allowed_address_pairs: + get_input: + - interface_list + - 1 + - allowed_address_pairs + shared_ip: + get_input: + - shared_ip_list + - 1 + ip_address: + get_input: + - interface_list + - 1 + - ip_address + interface_type: + get_input: + - service_interface_type_list + - 1 + order: 1 + requirements: + - binding: + capability: tosca.capabilities.network.Bindable + node: service_instance + relationship: tosca.relationships.network.BindsTo + port_2: + type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port + properties: + static_routes: + get_input: + - interface_list + - 2 + - static_routes + virtual_network: + get_input: + - interface_list + - 2 + - virtual_network + static_route: + get_input: + - static_routes_list + - 2 + allowed_address_pairs: + get_input: + - interface_list + - 2 + - allowed_address_pairs + shared_ip: + get_input: + - shared_ip_list + - 2 + ip_address: + get_input: + - interface_list + - 2 + - ip_address + interface_type: + get_input: + - service_interface_type_list + - 2 + order: 2 + requirements: + - binding: + capability: tosca.capabilities.network.Bindable + node: service_instance + relationship: tosca.relationships.network.BindsTo + port_3: + type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port + properties: + static_routes: + get_input: + - interface_list + - 3 + - static_routes + virtual_network: + get_input: + - interface_list + - 3 + - virtual_network + static_route: + get_input: + - static_routes_list + - 3 + allowed_address_pairs: + get_input: + - interface_list + - 3 + - allowed_address_pairs + shared_ip: + get_input: + - shared_ip_list + - 3 + ip_address: + get_input: + - interface_list + - 3 + - ip_address + interface_type: + get_input: + - service_interface_type_list + - 3 + order: 3 + requirements: + - binding: + capability: tosca.capabilities.network.Bindable + node: service_instance + relationship: tosca.relationships.network.BindsTo + service_instance: + type: org.openecomp.resource.vfc.nodes.heat.compute_service_template + properties: + flavor: + get_input: flavor + image_name: + get_input: image_name + availability_zone: + get_input: availability_zone + service_type: + get_input: service_type + availability_zone_enable: + get_input: availability_zone_enable + service_template_name: + get_input: service_template_name + service_instance_name: + get_input: service_instance_name + service_mode: + get_input: service_mode + groups: + service_instance: + type: org.openecomp.groups.heat.HeatStack + properties: + heat_file: ../Artifacts/lcp1_mss.oam-fw_si.yaml + members: + - service_instance + - port_0 + - port_1 + - port_2 + - port_3 + outputs: + tenant_id: + description: Tenant id of the Service Instance + value: + get_attribute: + - service_instance + - tenant_id + fq_name: + description: The FQ name of the service instance + value: + get_attribute: + - service_instance + - fq_name + service_template_name: + description: Service Template of the Service Instance + value: + get_attribute: + - service_instance + - service_template_name + show: + description: All attributes + value: + get_attribute: + - service_instance + - show + active_vms: + description: Number of service VMs active for this Service Instance + value: + get_attribute: + - service_instance + - active_vms + service_instance_name: + description: The name of the service instance + value: + get_attribute: + - service_instance + - service_instance_name + virtual_machines: + description: Service VMs for the Service Instance + value: + get_attribute: + - service_instance + - virtual_machines + status: + description: Status of the service instance + value: + get_attribute: + - service_instance + - status + substitution_mappings: + node_type: org.openecomp.resource.abstract.nodes.heat.service_template + requirements: + link_port_0: + - port_0 + - link + link_port_1: + - port_1 + - link + link_port_2: + - port_2 + - link + link_port_3: + - port_3 + - link \ 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/contrail2serviceinstance/oneServiceInstance/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/oneServiceInstance/inputfiles/MANIFEST.json new file mode 100644 index 0000000000..63989f282b --- /dev/null +++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/oneServiceInstance/inputfiles/MANIFEST.json @@ -0,0 +1,17 @@ +{ + "name": "vLCP", + "description": "", + "data": [ + { + "file": "lcp1_mss.oam-fw_si.yaml", + "type": "HEAT", + "isBase": "false", + "data": [ + { + "file": "lcp1_mss.oam-fw_si_with_comments.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/contrail2serviceinstance/oneServiceInstance/inputfiles/lcp1_mss.oam-fw_si.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/oneServiceInstance/inputfiles/lcp1_mss.oam-fw_si.yaml new file mode 100644 index 0000000000..33620a9b91 --- /dev/null +++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/oneServiceInstance/inputfiles/lcp1_mss.oam-fw_si.yaml @@ -0,0 +1,153 @@ +heat_template_version: 2013-05-23 + +description: > + Version 2.0 10-14-2015 (Authors: Art Mishurov,am254u & Johhny Chen, jc3066) - HOT-OAM-FW-SI template that creates two OAM networks (direct and protected) with a scaled out firewall service between the two. + +parameters: + service_policy_name: + type: string + description: Policy Name + service_policy_direction: + type: string + description: Direction of Policy + start_src_ports: + type: number + description: Start of src port + end_src_ports: + type: number + description: End of src port + start_dst_ports: + type: number + description: Start of dst port + end_dst_ports: + type: number + description: End of dst port + oam_mgmt_net_id: + type: string + description: Name of private network to be created + oam_protected_net_id: + type: string + description: Name of private network to be created + oam_direct_net_id: + type: string + description: Name of private network to be created + oam_hsl_net_id: + type: string + description: Name of private network to be created + st_name: + type: string + description: service template name or ID + st_type: + type: string + description: service type + st_image: + type: string + description: Name of the image + st_flavor: + type: string + description: Flavor + st_service_interface_type_list: + type: string + description: List of interface types + st_shared_ip_list: + type: string + description: List of shared ip enabled-disabled + st_static_routes_list: + type: string + description: List of static routes enabled-disabled + st_scaling: + type: string + description: Indicates whether service scaling is enabled + st_mode: + type: string + description: service mode + st_availability_zone_enable_flag: + type: string + description: service template availablity_zone feature enable flag + max_num_fw_instances: + type: number + description: maximum number of firewall instances for scaling + service_instance_name: + type: string + description: service instance name + availability_zone: + type: string + description: availability zone in form of Zone:Host + static_prefix_3_1: + type: string + description: prefix for static route + protected_net: + type: string + +resources: + service_template: + type: OS::Contrail::ServiceTemplate + properties: + name: { get_param: st_name } + service_mode: { get_param: st_mode } + service_type: { get_param: st_type } + image_name: { get_param: st_image } + flavor: { get_param: st_flavor } + service_interface_type_list: { "Fn::Split" : [ ",", Ref: st_service_interface_type_list ] } + shared_ip_list: [ true, on, no, 0 ] + static_routes_list: { "Fn::Split" : [ ";", "n;false;false;false" ] } + service_scaling: { get_param: st_scaling } + availability_zone_enable: { get_param: st_availability_zone_enable_flag } + ordered_interfaces: true + + service_instance: + type: OS::Contrail::ServiceInstance + properties: + name: { get_param: service_instance_name } + service_template: { get_resource: service_template } + availability_zone: { get_param: availability_zone } + scale_out: + max_instances: 5 + interface_list: [ + { + virtual_network: {get_param: oam_mgmt_net_id} + }, + { + virtual_network: {get_param: oam_protected_net_id} + }, + { + virtual_network: {get_param: oam_direct_net_id}, + static_routes: [ + { "prefix": {get_param: static_prefix_3_1} }, + ], + }, + { + virtual_network: {get_param: oam_hsl_net_id} + }, + ] + + service_policy: + type: OS::Contrail::NetworkPolicy + depends_on: [ service_instance ] + properties: + name: { get_param: service_policy_name } + entries: + policy_rule: [ + { + "direction": { get_param: service_policy_direction }, + "protocol": "any", + "src_ports": [{"start_port": {get_param: start_src_ports}, "end_port": {get_param: end_src_ports}}], + "dst_ports": [{"start_port": {get_param: start_dst_ports}, "end_port": {get_param: end_dst_ports}}], + "dst_addresses": [{ "virtual_network": {get_param: oam_direct_net_id}}], + "action_list": {"apply_service": [{get_resource: service_instance}]}, + "src_addresses": [{ "virtual_network": {get_param: protected_net}}] + }, + ] + service_policy_attach_direct_net: + type: OS::Contrail::AttachPolicy + depends_on: [ service_policy ] + properties: + network: { get_param: oam_direct_net_id } + policy: { get_attr: [service_policy, fq_name] } + + service_policy_attach_protected_net: + type: OS::Contrail::AttachPolicy + depends_on: [ service_policy ] + properties: + network: { get_param: oam_protected_net_id } + policy: { get_attr: [service_policy, fq_name] } diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/oneServiceInstance/inputfiles/lcp1_mss.oam-fw_si_with_comments.env b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/oneServiceInstance/inputfiles/lcp1_mss.oam-fw_si_with_comments.env new file mode 100644 index 0000000000..718c5dba17 --- /dev/null +++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/oneServiceInstance/inputfiles/lcp1_mss.oam-fw_si_with_comments.env @@ -0,0 +1,26 @@ +parameters: + #service_instance_name: ZRDM1FRWL02OAM + service_policy_name: MNS-25180-L-02Shared_policy_direct_fw_protected_oam_1 + service_policy_direction: "<>" + start_src_ports: -1 + end_src_ports: -1 + start_dst_ports: -1 + end_dst_ports: -1 + st_name: MNS-25180-L-02Shared_oam_fw_template_1 + st_mode: in-network-nat + st_type: firewall + st_image: NIMBUS_SRX_151X49-D303 + st_flavor: lc.medium + st_service_interface_type_list: management,left,right,other + st_shared_ip_list: False,True,False,False + st_static_routes_list: True,True,True,True + st_scaling: "True" + st_availability_zone_enable_flag: "True" + #availability_zone: "nova" + max_num_fw_instances: 8 + #oam_mgmt_net_id: 'default-domain:MNS-25180-L-02Shared_oam_mgmt_net_1' + #oam_protected_net_id: 'default-domain:MNS-25180-L-02Shared_oam_protected_net_1' + #oam_direct_net_id: 'default-domain:MNS-25180-L-02Shared_oam_direct_net_1' + #oam_hsl_net_id: 'default-domain:MNS-25180-L-02Shared_oam_hsl_net_1' + static_prefix_3_1: 107.239.80.0/21 + \ 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/contrail2serviceinstance/sameServiceTemplate/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sameServiceTemplate/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml new file mode 100644 index 0000000000..b00d3d8bc0 --- /dev/null +++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sameServiceTemplate/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml @@ -0,0 +1,64 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +metadata: + template_name: GlobalSubstitutionTypes +imports: + ContrailComputeGlobalTypes: + file: ContrailComputeGlobalTypesServiceTemplate.yaml + CinderVolumeGlobalTypes: + file: CinderVolumeGlobalTypesServiceTemplate.yaml + ContrailVirtualNetworkGlobalType: + file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml + AbstractSubstituteGlobalTypes: + file: AbstractSubstituteGlobalTypesServiceTemplate.yaml + ContrailPortGlobalTypes: + file: ContrailPortGlobalTypesServiceTemplate.yaml + NeutronPortGlobalTypes: + file: NeutronPortGlobalTypesServiceTemplate.yaml + NeutronNetGlobalTypes: + file: NeutronNetGlobalTypesServiceTemplate.yaml + CommonGlobalTypes: + file: CommonGlobalTypesServiceTemplate.yaml + ContrailAbstractSubstituteGlobalTypes: + file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml + ContrailNetworkRuleGlobalType: + file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml + NeutronSecurityRulesGlobalTypes: + file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml + NovaServerGlobalTypes: + file: NovaServerGlobalTypesServiceTemplate.yaml + ContrailV2VirtualMachineInterfaceGlobalType: + file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml +node_types: + org.openecomp.resource.abstract.nodes.heat.service_template: + derived_from: org.openecomp.resource.abstract.nodes.contrail.AbstractSubstitute + requirements: + - link_port_0: + capability: tosca.capabilities.network.Linkable + node: tosca.nodes.Root + relationship: tosca.relationships.network.LinksTo + occurrences: + - 1 + - 1 + - link_port_1: + capability: tosca.capabilities.network.Linkable + node: tosca.nodes.Root + relationship: tosca.relationships.network.LinksTo + occurrences: + - 1 + - 1 + - link_port_2: + capability: tosca.capabilities.network.Linkable + node: tosca.nodes.Root + relationship: tosca.relationships.network.LinksTo + occurrences: + - 1 + - 1 + - link_port_3: + capability: tosca.capabilities.network.Linkable + node: tosca.nodes.Root + relationship: tosca.relationships.network.LinksTo + occurrences: + - 1 + - 1 + org.openecomp.resource.vfc.nodes.heat.compute_service_template: + derived_from: org.openecomp.resource.vfc.nodes.heat.contrail.Compute \ 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/contrail2serviceinstance/sameServiceTemplate/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sameServiceTemplate/expectedoutputfiles/MainServiceTemplate.yaml new file mode 100644 index 0000000000..942df0b120 --- /dev/null +++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sameServiceTemplate/expectedoutputfiles/MainServiceTemplate.yaml @@ -0,0 +1,441 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +metadata: + template_name: Main +imports: + ContrailComputeGlobalTypes: + file: ContrailComputeGlobalTypesServiceTemplate.yaml + CinderVolumeGlobalTypes: + file: CinderVolumeGlobalTypesServiceTemplate.yaml + ContrailVirtualNetworkGlobalType: + file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml + AbstractSubstituteGlobalTypes: + file: AbstractSubstituteGlobalTypesServiceTemplate.yaml + ContrailPortGlobalTypes: + file: ContrailPortGlobalTypesServiceTemplate.yaml + GlobalSubstitutionTypes: + file: GlobalSubstitutionTypesServiceTemplate.yaml + NeutronPortGlobalTypes: + file: NeutronPortGlobalTypesServiceTemplate.yaml + NeutronNetGlobalTypes: + file: NeutronNetGlobalTypesServiceTemplate.yaml + CommonGlobalTypes: + file: CommonGlobalTypesServiceTemplate.yaml + ContrailAbstractSubstituteGlobalTypes: + file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml + ContrailNetworkRuleGlobalType: + file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml + NeutronSecurityRulesGlobalTypes: + file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml + NovaServerGlobalTypes: + file: NovaServerGlobalTypesServiceTemplate.yaml + ContrailV2VirtualMachineInterfaceGlobalType: + file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml +topology_template: + inputs: + service_policy_name: + hidden: false + immutable: false + type: string + description: Policy Name + st_static_routes_list: + hidden: false + immutable: false + type: string + description: List of static routes enabled-disabled + st_type: + hidden: false + immutable: false + type: string + description: service type + st_service_interface_type_list: + hidden: false + immutable: false + type: string + description: List of interface types + st_mode: + hidden: false + immutable: false + type: string + description: service mode + Cricket_OCS_protected_net_id: + hidden: false + immutable: false + type: string + description: Name of Cricket OCS network + oam_mgmt_net_0_id: + hidden: false + immutable: false + type: string + description: Name of OAM network + start_dst_ports: + hidden: false + immutable: false + type: float + description: Start of dst port + st_flavor: + hidden: false + immutable: false + type: string + description: Flavor + availability_zone_1: + hidden: false + immutable: false + type: string + description: availability zone + service_instance_name: + hidden: false + immutable: false + type: string + description: Service instance name + st_scaling: + hidden: false + immutable: false + type: string + description: Indicates whether service scaling is enabled + max_num_fw_instances: + hidden: false + immutable: false + type: float + description: maximum number of firewall instances for scaling + start_src_ports: + hidden: false + immutable: false + type: float + description: Start of src port + service_policy_direction: + hidden: false + immutable: false + type: string + description: Direction of Policy + st_name: + hidden: false + immutable: false + type: string + description: Name of service template + HSL_direct_net_gateway: + hidden: false + immutable: false + type: string + description: HSL (Logging) network gateway address + st_image: + hidden: false + immutable: false + type: string + description: Name of the image + st_shared_ip_list: + hidden: false + immutable: false + type: string + description: List of shared ip enabled-disabled + prefix_0: + hidden: false + immutable: false + type: string + Cricket_OCS_direct_net_id: + hidden: false + immutable: false + type: string + description: Name of Cricket OCS network + oam_mgmt_net_1_id: + hidden: false + immutable: false + type: string + description: Name of OAM network + prefix_1: + hidden: false + immutable: false + type: string + end_src_ports: + hidden: false + immutable: false + type: float + description: End of src port + prefix_2: + hidden: false + immutable: false + type: string + end_dst_ports: + hidden: false + immutable: false + type: float + description: End of dst port + st_image_name: + hidden: false + immutable: false + type: string + description: Name of the image + HSL_direct_net_id: + hidden: false + immutable: false + type: string + description: Name of HSL (Logging) network + HSL_direct_net_cidr: + hidden: false + immutable: false + type: string + description: HSL (Logging) network address (CIDR notation) + node_templates: + service_instance_1: + type: org.openecomp.resource.abstract.nodes.heat.service_template + directives: + - substitutable + properties: + flavor: + get_input: st_flavor + availability_zone: + get_input: availability_zone_1 + image_name: + get_input: st_image + service_template_filter: + substitute_service_template: service_instance_1ServiceTemplate.yaml + count: 1 + scaling_enabled: + get_input: st_scaling + mandatory: true + service_type: + get_input: st_type + static_routes_list: + - token: + - get_input: st_static_routes_list + - ',' + - 0 + - token: + - get_input: st_static_routes_list + - ',' + - 1 + - token: + - get_input: st_static_routes_list + - ',' + - 2 + - token: + - get_input: st_static_routes_list + - ',' + - 3 + service_template_name: + get_input: st_name + service_interface_type_list: + - token: + - management,left,right,other + - ',' + - 0 + - token: + - management,left,right,other + - ',' + - 1 + - token: + - management,left,right,other + - ',' + - 2 + - token: + - management,left,right,other + - ',' + - 3 + interface_list: + - virtual_network: + get_input: oam_mgmt_net_0_id + - virtual_network: + get_input: Cricket_OCS_direct_net_id + - virtual_network: hsl_direct_net1 + - static_routes: + - prefix: + get_input: prefix_0 + - prefix: + get_input: prefix_1 + - prefix: + get_input: prefix_2 + virtual_network: + get_input: oam_mgmt_net_1_id + service_instance_name: + get_input: service_instance_name + service_mode: + get_input: st_mode + shared_ip_list: + - token: + - get_input: st_shared_ip_list + - ',' + - 0 + - token: + - get_input: st_shared_ip_list + - ',' + - 1 + - token: + - get_input: st_shared_ip_list + - ',' + - 2 + - token: + - get_input: st_shared_ip_list + - ',' + - 3 + requirements: + - link_port_2: + capability: tosca.capabilities.network.Linkable + node: hsl_direct_net1 + relationship: tosca.relationships.network.LinksTo + - dependency: + capability: tosca.capabilities.Node + node: hsl_direct_net1 + relationship: tosca.relationships.DependsOn + service_instance_2: + type: org.openecomp.resource.abstract.nodes.heat.service_template + directives: + - substitutable + properties: + flavor: + get_input: st_flavor + availability_zone: + get_input: availability_zone_1 + image_name: + get_input: st_image + service_template_filter: + substitute_service_template: service_instance_2ServiceTemplate.yaml + count: + get_input: max_num_fw_instances + scaling_enabled: + get_input: st_scaling + mandatory: false + service_type: + get_input: st_type + static_routes_list: + - token: + - get_input: st_static_routes_list + - ',' + - 0 + - token: + - get_input: st_static_routes_list + - ',' + - 1 + - token: + - get_input: st_static_routes_list + - ',' + - 2 + - token: + - get_input: st_static_routes_list + - ',' + - 3 + service_template_name: + get_input: st_name + service_interface_type_list: + - token: + - management,left,right,other + - ',' + - 0 + - token: + - management,left,right,other + - ',' + - 1 + - token: + - management,left,right,other + - ',' + - 2 + - token: + - management,left,right,other + - ',' + - 3 + interface_list: + - virtual_network: + get_input: oam_mgmt_net_0_id + - virtual_network: + get_input: Cricket_OCS_direct_net_id + - virtual_network: hsl_direct_net2 + - static_routes: + - prefix: + get_input: prefix_0 + - prefix: + get_input: prefix_1 + - prefix: + get_input: prefix_2 + virtual_network: + get_input: oam_mgmt_net_1_id + service_instance_name: + get_input: service_instance_name + service_mode: + get_input: st_mode + shared_ip_list: + - token: + - get_input: st_shared_ip_list + - ',' + - 0 + - token: + - get_input: st_shared_ip_list + - ',' + - 1 + - token: + - get_input: st_shared_ip_list + - ',' + - 2 + - token: + - get_input: st_shared_ip_list + - ',' + - 3 + requirements: + - link_port_2: + capability: tosca.capabilities.network.Linkable + node: hsl_direct_net2 + relationship: tosca.relationships.network.LinksTo + - dependency: + capability: tosca.capabilities.Node + node: hsl_direct_net1 + relationship: tosca.relationships.DependsOn + hsl_direct_net1: + type: org.openecomp.resource.vl.nodes.heat.network.contrail.VirtualNetwork + properties: + network_name: + get_input: HSL_direct_net_id + subnets: + hsl_ip_subnet: + cidr: + get_input: HSL_direct_net_cidr + gateway_ip: + get_input: HSL_direct_net_gateway + hsl_direct_net2: + type: org.openecomp.resource.vl.nodes.heat.network.contrail.VirtualNetwork + properties: + network_name: + get_input: HSL_direct_net_id + service_policy: + type: org.openecomp.resource.vfc.rules.nodes.heat.network.contrail.NetworkRules + properties: + entries: + policy_rule: + - src_ports: + - start_port: + get_input: start_src_ports + end_port: + get_input: end_src_ports + protocol: any + action_list: + apply_service: + - service_instance_1 + dst_addresses: + - virtual_network: + get_input: Cricket_OCS_direct_net_id + dst_ports: + - start_port: + get_input: start_dst_ports + end_port: + get_input: end_dst_ports + src_addresses: + - virtual_network: + get_input: Cricket_OCS_protected_net_id + direction: + get_input: service_policy_direction + name: + get_input: service_policy_name + requirements: + - dependency: + capability: tosca.capabilities.Node + node: service_instance_1 + relationship: tosca.relationships.DependsOn + groups: + OCS-fw: + type: org.openecomp.groups.heat.HeatStack + properties: + heat_file: ../Artifacts/OCS-fw.yml + description: | + Based on the following reference for the HOT-DMZ-FW template: Version 3.5 8-10-2015 (Authors: Art Mishurov,am254u & Johhny Chen, jc3066) - HOT-DMZ-FW template that creates two DMZ networks (direct and protected) with a scaled out firewall service between the two. + members: + - service_instance_1 + - service_instance_2 + - hsl_direct_net1 + - hsl_direct_net2 + - service_policy \ 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/contrail2serviceinstance/sameServiceTemplate/expectedoutputfiles/service_instance_1ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sameServiceTemplate/expectedoutputfiles/service_instance_1ServiceTemplate.yaml new file mode 100644 index 0000000000..4b53e28b6f --- /dev/null +++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sameServiceTemplate/expectedoutputfiles/service_instance_1ServiceTemplate.yaml @@ -0,0 +1,407 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +metadata: + template_name: service_instance_1 +imports: + ContrailComputeGlobalTypes: + file: ContrailComputeGlobalTypesServiceTemplate.yaml + CinderVolumeGlobalTypes: + file: CinderVolumeGlobalTypesServiceTemplate.yaml + ContrailVirtualNetworkGlobalType: + file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml + AbstractSubstituteGlobalTypes: + file: AbstractSubstituteGlobalTypesServiceTemplate.yaml + ContrailPortGlobalTypes: + file: ContrailPortGlobalTypesServiceTemplate.yaml + GlobalSubstitutionTypes: + file: GlobalSubstitutionTypesServiceTemplate.yaml + NeutronPortGlobalTypes: + file: NeutronPortGlobalTypesServiceTemplate.yaml + NeutronNetGlobalTypes: + file: NeutronNetGlobalTypesServiceTemplate.yaml + CommonGlobalTypes: + file: CommonGlobalTypesServiceTemplate.yaml + ContrailAbstractSubstituteGlobalTypes: + file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml + ContrailNetworkRuleGlobalType: + file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml + NeutronSecurityRulesGlobalTypes: + file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml + NovaServerGlobalTypes: + file: NovaServerGlobalTypesServiceTemplate.yaml + ContrailV2VirtualMachineInterfaceGlobalType: + file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml +topology_template: + inputs: + availability_zone: + hidden: false + immutable: false + type: string + description: Availability zone to create servers in + required: false + status: SUPPORTED + static_routes_list: + hidden: false + immutable: false + type: list + description: Static routes enabled + required: false + status: SUPPORTED + entry_schema: + type: boolean + availability_zone_enable: + hidden: false + immutable: false + type: boolean + description: Indicates availability zone is enabled + required: false + default: false + status: SUPPORTED + service_template_name: + hidden: false + immutable: false + type: string + description: Service template name + required: false + status: SUPPORTED + ordered_interfaces: + hidden: false + immutable: false + type: boolean + description: Indicates if service interface are ordered + required: false + default: false + status: SUPPORTED + flavor: + hidden: false + immutable: false + type: string + description: flavor + required: false + status: SUPPORTED + image_name: + hidden: false + immutable: false + type: string + description: Image name + required: true + status: SUPPORTED + service_type: + hidden: false + immutable: false + type: string + description: Service type + required: true + status: SUPPORTED + constraints: + - valid_values: + - firewall + - analyzer + - source-nat + - loadbalancer + service_interface_type_list: + hidden: false + immutable: false + type: list + description: List of interface types + required: true + status: SUPPORTED + entry_schema: + type: string + constraints: + - valid_values: + - management + - left + - right + - other + service_instance_name: + hidden: false + immutable: false + type: string + description: Service instance name + required: true + status: SUPPORTED + interface_list: + hidden: false + immutable: false + type: list + description: List of interfaces + required: false + status: SUPPORTED + entry_schema: + type: org.openecomp.datatypes.heat.network.contrail.InterfaceData + service_mode: + hidden: false + immutable: false + type: string + description: Service mode + required: true + status: SUPPORTED + constraints: + - valid_values: + - transparent + - in-network + - in-network-nat + shared_ip_list: + hidden: false + immutable: false + type: list + description: Shared ips enabled + required: false + status: SUPPORTED + entry_schema: + type: boolean + node_templates: + service_instance_1: + type: org.openecomp.resource.vfc.nodes.heat.compute_service_template + properties: + flavor: + get_input: flavor + image_name: + get_input: image_name + availability_zone: + get_input: availability_zone + service_type: + get_input: service_type + availability_zone_enable: + get_input: availability_zone_enable + service_template_name: + get_input: service_template_name + service_instance_name: + get_input: service_instance_name + service_mode: + get_input: service_mode + port_0: + type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port + properties: + static_routes: + get_input: + - interface_list + - 0 + - static_routes + virtual_network: + get_input: + - interface_list + - 0 + - virtual_network + static_route: + get_input: + - static_routes_list + - 0 + allowed_address_pairs: + get_input: + - interface_list + - 0 + - allowed_address_pairs + shared_ip: + get_input: + - shared_ip_list + - 0 + ip_address: + get_input: + - interface_list + - 0 + - ip_address + interface_type: + get_input: + - service_interface_type_list + - 0 + requirements: + - binding: + capability: tosca.capabilities.network.Bindable + node: service_instance_1 + relationship: tosca.relationships.network.BindsTo + port_1: + type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port + properties: + static_routes: + get_input: + - interface_list + - 1 + - static_routes + virtual_network: + get_input: + - interface_list + - 1 + - virtual_network + static_route: + get_input: + - static_routes_list + - 1 + allowed_address_pairs: + get_input: + - interface_list + - 1 + - allowed_address_pairs + shared_ip: + get_input: + - shared_ip_list + - 1 + ip_address: + get_input: + - interface_list + - 1 + - ip_address + interface_type: + get_input: + - service_interface_type_list + - 1 + requirements: + - binding: + capability: tosca.capabilities.network.Bindable + node: service_instance_1 + relationship: tosca.relationships.network.BindsTo + port_2: + type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port + properties: + static_routes: + get_input: + - interface_list + - 2 + - static_routes + virtual_network: + get_input: + - interface_list + - 2 + - virtual_network + static_route: + get_input: + - static_routes_list + - 2 + allowed_address_pairs: + get_input: + - interface_list + - 2 + - allowed_address_pairs + shared_ip: + get_input: + - shared_ip_list + - 2 + ip_address: + get_input: + - interface_list + - 2 + - ip_address + interface_type: + get_input: + - service_interface_type_list + - 2 + requirements: + - binding: + capability: tosca.capabilities.network.Bindable + node: service_instance_1 + relationship: tosca.relationships.network.BindsTo + port_3: + type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port + properties: + static_routes: + get_input: + - interface_list + - 3 + - static_routes + virtual_network: + get_input: + - interface_list + - 3 + - virtual_network + static_route: + get_input: + - static_routes_list + - 3 + allowed_address_pairs: + get_input: + - interface_list + - 3 + - allowed_address_pairs + shared_ip: + get_input: + - shared_ip_list + - 3 + ip_address: + get_input: + - interface_list + - 3 + - ip_address + interface_type: + get_input: + - service_interface_type_list + - 3 + requirements: + - binding: + capability: tosca.capabilities.network.Bindable + node: service_instance_1 + relationship: tosca.relationships.network.BindsTo + groups: + service_instance_1: + type: org.openecomp.groups.heat.HeatStack + properties: + heat_file: ../Artifacts/OCS-fw.yml + members: + - service_instance_1 + - port_0 + - port_1 + - port_2 + - port_3 + outputs: + tenant_id: + description: Tenant id of the Service Instance + value: + get_attribute: + - service_instance_1 + - tenant_id + fq_name: + description: The FQ name of the service instance + value: + get_attribute: + - service_instance_1 + - fq_name + service_template_name: + description: Service Template of the Service Instance + value: + get_attribute: + - service_instance_1 + - service_template_name + show: + description: All attributes + value: + get_attribute: + - service_instance_1 + - show + active_vms: + description: Number of service VMs active for this Service Instance + value: + get_attribute: + - service_instance_1 + - active_vms + service_instance_name: + description: The name of the service instance + value: + get_attribute: + - service_instance_1 + - service_instance_name + virtual_machines: + description: Service VMs for the Service Instance + value: + get_attribute: + - service_instance_1 + - virtual_machines + status: + description: Status of the service instance + value: + get_attribute: + - service_instance_1 + - status + substitution_mappings: + node_type: org.openecomp.resource.abstract.nodes.heat.service_template + requirements: + link_port_0: + - port_0 + - link + link_port_1: + - port_1 + - link + link_port_2: + - port_2 + - link + link_port_3: + - port_3 + - link \ 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/contrail2serviceinstance/sameServiceTemplate/expectedoutputfiles/service_instance_2ServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sameServiceTemplate/expectedoutputfiles/service_instance_2ServiceTemplate.yaml new file mode 100644 index 0000000000..f0e67ea99c --- /dev/null +++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sameServiceTemplate/expectedoutputfiles/service_instance_2ServiceTemplate.yaml @@ -0,0 +1,407 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +metadata: + template_name: service_instance_2 +imports: + ContrailComputeGlobalTypes: + file: ContrailComputeGlobalTypesServiceTemplate.yaml + CinderVolumeGlobalTypes: + file: CinderVolumeGlobalTypesServiceTemplate.yaml + ContrailVirtualNetworkGlobalType: + file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml + AbstractSubstituteGlobalTypes: + file: AbstractSubstituteGlobalTypesServiceTemplate.yaml + ContrailPortGlobalTypes: + file: ContrailPortGlobalTypesServiceTemplate.yaml + GlobalSubstitutionTypes: + file: GlobalSubstitutionTypesServiceTemplate.yaml + NeutronPortGlobalTypes: + file: NeutronPortGlobalTypesServiceTemplate.yaml + NeutronNetGlobalTypes: + file: NeutronNetGlobalTypesServiceTemplate.yaml + CommonGlobalTypes: + file: CommonGlobalTypesServiceTemplate.yaml + ContrailAbstractSubstituteGlobalTypes: + file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml + ContrailNetworkRuleGlobalType: + file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml + NeutronSecurityRulesGlobalTypes: + file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml + NovaServerGlobalTypes: + file: NovaServerGlobalTypesServiceTemplate.yaml + ContrailV2VirtualMachineInterfaceGlobalType: + file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml +topology_template: + inputs: + availability_zone: + hidden: false + immutable: false + type: string + description: Availability zone to create servers in + required: false + status: SUPPORTED + static_routes_list: + hidden: false + immutable: false + type: list + description: Static routes enabled + required: false + status: SUPPORTED + entry_schema: + type: boolean + availability_zone_enable: + hidden: false + immutable: false + type: boolean + description: Indicates availability zone is enabled + required: false + default: false + status: SUPPORTED + service_template_name: + hidden: false + immutable: false + type: string + description: Service template name + required: false + status: SUPPORTED + ordered_interfaces: + hidden: false + immutable: false + type: boolean + description: Indicates if service interface are ordered + required: false + default: false + status: SUPPORTED + flavor: + hidden: false + immutable: false + type: string + description: flavor + required: false + status: SUPPORTED + image_name: + hidden: false + immutable: false + type: string + description: Image name + required: true + status: SUPPORTED + service_type: + hidden: false + immutable: false + type: string + description: Service type + required: true + status: SUPPORTED + constraints: + - valid_values: + - firewall + - analyzer + - source-nat + - loadbalancer + service_interface_type_list: + hidden: false + immutable: false + type: list + description: List of interface types + required: true + status: SUPPORTED + entry_schema: + type: string + constraints: + - valid_values: + - management + - left + - right + - other + service_instance_name: + hidden: false + immutable: false + type: string + description: Service instance name + required: true + status: SUPPORTED + interface_list: + hidden: false + immutable: false + type: list + description: List of interfaces + required: false + status: SUPPORTED + entry_schema: + type: org.openecomp.datatypes.heat.network.contrail.InterfaceData + service_mode: + hidden: false + immutable: false + type: string + description: Service mode + required: true + status: SUPPORTED + constraints: + - valid_values: + - transparent + - in-network + - in-network-nat + shared_ip_list: + hidden: false + immutable: false + type: list + description: Shared ips enabled + required: false + status: SUPPORTED + entry_schema: + type: boolean + node_templates: + service_instance_2: + type: org.openecomp.resource.vfc.nodes.heat.compute_service_template + properties: + flavor: + get_input: flavor + image_name: + get_input: image_name + availability_zone: + get_input: availability_zone + service_type: + get_input: service_type + availability_zone_enable: + get_input: availability_zone_enable + service_template_name: + get_input: service_template_name + service_instance_name: + get_input: service_instance_name + service_mode: + get_input: service_mode + port_0: + type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port + properties: + static_routes: + get_input: + - interface_list + - 0 + - static_routes + virtual_network: + get_input: + - interface_list + - 0 + - virtual_network + static_route: + get_input: + - static_routes_list + - 0 + allowed_address_pairs: + get_input: + - interface_list + - 0 + - allowed_address_pairs + shared_ip: + get_input: + - shared_ip_list + - 0 + ip_address: + get_input: + - interface_list + - 0 + - ip_address + interface_type: + get_input: + - service_interface_type_list + - 0 + requirements: + - binding: + capability: tosca.capabilities.network.Bindable + node: service_instance_2 + relationship: tosca.relationships.network.BindsTo + port_1: + type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port + properties: + static_routes: + get_input: + - interface_list + - 1 + - static_routes + virtual_network: + get_input: + - interface_list + - 1 + - virtual_network + static_route: + get_input: + - static_routes_list + - 1 + allowed_address_pairs: + get_input: + - interface_list + - 1 + - allowed_address_pairs + shared_ip: + get_input: + - shared_ip_list + - 1 + ip_address: + get_input: + - interface_list + - 1 + - ip_address + interface_type: + get_input: + - service_interface_type_list + - 1 + requirements: + - binding: + capability: tosca.capabilities.network.Bindable + node: service_instance_2 + relationship: tosca.relationships.network.BindsTo + port_2: + type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port + properties: + static_routes: + get_input: + - interface_list + - 2 + - static_routes + virtual_network: + get_input: + - interface_list + - 2 + - virtual_network + static_route: + get_input: + - static_routes_list + - 2 + allowed_address_pairs: + get_input: + - interface_list + - 2 + - allowed_address_pairs + shared_ip: + get_input: + - shared_ip_list + - 2 + ip_address: + get_input: + - interface_list + - 2 + - ip_address + interface_type: + get_input: + - service_interface_type_list + - 2 + requirements: + - binding: + capability: tosca.capabilities.network.Bindable + node: service_instance_2 + relationship: tosca.relationships.network.BindsTo + port_3: + type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port + properties: + static_routes: + get_input: + - interface_list + - 3 + - static_routes + virtual_network: + get_input: + - interface_list + - 3 + - virtual_network + static_route: + get_input: + - static_routes_list + - 3 + allowed_address_pairs: + get_input: + - interface_list + - 3 + - allowed_address_pairs + shared_ip: + get_input: + - shared_ip_list + - 3 + ip_address: + get_input: + - interface_list + - 3 + - ip_address + interface_type: + get_input: + - service_interface_type_list + - 3 + requirements: + - binding: + capability: tosca.capabilities.network.Bindable + node: service_instance_2 + relationship: tosca.relationships.network.BindsTo + groups: + service_instance_2: + type: org.openecomp.groups.heat.HeatStack + properties: + heat_file: ../Artifacts/OCS-fw.yml + members: + - service_instance_2 + - port_0 + - port_1 + - port_2 + - port_3 + outputs: + tenant_id: + description: Tenant id of the Service Instance + value: + get_attribute: + - service_instance_2 + - tenant_id + fq_name: + description: The FQ name of the service instance + value: + get_attribute: + - service_instance_2 + - fq_name + service_template_name: + description: Service Template of the Service Instance + value: + get_attribute: + - service_instance_2 + - service_template_name + show: + description: All attributes + value: + get_attribute: + - service_instance_2 + - show + active_vms: + description: Number of service VMs active for this Service Instance + value: + get_attribute: + - service_instance_2 + - active_vms + service_instance_name: + description: The name of the service instance + value: + get_attribute: + - service_instance_2 + - service_instance_name + virtual_machines: + description: Service VMs for the Service Instance + value: + get_attribute: + - service_instance_2 + - virtual_machines + status: + description: Status of the service instance + value: + get_attribute: + - service_instance_2 + - status + substitution_mappings: + node_type: org.openecomp.resource.abstract.nodes.heat.service_template + requirements: + link_port_0: + - port_0 + - link + link_port_1: + - port_1 + - link + link_port_2: + - port_2 + - link + link_port_3: + - port_3 + - link \ 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/contrail2serviceinstance/sameServiceTemplate/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sameServiceTemplate/inputfiles/MANIFEST.json new file mode 100644 index 0000000000..a26430ba72 --- /dev/null +++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sameServiceTemplate/inputfiles/MANIFEST.json @@ -0,0 +1,12 @@ +{ + "name": "vMME_Small", + "description": "HOT template to create 2 cinder volume attachment", + "version": "2013-05-23", + "data": [ + { + "file": "OCS-fw.yml", + "type": "HEAT", + "isBase": "false" + } + ] +} diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sameServiceTemplate/inputfiles/OCS-fw.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sameServiceTemplate/inputfiles/OCS-fw.yml new file mode 100644 index 0000000000..0082148f77 --- /dev/null +++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sameServiceTemplate/inputfiles/OCS-fw.yml @@ -0,0 +1,213 @@ +heat_template_version: 2013-05-23 + +description: > + Based on the following reference for the HOT-DMZ-FW template: + Version 3.5 8-10-2015 (Authors: Art Mishurov,am254u & Johhny Chen, jc3066) - HOT-DMZ-FW template that creates two DMZ networks (direct and protected) with a scaled out firewall service between the two. + +parameters: + HSL_direct_net_id: + type: string + description: Name of HSL (Logging) network + prefix_0: + type: string + prefix_1: + type: string + prefix_2: + type: string + HSL_direct_net_cidr: + type: string + description: HSL (Logging) network address (CIDR notation) + HSL_direct_net_gateway: + type: string + description: HSL (Logging) network gateway address + oam_mgmt_net_0_id: + type: string + description: Name of OAM network + oam_mgmt_net_1_id: + type: string + description: Name of OAM network + Cricket_OCS_direct_net_id: + type: string + description: Name of Cricket OCS network + Cricket_OCS_protected_net_id: + type: string + description: Name of Cricket OCS network + service_instance_name: + type: string + description: Service instance name + service_policy_name: + type: string + description: Policy Name + service_policy_direction: + type: string + description: Direction of Policy + start_src_ports: + type: number + description: Start of src port + end_src_ports: + type: number + description: End of src port + start_dst_ports: + type: number + description: Start of dst port + end_dst_ports: + type: number + description: End of dst port + st_name: + type: string + description: Name of service template + st_mode: + type: string + description: service mode + st_type: + type: string + description: service type + st_image: + type: string + description: Name of the image + st_image_name: + type: string + description: Name of the image + st_flavor: + type: string + description: Flavor + st_service_interface_type_list: + type: string + description: List of interface types + st_shared_ip_list: + type: string + description: List of shared ip enabled-disabled + st_static_routes_list: + type: string + description: List of static routes enabled-disabled + st_scaling: + type: string + description: Indicates whether service scaling is enabled + max_num_fw_instances: + type: number + description: maximum number of firewall instances for scaling + availability_zone_1: + type: string + description: availability zone + +resources: + + hsl_direct_net1: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: HSL_direct_net_id } +# external: True + + hsl_direct_net2: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: HSL_direct_net_id } +# external: True + + hsl_ip_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: hsl_direct_net1 } + cidr: { get_param: HSL_direct_net_cidr } + gateway_ip: { get_param: HSL_direct_net_gateway } + + service_template: + type: OS::Contrail::ServiceTemplate + properties: + name: { get_param: st_name } + service_mode: { get_param: st_mode } + service_type: { get_param: st_type } + image_name: { get_param: st_image } + flavor: { get_param: st_flavor } + service_interface_type_list: { "Fn::Split" : [ ",", "management,left,right,other" ] } + shared_ip_list: { "Fn::Split" : [ ",", Ref: st_shared_ip_list ] } + static_routes_list: { "Fn::Split" : [ ",", Ref: st_static_routes_list ] } + service_scaling: { get_param: st_scaling } + + service_instance_1: + type: OS::Contrail::ServiceInstance + depends_on: [ hsl_ip_subnet] + properties: + name: { get_param: service_instance_name } + availability_zone: { get_param: availability_zone_1 } + service_template: { get_resource: service_template } + interface_list: [ + { + virtual_network: { get_param: oam_mgmt_net_0_id } + }, + { + virtual_network: { get_param: Cricket_OCS_direct_net_id } + }, + { + virtual_network: { get_resource: hsl_direct_net1 } + }, + { + virtual_network: {get_param: oam_mgmt_net_1_id}, + static_routes: [ + { "prefix": {get_param: prefix_0} }, + { "prefix": {get_param: prefix_1} }, + { "prefix": {get_param: prefix_2} }, + ], + } + ] + + service_instance_2: + type: OS::Contrail::ServiceInstance + depends_on: [ hsl_ip_subnet] + properties: + name: { get_param: service_instance_name } + availability_zone: { get_param: availability_zone_1 } + service_template: { get_resource: service_template } + scale_out: + max_instances: {get_param: max_num_fw_instances} + interface_list: [ + { + virtual_network: { get_param: oam_mgmt_net_0_id } + }, + { + virtual_network: { get_param: Cricket_OCS_direct_net_id } + }, + { + virtual_network: { get_resource: hsl_direct_net2 } + }, + { + virtual_network: {get_param: oam_mgmt_net_1_id}, + static_routes: [ + { "prefix": {get_param: prefix_0} }, + { "prefix": {get_param: prefix_1} }, + { "prefix": {get_param: prefix_2} }, + ], + } + ] + + service_policy: + type: OS::Contrail::NetworkPolicy + depends_on: [ service_instance_1 ] + properties: + name: { get_param: service_policy_name } + entries: + policy_rule: [ + { + "direction": { get_param: service_policy_direction }, + "protocol": "any", + "src_ports": [{"start_port": {get_param: start_src_ports}, "end_port": {get_param: end_src_ports}}], + "dst_ports": [{"start_port": {get_param: start_dst_ports}, "end_port": {get_param: end_dst_ports}}], + "dst_addresses": [{ "virtual_network": { get_param: Cricket_OCS_direct_net_id }}], + "action_list": { "apply_service": [{ get_resource: service_instance_1 }]}, + "src_addresses": [{ "virtual_network": { get_param: Cricket_OCS_protected_net_id }}], + }, + ] + + service_policy_attach_direct_net: + type: OS::Contrail::AttachPolicy + depends_on: [ service_policy ] + properties: + network: { get_param: Cricket_OCS_direct_net_id } + policy: { get_attr: [service_policy, fq_name] } + + service_policy_attach_protected_net: + type: OS::Contrail::AttachPolicy + depends_on: [ service_policy ] + properties: + network: { get_param: Cricket_OCS_protected_net_id } + policy: { get_attr: [service_policy, fq_name] } \ 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/contrail2serviceinstance/sharedNetworkMulti/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkMulti/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml new file mode 100644 index 0000000000..73abe8ecb0 --- /dev/null +++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkMulti/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml @@ -0,0 +1,71 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +metadata: + template_name: GlobalSubstitutionTypes +imports: + ContrailComputeGlobalTypes: + file: ContrailComputeGlobalTypesServiceTemplate.yaml + CinderVolumeGlobalTypes: + file: CinderVolumeGlobalTypesServiceTemplate.yaml + ContrailVirtualNetworkGlobalType: + file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml + AbstractSubstituteGlobalTypes: + file: AbstractSubstituteGlobalTypesServiceTemplate.yaml + ContrailPortGlobalTypes: + file: ContrailPortGlobalTypesServiceTemplate.yaml + NeutronPortGlobalTypes: + file: NeutronPortGlobalTypesServiceTemplate.yaml + NeutronNetGlobalTypes: + file: NeutronNetGlobalTypesServiceTemplate.yaml + CommonGlobalTypes: + file: CommonGlobalTypesServiceTemplate.yaml + ContrailAbstractSubstituteGlobalTypes: + file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml + ContrailNetworkRuleGlobalType: + file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml + NeutronSecurityRulesGlobalTypes: + file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml + NovaServerGlobalTypes: + file: NovaServerGlobalTypesServiceTemplate.yaml + ContrailV2VirtualMachineInterfaceGlobalType: + file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml +node_types: + org.openecomp.resource.abstract.nodes.heat.service_template: + derived_from: org.openecomp.resource.abstract.nodes.contrail.AbstractSubstitute + requirements: + - link_port_0: + capability: tosca.capabilities.network.Linkable + node: tosca.nodes.Root + relationship: tosca.relationships.network.LinksTo + occurrences: + - 1 + - 1 + - link_port_1: + capability: tosca.capabilities.network.Linkable + node: tosca.nodes.Root + relationship: tosca.relationships.network.LinksTo + occurrences: + - 1 + - 1 + - link_port_2: + capability: tosca.capabilities.network.Linkable + node: tosca.nodes.Root + relationship: tosca.relationships.network.LinksTo + occurrences: + - 1 + - 1 + - link_port_3: + capability: tosca.capabilities.network.Linkable + node: tosca.nodes.Root + relationship: tosca.relationships.network.LinksTo + occurrences: + - 1 + - 1 + - link_port_4: + capability: tosca.capabilities.network.Linkable + node: tosca.nodes.Root + relationship: tosca.relationships.network.LinksTo + occurrences: + - 1 + - 1 + org.openecomp.resource.vfc.nodes.heat.compute_service_template: + derived_from: org.openecomp.resource.vfc.nodes.heat.contrail.Compute \ 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/contrail2serviceinstance/sharedNetworkMulti/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkMulti/expectedoutputfiles/MainServiceTemplate.yaml new file mode 100644 index 0000000000..c6a6364988 --- /dev/null +++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkMulti/expectedoutputfiles/MainServiceTemplate.yaml @@ -0,0 +1,407 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +metadata: + template_name: Main +imports: + ContrailComputeGlobalTypes: + file: ContrailComputeGlobalTypesServiceTemplate.yaml + CinderVolumeGlobalTypes: + file: CinderVolumeGlobalTypesServiceTemplate.yaml + ContrailVirtualNetworkGlobalType: + file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml + AbstractSubstituteGlobalTypes: + file: AbstractSubstituteGlobalTypesServiceTemplate.yaml + ContrailPortGlobalTypes: + file: ContrailPortGlobalTypesServiceTemplate.yaml + GlobalSubstitutionTypes: + file: GlobalSubstitutionTypesServiceTemplate.yaml + NeutronPortGlobalTypes: + file: NeutronPortGlobalTypesServiceTemplate.yaml + NeutronNetGlobalTypes: + file: NeutronNetGlobalTypesServiceTemplate.yaml + CommonGlobalTypes: + file: CommonGlobalTypesServiceTemplate.yaml + ContrailAbstractSubstituteGlobalTypes: + file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml + ContrailNetworkRuleGlobalType: + file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml + NeutronSecurityRulesGlobalTypes: + file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml + NovaServerGlobalTypes: + file: NovaServerGlobalTypesServiceTemplate.yaml + ContrailV2VirtualMachineInterfaceGlobalType: + file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml +topology_template: + inputs: + Internal1_shared: + hidden: false + immutable: false + type: string + service_policy_name: + hidden: false + immutable: false + type: string + description: Policy Name + st_static_routes_list: + hidden: false + immutable: false + type: string + description: List of static routes enabled-disabled + st_type: + hidden: false + immutable: false + type: string + description: service type + Internal2_forwarding_mode: + hidden: false + immutable: false + type: string + st_service_interface_type_list: + hidden: false + immutable: false + type: string + description: List of interface types + st_mode: + hidden: false + immutable: false + type: string + description: service mode + Cricket_OCS_protected_net_id: + hidden: false + immutable: false + type: string + description: Name of Cricket OCS network + oam_mgmt_net_0_id: + hidden: false + immutable: false + type: string + description: Name of OAM network + start_dst_ports: + hidden: false + immutable: false + type: float + description: Start of dst port + st_flavor: + hidden: false + immutable: false + type: string + description: Flavor + availability_zone_1: + hidden: false + immutable: false + type: string + description: availability zone + Internal2_shared: + hidden: false + immutable: false + type: string + service_instance_name: + hidden: false + immutable: false + type: string + description: Service instance name + st_scaling: + hidden: false + immutable: false + type: string + description: Indicates whether service scaling is enabled + max_num_fw_instances: + hidden: false + immutable: false + type: float + description: maximum number of firewall instances for scaling + Internal1_net_name: + hidden: false + immutable: false + type: string + start_src_ports: + hidden: false + immutable: false + type: float + description: Start of src port + service_policy_direction: + hidden: false + immutable: false + type: string + description: Direction of Policy + st_name: + hidden: false + immutable: false + type: string + description: Name of service template + Internal2_net_name: + hidden: false + immutable: false + type: string + hsl_direct_net3: + hidden: false + immutable: false + type: string + hsl_direct_net4: + hidden: false + immutable: false + type: string + HSL_direct_net_gateway: + hidden: false + immutable: false + type: string + description: HSL (Logging) network gateway address + hsl_direct_net1: + hidden: false + immutable: false + type: string + hsl_direct_net2: + hidden: false + immutable: false + type: string + st_image: + hidden: false + immutable: false + type: string + description: Name of the image + st_shared_ip_list: + hidden: false + immutable: false + type: string + description: List of shared ip enabled-disabled + Cricket_OCS_direct_net_id: + hidden: false + immutable: false + type: string + description: Name of Cricket OCS network + Internal1_forwarding_mode: + hidden: false + immutable: false + type: string + end_src_ports: + hidden: false + immutable: false + type: float + description: End of src port + end_dst_ports: + hidden: false + immutable: false + type: float + description: End of dst port + HSL_direct_net_id: + hidden: false + immutable: false + type: string + description: Name of HSL (Logging) network + HSL_direct_net_cidr: + hidden: false + immutable: false + type: string + description: HSL (Logging) network address (CIDR notation) + node_templates: + Internal2-net: + type: org.openecomp.resource.vl.nodes.heat.network.contrail.VirtualNetwork + properties: + shared: + get_input: Internal1_shared + forwarding_mode: + get_input: Internal1_forwarding_mode + network_name: + get_input: Internal2_net_name + Internal1-net: + type: org.openecomp.resource.vl.nodes.heat.network.contrail.VirtualNetwork + properties: + shared: + get_input: Internal1_shared + forwarding_mode: + get_input: Internal1_forwarding_mode + network_name: + get_input: Internal1_net_name + Internal3-net: + type: org.openecomp.resource.vl.nodes.heat.network.contrail.VirtualNetwork + properties: + shared: + get_input: Internal1_shared + forwarding_mode: + get_input: Internal1_forwarding_mode + network_name: + get_input: Internal2_net_name + hsl_direct_net: + type: org.openecomp.resource.vl.nodes.heat.network.contrail.VirtualNetwork + properties: + network_name: + get_input: HSL_direct_net_id + subnets: + hsl_ip_subnet: + cidr: + get_input: HSL_direct_net_cidr + gateway_ip: + get_input: HSL_direct_net_gateway + service_instance: + type: org.openecomp.resource.abstract.nodes.heat.service_template + directives: + - substitutable + properties: + flavor: + get_input: st_flavor + availability_zone: + get_input: availability_zone_1 + image_name: + get_input: st_image + service_template_filter: + substitute_service_template: service_instanceServiceTemplate.yaml + count: + get_input: max_num_fw_instances + scaling_enabled: + get_input: st_scaling + mandatory: false + service_type: + get_input: st_type + static_routes_list: + - token: + - get_input: st_static_routes_list + - ',' + - 0 + - token: + - get_input: st_static_routes_list + - ',' + - 1 + - token: + - get_input: st_static_routes_list + - ',' + - 2 + - token: + - get_input: st_static_routes_list + - ',' + - 3 + - token: + - get_input: st_static_routes_list + - ',' + - 4 + service_template_name: + get_input: st_name + service_interface_type_list: + - token: + - get_input: st_service_interface_type_list + - ',' + - 0 + - token: + - get_input: st_service_interface_type_list + - ',' + - 1 + - token: + - get_input: st_service_interface_type_list + - ',' + - 2 + - token: + - get_input: st_service_interface_type_list + - ',' + - 3 + - token: + - get_input: st_service_interface_type_list + - ',' + - 4 + interface_list: + - virtual_network: + get_input: hsl_direct_net1 + - virtual_network: + get_input: hsl_direct_net2 + - virtual_network: + get_input: hsl_direct_net3 + - virtual_network: + get_input: hsl_direct_net4 + - virtual_network: hsl_direct_net + service_instance_name: + get_input: service_instance_name + service_mode: + get_input: st_mode + shared_ip_list: + - token: + - get_input: st_shared_ip_list + - ',' + - 0 + - token: + - get_input: st_shared_ip_list + - ',' + - 1 + - token: + - get_input: st_shared_ip_list + - ',' + - 2 + - token: + - get_input: st_shared_ip_list + - ',' + - 3 + - token: + - get_input: st_shared_ip_list + - ',' + - 4 + requirements: + - link_port_0: + capability: tosca.capabilities.network.Linkable + node: Internal1-net + relationship: tosca.relationships.network.LinksTo + - link_port_1: + capability: tosca.capabilities.network.Linkable + node: Internal2-net + relationship: tosca.relationships.network.LinksTo + - link_port_2: + capability: tosca.capabilities.network.Linkable + node: Internal3-net + relationship: tosca.relationships.network.LinksTo + - link_port_4: + capability: tosca.capabilities.network.Linkable + node: hsl_direct_net + relationship: tosca.relationships.network.LinksTo + - dependency: + capability: tosca.capabilities.Node + node: hsl_direct_net + relationship: tosca.relationships.DependsOn + service_policy: + type: org.openecomp.resource.vfc.rules.nodes.heat.network.contrail.NetworkRules + properties: + entries: + policy_rule: + - src_ports: + - start_port: + get_input: start_src_ports + end_port: + get_input: end_src_ports + protocol: any + action_list: + apply_service: + - service_instance + dst_addresses: + - virtual_network: + get_input: Cricket_OCS_direct_net_id + dst_ports: + - start_port: + get_input: start_dst_ports + end_port: + get_input: end_dst_ports + src_addresses: + - virtual_network: + get_input: Cricket_OCS_protected_net_id + direction: + get_input: service_policy_direction + name: + get_input: service_policy_name + requirements: + - dependency: + capability: tosca.capabilities.Node + node: service_instance + relationship: tosca.relationships.DependsOn + groups: + OCS-fw: + type: org.openecomp.groups.heat.HeatStack + properties: + heat_file: ../Artifacts/OCS-fw.yml + description: | + Based on the following reference for the HOT-DMZ-FW template: Version 3.5 8-10-2015 (Authors: Art Mishurov,am254u & Johhny Chen, jc3066) - HOT-DMZ-FW template that creates two DMZ networks (direct and protected) with a scaled out firewall service between the two. + members: + - hsl_direct_net + - service_instance + - service_policy + network_base: + type: org.openecomp.groups.heat.HeatStack + properties: + heat_file: ../Artifacts/network_base.yml + description: ASC External Networks Template + members: + - Internal2-net + - Internal1-net + - Internal3-net \ 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/contrail2serviceinstance/sharedNetworkMulti/expectedoutputfiles/service_instanceServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkMulti/expectedoutputfiles/service_instanceServiceTemplate.yaml new file mode 100644 index 0000000000..1933f88f6c --- /dev/null +++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkMulti/expectedoutputfiles/service_instanceServiceTemplate.yaml @@ -0,0 +1,451 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +metadata: + template_name: service_instance +imports: + ContrailComputeGlobalTypes: + file: ContrailComputeGlobalTypesServiceTemplate.yaml + CinderVolumeGlobalTypes: + file: CinderVolumeGlobalTypesServiceTemplate.yaml + ContrailVirtualNetworkGlobalType: + file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml + AbstractSubstituteGlobalTypes: + file: AbstractSubstituteGlobalTypesServiceTemplate.yaml + ContrailPortGlobalTypes: + file: ContrailPortGlobalTypesServiceTemplate.yaml + GlobalSubstitutionTypes: + file: GlobalSubstitutionTypesServiceTemplate.yaml + NeutronPortGlobalTypes: + file: NeutronPortGlobalTypesServiceTemplate.yaml + NeutronNetGlobalTypes: + file: NeutronNetGlobalTypesServiceTemplate.yaml + CommonGlobalTypes: + file: CommonGlobalTypesServiceTemplate.yaml + ContrailAbstractSubstituteGlobalTypes: + file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml + ContrailNetworkRuleGlobalType: + file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml + NeutronSecurityRulesGlobalTypes: + file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml + NovaServerGlobalTypes: + file: NovaServerGlobalTypesServiceTemplate.yaml + ContrailV2VirtualMachineInterfaceGlobalType: + file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml +topology_template: + inputs: + availability_zone: + hidden: false + immutable: false + type: string + description: Availability zone to create servers in + required: false + status: SUPPORTED + static_routes_list: + hidden: false + immutable: false + type: list + description: Static routes enabled + required: false + status: SUPPORTED + entry_schema: + type: boolean + availability_zone_enable: + hidden: false + immutable: false + type: boolean + description: Indicates availability zone is enabled + required: false + default: false + status: SUPPORTED + service_template_name: + hidden: false + immutable: false + type: string + description: Service template name + required: false + status: SUPPORTED + ordered_interfaces: + hidden: false + immutable: false + type: boolean + description: Indicates if service interface are ordered + required: false + default: false + status: SUPPORTED + flavor: + hidden: false + immutable: false + type: string + description: flavor + required: false + status: SUPPORTED + image_name: + hidden: false + immutable: false + type: string + description: Image name + required: true + status: SUPPORTED + service_type: + hidden: false + immutable: false + type: string + description: Service type + required: true + status: SUPPORTED + constraints: + - valid_values: + - firewall + - analyzer + - source-nat + - loadbalancer + service_interface_type_list: + hidden: false + immutable: false + type: list + description: List of interface types + required: true + status: SUPPORTED + entry_schema: + type: string + constraints: + - valid_values: + - management + - left + - right + - other + service_instance_name: + hidden: false + immutable: false + type: string + description: Service instance name + required: true + status: SUPPORTED + interface_list: + hidden: false + immutable: false + type: list + description: List of interfaces + required: false + status: SUPPORTED + entry_schema: + type: org.openecomp.datatypes.heat.network.contrail.InterfaceData + service_mode: + hidden: false + immutable: false + type: string + description: Service mode + required: true + status: SUPPORTED + constraints: + - valid_values: + - transparent + - in-network + - in-network-nat + shared_ip_list: + hidden: false + immutable: false + type: list + description: Shared ips enabled + required: false + status: SUPPORTED + entry_schema: + type: boolean + node_templates: + port_0: + type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port + properties: + static_routes: + get_input: + - interface_list + - 0 + - static_routes + virtual_network: + get_input: + - interface_list + - 0 + - virtual_network + static_route: + get_input: + - static_routes_list + - 0 + allowed_address_pairs: + get_input: + - interface_list + - 0 + - allowed_address_pairs + shared_ip: + get_input: + - shared_ip_list + - 0 + ip_address: + get_input: + - interface_list + - 0 + - ip_address + interface_type: + get_input: + - service_interface_type_list + - 0 + requirements: + - binding: + capability: tosca.capabilities.network.Bindable + node: service_instance + relationship: tosca.relationships.network.BindsTo + port_1: + type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port + properties: + static_routes: + get_input: + - interface_list + - 1 + - static_routes + virtual_network: + get_input: + - interface_list + - 1 + - virtual_network + static_route: + get_input: + - static_routes_list + - 1 + allowed_address_pairs: + get_input: + - interface_list + - 1 + - allowed_address_pairs + shared_ip: + get_input: + - shared_ip_list + - 1 + ip_address: + get_input: + - interface_list + - 1 + - ip_address + interface_type: + get_input: + - service_interface_type_list + - 1 + requirements: + - binding: + capability: tosca.capabilities.network.Bindable + node: service_instance + relationship: tosca.relationships.network.BindsTo + port_2: + type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port + properties: + static_routes: + get_input: + - interface_list + - 2 + - static_routes + virtual_network: + get_input: + - interface_list + - 2 + - virtual_network + static_route: + get_input: + - static_routes_list + - 2 + allowed_address_pairs: + get_input: + - interface_list + - 2 + - allowed_address_pairs + shared_ip: + get_input: + - shared_ip_list + - 2 + ip_address: + get_input: + - interface_list + - 2 + - ip_address + interface_type: + get_input: + - service_interface_type_list + - 2 + requirements: + - binding: + capability: tosca.capabilities.network.Bindable + node: service_instance + relationship: tosca.relationships.network.BindsTo + port_3: + type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port + properties: + static_routes: + get_input: + - interface_list + - 3 + - static_routes + virtual_network: + get_input: + - interface_list + - 3 + - virtual_network + static_route: + get_input: + - static_routes_list + - 3 + allowed_address_pairs: + get_input: + - interface_list + - 3 + - allowed_address_pairs + shared_ip: + get_input: + - shared_ip_list + - 3 + ip_address: + get_input: + - interface_list + - 3 + - ip_address + interface_type: + get_input: + - service_interface_type_list + - 3 + requirements: + - binding: + capability: tosca.capabilities.network.Bindable + node: service_instance + relationship: tosca.relationships.network.BindsTo + port_4: + type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port + properties: + static_routes: + get_input: + - interface_list + - 4 + - static_routes + virtual_network: + get_input: + - interface_list + - 4 + - virtual_network + static_route: + get_input: + - static_routes_list + - 4 + allowed_address_pairs: + get_input: + - interface_list + - 4 + - allowed_address_pairs + shared_ip: + get_input: + - shared_ip_list + - 4 + ip_address: + get_input: + - interface_list + - 4 + - ip_address + interface_type: + get_input: + - service_interface_type_list + - 4 + requirements: + - binding: + capability: tosca.capabilities.network.Bindable + node: service_instance + relationship: tosca.relationships.network.BindsTo + service_instance: + type: org.openecomp.resource.vfc.nodes.heat.compute_service_template + properties: + flavor: + get_input: flavor + image_name: + get_input: image_name + availability_zone: + get_input: availability_zone + service_type: + get_input: service_type + availability_zone_enable: + get_input: availability_zone_enable + service_template_name: + get_input: service_template_name + service_instance_name: + get_input: service_instance_name + service_mode: + get_input: service_mode + groups: + service_instance: + type: org.openecomp.groups.heat.HeatStack + properties: + heat_file: ../Artifacts/OCS-fw.yml + members: + - service_instance + - port_0 + - port_1 + - port_2 + - port_3 + - port_4 + outputs: + tenant_id: + description: Tenant id of the Service Instance + value: + get_attribute: + - service_instance + - tenant_id + fq_name: + description: The FQ name of the service instance + value: + get_attribute: + - service_instance + - fq_name + service_template_name: + description: Service Template of the Service Instance + value: + get_attribute: + - service_instance + - service_template_name + show: + description: All attributes + value: + get_attribute: + - service_instance + - show + active_vms: + description: Number of service VMs active for this Service Instance + value: + get_attribute: + - service_instance + - active_vms + service_instance_name: + description: The name of the service instance + value: + get_attribute: + - service_instance + - service_instance_name + virtual_machines: + description: Service VMs for the Service Instance + value: + get_attribute: + - service_instance + - virtual_machines + status: + description: Status of the service instance + value: + get_attribute: + - service_instance + - status + substitution_mappings: + node_type: org.openecomp.resource.abstract.nodes.heat.service_template + requirements: + link_port_0: + - port_0 + - link + link_port_1: + - port_1 + - link + link_port_2: + - port_2 + - link + link_port_3: + - port_3 + - link + link_port_4: + - port_4 + - link \ 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/contrail2serviceinstance/sharedNetworkMulti/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkMulti/inputfiles/MANIFEST.json new file mode 100644 index 0000000000..b7969ccd71 --- /dev/null +++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkMulti/inputfiles/MANIFEST.json @@ -0,0 +1,17 @@ +{ + "name": "vMME_Small", + "description": "HOT template to create 2 cinder volume attachment", + "version": "2013-05-23", + "data": [ + { + "file": "OCS-fw.yml", + "type": "HEAT", + "isBase": "false" + }, + { + "file": "network_base.yml", + "type": "HEAT", + "isBase": "true" + } + ] +} diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkMulti/inputfiles/OCS-fw.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkMulti/inputfiles/OCS-fw.yml new file mode 100644 index 0000000000..dd578c2d8b --- /dev/null +++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkMulti/inputfiles/OCS-fw.yml @@ -0,0 +1,173 @@ +heat_template_version: 2013-05-23 + +description: > + Based on the following reference for the HOT-DMZ-FW template: + Version 3.5 8-10-2015 (Authors: Art Mishurov,am254u & Johhny Chen, jc3066) - HOT-DMZ-FW template that creates two DMZ networks (direct and protected) with a scaled out firewall service between the two. + +parameters: + hsl_direct_net1: + type: string + hsl_direct_net2: + type: string + hsl_direct_net3: + type: string + hsl_direct_net4: + type: string + HSL_direct_net_id: + type: string + description: Name of HSL (Logging) network + HSL_direct_net_cidr: + type: string + description: HSL (Logging) network address (CIDR notation) + HSL_direct_net_gateway: + type: string + description: HSL (Logging) network gateway address + oam_mgmt_net_0_id: + type: string + description: Name of OAM network + Cricket_OCS_direct_net_id: + type: string + description: Name of Cricket OCS network + Cricket_OCS_protected_net_id: + type: string + description: Name of Cricket OCS network + service_instance_name: + type: string + description: Service instance name + service_policy_name: + type: string + description: Policy Name + service_policy_direction: + type: string + description: Direction of Policy + start_src_ports: + type: number + description: Start of src port + end_src_ports: + type: number + description: End of src port + start_dst_ports: + type: number + description: Start of dst port + end_dst_ports: + type: number + description: End of dst port + st_name: + type: string + description: Name of service template + st_mode: + type: string + description: service mode + st_type: + type: string + description: service type + st_image: + type: string + description: Name of the image + st_flavor: + type: string + description: Flavor + st_service_interface_type_list: + type: string + description: List of interface types + st_shared_ip_list: + type: string + description: List of shared ip enabled-disabled + st_static_routes_list: + type: string + description: List of static routes enabled-disabled + st_scaling: + type: string + description: Indicates whether service scaling is enabled + max_num_fw_instances: + type: number + description: maximum number of firewall instances for scaling + availability_zone_1: + type: string + description: availability zone + +resources: + + hsl_direct_net: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: HSL_direct_net_id } + + hsl_ip_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: hsl_direct_net } + cidr: { get_param: HSL_direct_net_cidr } + gateway_ip: { get_param: HSL_direct_net_gateway } + + service_template: + type: OS::Contrail::ServiceTemplate + properties: + name: { get_param: st_name } + service_mode: { get_param: st_mode } + service_type: { get_param: st_type } + image_name: { get_param: st_image } + flavor: { get_param: st_flavor } + service_interface_type_list: { "Fn::Split" : [ ",", Ref: st_service_interface_type_list ] } + shared_ip_list: { "Fn::Split" : [ ",", Ref: st_shared_ip_list ] } + static_routes_list: { "Fn::Split" : [ ",", Ref: st_static_routes_list ] } + service_scaling: { get_param: st_scaling } + + service_instance: + type: OS::Contrail::ServiceInstance + depends_on: [ hsl_ip_subnet] + properties: + name: { get_param: service_instance_name } + availability_zone: { get_param: availability_zone_1 } + service_template: { get_resource: service_template } + scale_out: + max_instances: {get_param: max_num_fw_instances} + interface_list: [ + { + virtual_network: { get_param: hsl_direct_net1 } + }, + { + virtual_network: { get_param: hsl_direct_net2 } + }, + { + virtual_network: { get_param: hsl_direct_net3 } + }, + { + virtual_network: { get_param: hsl_direct_net4 } + }, + { + virtual_network: { get_resource: hsl_direct_net } + } + ] + + service_policy: + type: OS::Contrail::NetworkPolicy + depends_on: [ service_instance ] + properties: + name: { get_param: service_policy_name } + entries: + policy_rule: [ + { + "direction": { get_param: service_policy_direction }, + "protocol": "any", + "src_ports": [{"start_port": {get_param: start_src_ports}, "end_port": {get_param: end_src_ports}}], + "dst_ports": [{"start_port": {get_param: start_dst_ports}, "end_port": {get_param: end_dst_ports}}], + "dst_addresses": [{ "virtual_network": { get_param: Cricket_OCS_direct_net_id }}], + "action_list": { "apply_service": [{ get_resource: service_instance }]}, + "src_addresses": [{ "virtual_network": { get_param: Cricket_OCS_protected_net_id }}], + }, + ] + + service_policy_attach_direct_net: + type: OS::Contrail::AttachPolicy + depends_on: [ service_policy ] + properties: + network: { get_param: Cricket_OCS_direct_net_id } + policy: { get_attr: [service_policy, fq_name] } + + service_policy_attach_protected_net: + type: OS::Contrail::AttachPolicy + depends_on: [ service_policy ] + properties: + network: { get_param: Cricket_OCS_protected_net_id } + policy: { get_attr: [service_policy, fq_name] } \ 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/contrail2serviceinstance/sharedNetworkMulti/inputfiles/network_base.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkMulti/inputfiles/network_base.yml new file mode 100644 index 0000000000..21fef30282 --- /dev/null +++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkMulti/inputfiles/network_base.yml @@ -0,0 +1,47 @@ +heat_template_version: 2013-05-23 + +description: ASC External Networks Template + +parameters: + Internal1_net_name: + type: string + Internal2_net_name: + type: string + Internal1_forwarding_mode: + type: string + Internal2_forwarding_mode: + type: string + Internal1_shared: + type: string + Internal2_shared: + type: string + +resources: + Internal1-net: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: Internal1_net_name } + forwarding_mode: { get_param: Internal1_forwarding_mode } + shared: { get_param: Internal1_shared } + + Internal2-net: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: Internal2_net_name } + forwarding_mode: { get_param: Internal1_forwarding_mode } + shared: { get_param: Internal1_shared } + + Internal3-net: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: Internal2_net_name } + forwarding_mode: { get_param: Internal1_forwarding_mode } + shared: { get_param: Internal1_shared } + +outputs: + hsl_direct_net1: + value: { list_join: [':', { get_attr: [ Internal1-net, fq_name ] } ] } + hsl_direct_net2: + value: { get_attr: [ Internal2-net, fq_name ] } + hsl_direct_net3: + value: {get_resource: Internal3-net} \ 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/contrail2serviceinstance/sharedNetworkNested/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkNested/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml new file mode 100644 index 0000000000..a11b54226b --- /dev/null +++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkNested/expectedoutputfiles/GlobalSubstitutionTypesServiceTemplate.yaml @@ -0,0 +1,154 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +metadata: + template_name: GlobalSubstitutionTypes +imports: + ContrailComputeGlobalTypes: + file: ContrailComputeGlobalTypesServiceTemplate.yaml + CinderVolumeGlobalTypes: + file: CinderVolumeGlobalTypesServiceTemplate.yaml + ContrailVirtualNetworkGlobalType: + file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml + AbstractSubstituteGlobalTypes: + file: AbstractSubstituteGlobalTypesServiceTemplate.yaml + ContrailPortGlobalTypes: + file: ContrailPortGlobalTypesServiceTemplate.yaml + NeutronPortGlobalTypes: + file: NeutronPortGlobalTypesServiceTemplate.yaml + NeutronNetGlobalTypes: + file: NeutronNetGlobalTypesServiceTemplate.yaml + CommonGlobalTypes: + file: CommonGlobalTypesServiceTemplate.yaml + ContrailAbstractSubstituteGlobalTypes: + file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml + ContrailNetworkRuleGlobalType: + file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml + NeutronSecurityRulesGlobalTypes: + file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml + NovaServerGlobalTypes: + file: NovaServerGlobalTypesServiceTemplate.yaml + ContrailV2VirtualMachineInterfaceGlobalType: + file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml +node_types: + org.openecomp.resource.vfc.nodes.heat.st_image: + derived_from: org.openecomp.resource.vfc.nodes.heat.contrail.Compute + org.openecomp.resource.abstract.nodes.heat.service_template: + derived_from: org.openecomp.resource.abstract.nodes.contrail.AbstractSubstitute + requirements: + - link_port_0: + capability: tosca.capabilities.network.Linkable + node: tosca.nodes.Root + relationship: tosca.relationships.network.LinksTo + occurrences: + - 1 + - 1 + org.openecomp.resource.abstract.nodes.heat.OCS-fw: + derived_from: org.openecomp.resource.abstract.nodes.AbstractSubstitute + properties: + service_policy_name: + type: string + description: Policy Name + st_static_routes_list: + type: string + description: List of static routes enabled-disabled + st_type: + type: string + description: service type + st_service_interface_type_list: + type: string + description: List of interface types + st_mode: + type: string + description: service mode + Cricket_OCS_protected_net_id: + type: string + description: Name of Cricket OCS network + oam_mgmt_net_0_id: + type: string + description: Name of OAM network + start_dst_ports: + type: float + description: Start of dst port + st_flavor: + type: string + description: Flavor + availability_zone_1: + type: string + description: availability zone + service_instance_name: + type: string + description: Service instance name + st_scaling: + type: string + description: Indicates whether service scaling is enabled + max_num_fw_instances: + type: float + description: maximum number of firewall instances for scaling + start_src_ports: + type: float + description: Start of src port + service_policy_direction: + type: string + description: Direction of Policy + st_name: + type: string + description: Name of service template + hsl_direct_net3: + type: string + hsl_direct_net4: + type: string + HSL_direct_net_gateway: + type: string + description: HSL (Logging) network gateway address + hsl_direct_net1: + type: string + hsl_direct_net2: + type: string + st_image: + type: string + description: Name of the image + st_shared_ip_list: + type: string + description: List of shared ip enabled-disabled + Cricket_OCS_direct_net_id: + type: string + description: Name of Cricket OCS network + network_param: + type: string + end_src_ports: + type: float + description: End of src port + end_dst_ports: + type: float + description: End of dst port + HSL_direct_net_id: + type: string + description: Name of HSL (Logging) network + HSL_direct_net_cidr: + type: string + description: HSL (Logging) network address (CIDR notation) + requirements: + - link_port_0_service_instance: + capability: tosca.capabilities.network.Linkable + node: tosca.nodes.Root + relationship: tosca.relationships.network.LinksTo + occurrences: + - 1 + - 1 + - network_service_policy: + capability: tosca.capabilities.Attachment + node: tosca.nodes.network.Network + relationship: org.openecomp.relationships.AttachesTo + occurrences: + - 0 + - UNBOUNDED + capabilities: + link_hsl_direct_net: + type: tosca.capabilities.network.Linkable + occurrences: + - 1 + - UNBOUNDED + attachment_hsl_direct_net: + type: tosca.capabilities.Attachment + occurrences: + - 1 + - UNBOUNDED \ 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/contrail2serviceinstance/sharedNetworkNested/expectedoutputfiles/MainServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkNested/expectedoutputfiles/MainServiceTemplate.yaml new file mode 100644 index 0000000000..53ecba9888 --- /dev/null +++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkNested/expectedoutputfiles/MainServiceTemplate.yaml @@ -0,0 +1,90 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +metadata: + template_name: Main +imports: + ContrailComputeGlobalTypes: + file: ContrailComputeGlobalTypesServiceTemplate.yaml + CinderVolumeGlobalTypes: + file: CinderVolumeGlobalTypesServiceTemplate.yaml + ContrailVirtualNetworkGlobalType: + file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml + AbstractSubstituteGlobalTypes: + file: AbstractSubstituteGlobalTypesServiceTemplate.yaml + ContrailPortGlobalTypes: + file: ContrailPortGlobalTypesServiceTemplate.yaml + GlobalSubstitutionTypes: + file: GlobalSubstitutionTypesServiceTemplate.yaml + NeutronPortGlobalTypes: + file: NeutronPortGlobalTypesServiceTemplate.yaml + NeutronNetGlobalTypes: + file: NeutronNetGlobalTypesServiceTemplate.yaml + CommonGlobalTypes: + file: CommonGlobalTypesServiceTemplate.yaml + ContrailAbstractSubstituteGlobalTypes: + file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml + ContrailNetworkRuleGlobalType: + file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml + NeutronSecurityRulesGlobalTypes: + file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml + NovaServerGlobalTypes: + file: NovaServerGlobalTypesServiceTemplate.yaml + ContrailV2VirtualMachineInterfaceGlobalType: + file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml +topology_template: + inputs: + Internal1_shared: + hidden: false + immutable: false + type: string + Internal1_forwarding_mode: + hidden: false + immutable: false + type: string + Internal2_net_name: + hidden: false + immutable: false + type: string + Internal2_forwarding_mode: + hidden: false + immutable: false + type: string + Internal2_shared: + hidden: false + immutable: false + type: string + Internal1_net_name: + hidden: false + immutable: false + type: string + node_templates: + Internal1-net: + type: org.openecomp.resource.vl.nodes.heat.network.contrail.VirtualNetwork + properties: + shared: + get_input: Internal1_shared + forwarding_mode: + get_input: Internal1_forwarding_mode + network_name: + get_input: Internal1_net_name + test_nested: + type: org.openecomp.resource.abstract.nodes.heat.OCS-fw + directives: + - substitutable + properties: + service_template_filter: + substitute_service_template: OCS-fwServiceTemplate.yaml + network_param: Internal1-net + requirements: + - link_port_0: + capability: tosca.capabilities.network.Linkable + node: Internal1-net + relationship: tosca.relationships.network.LinksTo + groups: + main: + type: org.openecomp.groups.heat.HeatStack + properties: + heat_file: ../Artifacts/main.yml + description: ASC External Networks Template + members: + - Internal1-net + - test_nested \ 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/contrail2serviceinstance/sharedNetworkNested/expectedoutputfiles/OCS-fwServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkNested/expectedoutputfiles/OCS-fwServiceTemplate.yaml new file mode 100644 index 0000000000..1f504169ab --- /dev/null +++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkNested/expectedoutputfiles/OCS-fwServiceTemplate.yaml @@ -0,0 +1,294 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +metadata: + template_name: OCS-fw +imports: + ContrailComputeGlobalTypes: + file: ContrailComputeGlobalTypesServiceTemplate.yaml + CinderVolumeGlobalTypes: + file: CinderVolumeGlobalTypesServiceTemplate.yaml + ContrailVirtualNetworkGlobalType: + file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml + AbstractSubstituteGlobalTypes: + file: AbstractSubstituteGlobalTypesServiceTemplate.yaml + ContrailPortGlobalTypes: + file: ContrailPortGlobalTypesServiceTemplate.yaml + GlobalSubstitutionTypes: + file: GlobalSubstitutionTypesServiceTemplate.yaml + NeutronPortGlobalTypes: + file: NeutronPortGlobalTypesServiceTemplate.yaml + NeutronNetGlobalTypes: + file: NeutronNetGlobalTypesServiceTemplate.yaml + CommonGlobalTypes: + file: CommonGlobalTypesServiceTemplate.yaml + ContrailAbstractSubstituteGlobalTypes: + file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml + ContrailNetworkRuleGlobalType: + file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml + NeutronSecurityRulesGlobalTypes: + file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml + NovaServerGlobalTypes: + file: NovaServerGlobalTypesServiceTemplate.yaml + ContrailV2VirtualMachineInterfaceGlobalType: + file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml +topology_template: + inputs: + service_policy_name: + hidden: false + immutable: false + type: string + description: Policy Name + st_static_routes_list: + hidden: false + immutable: false + type: string + description: List of static routes enabled-disabled + st_type: + hidden: false + immutable: false + type: string + description: service type + st_service_interface_type_list: + hidden: false + immutable: false + type: string + description: List of interface types + st_mode: + hidden: false + immutable: false + type: string + description: service mode + Cricket_OCS_protected_net_id: + hidden: false + immutable: false + type: string + description: Name of Cricket OCS network + oam_mgmt_net_0_id: + hidden: false + immutable: false + type: string + description: Name of OAM network + start_dst_ports: + hidden: false + immutable: false + type: float + description: Start of dst port + st_flavor: + hidden: false + immutable: false + type: string + description: Flavor + availability_zone_1: + hidden: false + immutable: false + type: string + description: availability zone + service_instance_name: + hidden: false + immutable: false + type: string + description: Service instance name + st_scaling: + hidden: false + immutable: false + type: string + description: Indicates whether service scaling is enabled + max_num_fw_instances: + hidden: false + immutable: false + type: float + description: maximum number of firewall instances for scaling + start_src_ports: + hidden: false + immutable: false + type: float + description: Start of src port + service_policy_direction: + hidden: false + immutable: false + type: string + description: Direction of Policy + st_name: + hidden: false + immutable: false + type: string + description: Name of service template + hsl_direct_net3: + hidden: false + immutable: false + type: string + hsl_direct_net4: + hidden: false + immutable: false + type: string + HSL_direct_net_gateway: + hidden: false + immutable: false + type: string + description: HSL (Logging) network gateway address + hsl_direct_net1: + hidden: false + immutable: false + type: string + hsl_direct_net2: + hidden: false + immutable: false + type: string + st_image: + hidden: false + immutable: false + type: string + description: Name of the image + st_shared_ip_list: + hidden: false + immutable: false + type: string + description: List of shared ip enabled-disabled + Cricket_OCS_direct_net_id: + hidden: false + immutable: false + type: string + description: Name of Cricket OCS network + network_param: + hidden: false + immutable: false + type: string + end_src_ports: + hidden: false + immutable: false + type: float + description: End of src port + end_dst_ports: + hidden: false + immutable: false + type: float + description: End of dst port + HSL_direct_net_id: + hidden: false + immutable: false + type: string + description: Name of HSL (Logging) network + HSL_direct_net_cidr: + hidden: false + immutable: false + type: string + description: HSL (Logging) network address (CIDR notation) + node_templates: + hsl_direct_net: + type: org.openecomp.resource.vl.nodes.heat.network.contrail.VirtualNetwork + properties: + network_name: + get_input: HSL_direct_net_id + subnets: + hsl_ip_subnet: + cidr: + get_input: HSL_direct_net_cidr + gateway_ip: + get_input: HSL_direct_net_gateway + service_instance: + type: org.openecomp.resource.abstract.nodes.heat.service_template + directives: + - substitutable + properties: + flavor: + get_input: st_flavor + availability_zone: + get_input: availability_zone_1 + image_name: + get_input: st_image + service_template_filter: + substitute_service_template: service_instanceServiceTemplate.yaml + count: + get_input: max_num_fw_instances + mandatory: false + service_type: + get_input: st_type + static_routes_list: + - token: + - get_input: st_static_routes_list + - ',' + - 0 + service_template_name: + get_input: st_name + service_interface_type_list: + - token: + - get_input: st_service_interface_type_list + - ',' + - 0 + interface_list: + - virtual_network: + get_input: network_param + service_instance_name: + get_input: service_instance_name + service_mode: + get_input: st_mode + shared_ip_list: + - token: + - get_input: st_shared_ip_list + - ',' + - 0 + requirements: + - dependency: + capability: tosca.capabilities.Node + node: hsl_direct_net + relationship: tosca.relationships.DependsOn + service_policy: + type: org.openecomp.resource.vfc.rules.nodes.heat.network.contrail.NetworkRules + properties: + entries: + policy_rule: + - src_ports: + - start_port: + get_input: start_src_ports + end_port: + get_input: end_src_ports + protocol: any + action_list: + apply_service: + - service_instance + dst_addresses: + - virtual_network: + get_input: Cricket_OCS_direct_net_id + dst_ports: + - start_port: + get_input: start_dst_ports + end_port: + get_input: end_dst_ports + src_addresses: + - virtual_network: + get_input: Cricket_OCS_protected_net_id + direction: + get_input: service_policy_direction + name: + get_input: service_policy_name + requirements: + - dependency: + capability: tosca.capabilities.Node + node: service_instance + relationship: tosca.relationships.DependsOn + groups: + OCS-fw: + type: org.openecomp.groups.heat.HeatStack + properties: + heat_file: ../Artifacts/OCS-fw.yml + description: | + Based on the following reference for the HOT-DMZ-FW template: Version 3.5 8-10-2015 (Authors: Art Mishurov,am254u & Johhny Chen, jc3066) - HOT-DMZ-FW template that creates two DMZ networks (direct and protected) with a scaled out firewall service between the two. + members: + - hsl_direct_net + - service_instance + - service_policy + substitution_mappings: + node_type: org.openecomp.resource.abstract.nodes.heat.OCS-fw + capabilities: + link_hsl_direct_net: + - hsl_direct_net + - link + attachment_hsl_direct_net: + - hsl_direct_net + - attachment + requirements: + network_service_policy: + - service_policy + - network + link_port_0_service_instance: + - service_instance + - link_port_0 \ 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/contrail2serviceinstance/sharedNetworkNested/expectedoutputfiles/service_instanceServiceTemplate.yaml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkNested/expectedoutputfiles/service_instanceServiceTemplate.yaml new file mode 100644 index 0000000000..bbc95728c9 --- /dev/null +++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkNested/expectedoutputfiles/service_instanceServiceTemplate.yaml @@ -0,0 +1,275 @@ +tosca_definitions_version: tosca_simple_yaml_1_0_0 +metadata: + template_name: service_instance +imports: + ContrailComputeGlobalTypes: + file: ContrailComputeGlobalTypesServiceTemplate.yaml + CinderVolumeGlobalTypes: + file: CinderVolumeGlobalTypesServiceTemplate.yaml + ContrailVirtualNetworkGlobalType: + file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml + AbstractSubstituteGlobalTypes: + file: AbstractSubstituteGlobalTypesServiceTemplate.yaml + ContrailPortGlobalTypes: + file: ContrailPortGlobalTypesServiceTemplate.yaml + GlobalSubstitutionTypes: + file: GlobalSubstitutionTypesServiceTemplate.yaml + NeutronPortGlobalTypes: + file: NeutronPortGlobalTypesServiceTemplate.yaml + NeutronNetGlobalTypes: + file: NeutronNetGlobalTypesServiceTemplate.yaml + CommonGlobalTypes: + file: CommonGlobalTypesServiceTemplate.yaml + ContrailAbstractSubstituteGlobalTypes: + file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml + ContrailNetworkRuleGlobalType: + file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml + NeutronSecurityRulesGlobalTypes: + file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml + NovaServerGlobalTypes: + file: NovaServerGlobalTypesServiceTemplate.yaml + ContrailV2VirtualMachineInterfaceGlobalType: + file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml +topology_template: + inputs: + availability_zone: + hidden: false + immutable: false + type: string + description: Availability zone to create servers in + required: false + status: SUPPORTED + static_routes_list: + hidden: false + immutable: false + type: list + description: Static routes enabled + required: false + status: SUPPORTED + entry_schema: + type: boolean + availability_zone_enable: + hidden: false + immutable: false + type: boolean + description: Indicates availability zone is enabled + required: false + default: false + status: SUPPORTED + service_template_name: + hidden: false + immutable: false + type: string + description: Service template name + required: false + status: SUPPORTED + ordered_interfaces: + hidden: false + immutable: false + type: boolean + description: Indicates if service interface are ordered + required: false + default: false + status: SUPPORTED + flavor: + hidden: false + immutable: false + type: string + description: flavor + required: false + status: SUPPORTED + image_name: + hidden: false + immutable: false + type: string + description: Image name + required: true + status: SUPPORTED + service_type: + hidden: false + immutable: false + type: string + description: Service type + required: true + status: SUPPORTED + constraints: + - valid_values: + - firewall + - analyzer + - source-nat + - loadbalancer + service_interface_type_list: + hidden: false + immutable: false + type: list + description: List of interface types + required: true + status: SUPPORTED + entry_schema: + type: string + constraints: + - valid_values: + - management + - left + - right + - other + service_instance_name: + hidden: false + immutable: false + type: string + description: Service instance name + required: true + status: SUPPORTED + interface_list: + hidden: false + immutable: false + type: list + description: List of interfaces + required: false + status: SUPPORTED + entry_schema: + type: org.openecomp.datatypes.heat.network.contrail.InterfaceData + service_mode: + hidden: false + immutable: false + type: string + description: Service mode + required: true + status: SUPPORTED + constraints: + - valid_values: + - transparent + - in-network + - in-network-nat + shared_ip_list: + hidden: false + immutable: false + type: list + description: Shared ips enabled + required: false + status: SUPPORTED + entry_schema: + type: boolean + node_templates: + port_0: + type: org.openecomp.resource.cp.nodes.heat.network.contrail.Port + properties: + static_routes: + get_input: + - interface_list + - 0 + - static_routes + virtual_network: + get_input: + - interface_list + - 0 + - virtual_network + static_route: + get_input: + - static_routes_list + - 0 + allowed_address_pairs: + get_input: + - interface_list + - 0 + - allowed_address_pairs + shared_ip: + get_input: + - shared_ip_list + - 0 + ip_address: + get_input: + - interface_list + - 0 + - ip_address + interface_type: + get_input: + - service_interface_type_list + - 0 + requirements: + - binding: + capability: tosca.capabilities.network.Bindable + node: service_instance + relationship: tosca.relationships.network.BindsTo + service_instance: + type: org.openecomp.resource.vfc.nodes.heat.st_image + properties: + flavor: + get_input: flavor + image_name: + get_input: image_name + availability_zone: + get_input: availability_zone + service_type: + get_input: service_type + availability_zone_enable: + get_input: availability_zone_enable + service_template_name: + get_input: service_template_name + service_instance_name: + get_input: service_instance_name + service_mode: + get_input: service_mode + groups: + service_instance: + type: org.openecomp.groups.heat.HeatStack + properties: + heat_file: ../Artifacts/OCS-fw.yml + members: + - service_instance + - port_0 + outputs: + tenant_id: + description: Tenant id of the Service Instance + value: + get_attribute: + - service_instance + - tenant_id + fq_name: + description: The FQ name of the service instance + value: + get_attribute: + - service_instance + - fq_name + service_template_name: + description: Service Template of the Service Instance + value: + get_attribute: + - service_instance + - service_template_name + show: + description: All attributes + value: + get_attribute: + - service_instance + - show + active_vms: + description: Number of service VMs active for this Service Instance + value: + get_attribute: + - service_instance + - active_vms + service_instance_name: + description: The name of the service instance + value: + get_attribute: + - service_instance + - service_instance_name + virtual_machines: + description: Service VMs for the Service Instance + value: + get_attribute: + - service_instance + - virtual_machines + status: + description: Status of the service instance + value: + get_attribute: + - service_instance + - status + substitution_mappings: + node_type: org.openecomp.resource.abstract.nodes.heat.service_template + requirements: + link_port_0: + - port_0 + - link \ 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/contrail2serviceinstance/sharedNetworkNested/inputfiles/MANIFEST.json b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkNested/inputfiles/MANIFEST.json new file mode 100644 index 0000000000..ba27604c3f --- /dev/null +++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkNested/inputfiles/MANIFEST.json @@ -0,0 +1,16 @@ +{ + "name": "vMME_Small", + "description": "HOT template to create 2 cinder volume attachment", + "version": "2013-05-23", + "data": [ + { + "file": "OCS-fw.yml", + "type": "HEAT", + "isBase": "false" + }, + { + "file": "main.yml", + "type": "HEAT" + } + ] +} diff --git a/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkNested/inputfiles/OCS-fw.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkNested/inputfiles/OCS-fw.yml new file mode 100644 index 0000000000..86c3fcadc8 --- /dev/null +++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkNested/inputfiles/OCS-fw.yml @@ -0,0 +1,163 @@ +heat_template_version: 2013-05-23 + +description: > + Based on the following reference for the HOT-DMZ-FW template: + Version 3.5 8-10-2015 (Authors: Art Mishurov,am254u & Johhny Chen, jc3066) - HOT-DMZ-FW template that creates two DMZ networks (direct and protected) with a scaled out firewall service between the two. + +parameters: + hsl_direct_net1: + type: string + hsl_direct_net2: + type: string + hsl_direct_net3: + type: string + hsl_direct_net4: + type: string + HSL_direct_net_id: + type: string + description: Name of HSL (Logging) network + HSL_direct_net_cidr: + type: string + description: HSL (Logging) network address (CIDR notation) + HSL_direct_net_gateway: + type: string + description: HSL (Logging) network gateway address + oam_mgmt_net_0_id: + type: string + description: Name of OAM network + Cricket_OCS_direct_net_id: + type: string + description: Name of Cricket OCS network + Cricket_OCS_protected_net_id: + type: string + description: Name of Cricket OCS network + service_instance_name: + type: string + description: Service instance name + service_policy_name: + type: string + description: Policy Name + service_policy_direction: + type: string + description: Direction of Policy + start_src_ports: + type: number + description: Start of src port + end_src_ports: + type: number + description: End of src port + start_dst_ports: + type: number + description: Start of dst port + end_dst_ports: + type: number + description: End of dst port + st_name: + type: string + description: Name of service template + st_mode: + type: string + description: service mode + st_type: + type: string + description: service type + st_image: + type: string + description: Name of the image + st_flavor: + type: string + description: Flavor + st_service_interface_type_list: + type: string + description: List of interface types + st_shared_ip_list: + type: string + description: List of shared ip enabled-disabled + st_static_routes_list: + type: string + description: List of static routes enabled-disabled + st_scaling: + type: string + description: Indicates whether service scaling is enabled + max_num_fw_instances: + type: number + description: maximum number of firewall instances for scaling + availability_zone_1: + type: string + description: availability zone + network_param: + type: string + +resources: + + hsl_direct_net: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: HSL_direct_net_id } + + hsl_ip_subnet: + type: OS::Neutron::Subnet + properties: + network_id: { get_resource: hsl_direct_net } + cidr: { get_param: HSL_direct_net_cidr } + gateway_ip: { get_param: HSL_direct_net_gateway } + + service_template: + type: OS::Contrail::ServiceTemplate + properties: + name: { get_param: st_name } + service_mode: { get_param: st_mode } + service_type: { get_param: st_type } + image_name: { get_param: st_image } + flavor: { get_param: st_flavor } + service_interface_type_list: { "Fn::Split" : [ ",", Ref: st_service_interface_type_list ] } + shared_ip_list: { "Fn::Split" : [ ",", Ref: st_shared_ip_list ] } + static_routes_list: { "Fn::Split" : [ ",", Ref: st_static_routes_list ] } + service_scaling: { get_param: st_scaling } + + service_instance: + type: OS::Contrail::ServiceInstance + depends_on: [ hsl_ip_subnet] + properties: + name: { get_param: service_instance_name } + availability_zone: { get_param: availability_zone_1 } + service_template: { get_resource: service_template } + scale_out: + max_instances: {get_param: max_num_fw_instances} + interface_list: [ + { + virtual_network: { get_param: network_param } + } + ] + + service_policy: + type: OS::Contrail::NetworkPolicy + depends_on: [ service_instance ] + properties: + name: { get_param: service_policy_name } + entries: + policy_rule: [ + { + "direction": { get_param: service_policy_direction }, + "protocol": "any", + "src_ports": [{"start_port": {get_param: start_src_ports}, "end_port": {get_param: end_src_ports}}], + "dst_ports": [{"start_port": {get_param: start_dst_ports}, "end_port": {get_param: end_dst_ports}}], + "dst_addresses": [{ "virtual_network": { get_param: Cricket_OCS_direct_net_id }}], + "action_list": { "apply_service": [{ get_resource: service_instance }]}, + "src_addresses": [{ "virtual_network": { get_param: Cricket_OCS_protected_net_id }}], + }, + ] + + service_policy_attach_direct_net: + type: OS::Contrail::AttachPolicy + depends_on: [ service_policy ] + properties: + network: { get_param: Cricket_OCS_direct_net_id } + policy: { get_attr: [service_policy, fq_name] } + + service_policy_attach_protected_net: + type: OS::Contrail::AttachPolicy + depends_on: [ service_policy ] + properties: + network: { get_param: Cricket_OCS_protected_net_id } + policy: { get_attr: [service_policy, fq_name] } \ 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/contrail2serviceinstance/sharedNetworkNested/inputfiles/main.yml b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkNested/inputfiles/main.yml new file mode 100644 index 0000000000..a1f7dc932d --- /dev/null +++ b/openecomp-be/lib/openecomp-sdc-translator-lib/openecomp-sdc-translator-core/src/test/resources/mock/services/heattotosca/contrail2serviceinstance/sharedNetworkNested/inputfiles/main.yml @@ -0,0 +1,30 @@ +heat_template_version: 2013-05-23 + +description: ASC External Networks Template + +parameters: + Internal1_net_name: + type: string + Internal2_net_name: + type: string + Internal1_forwarding_mode: + type: string + Internal2_forwarding_mode: + type: string + Internal1_shared: + type: string + Internal2_shared: + type: string + +resources: + Internal1-net: + type: OS::Contrail::VirtualNetwork + properties: + name: { get_param: Internal1_net_name } + forwarding_mode: { get_param: Internal1_forwarding_mode } + shared: { get_param: Internal1_shared } + + test_nested: + type: OCS-fw.yml + properties: + network_param: { get_resource: Internal1-net} \ No newline at end of file -- cgit 1.2.3-korg