tosca_definitions_version: tosca_simple_yaml_1_0_0 metadata: template_name: vlan_subinterface_dual imports: - CommonGlobalTypes: file: CommonGlobalTypesServiceTemplate.yaml - NovaServerGlobalTypes: file: NovaServerGlobalTypesServiceTemplate.yaml - NeutronPortGlobalTypes: file: NeutronPortGlobalTypesServiceTemplate.yaml - NeutronSecurityRulesGlobalTypes: file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml - NeutronNetGlobalTypes: file: NeutronNetGlobalTypesServiceTemplate.yaml - CinderVolumeGlobalTypes: file: CinderVolumeGlobalTypesServiceTemplate.yaml - ContrailVirtualNetworkGlobalType: file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml - ContrailNetworkRuleGlobalType: file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml - AbstractSubstituteGlobalTypes: file: AbstractSubstituteGlobalTypesServiceTemplate.yaml - ContrailV2VirtualMachineInterfaceGlobalType: file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml - ContrailComputeGlobalTypes: file: ContrailComputeGlobalTypesServiceTemplate.yaml - ContrailPortGlobalTypes: file: ContrailPortGlobalTypesServiceTemplate.yaml - ContrailAbstractSubstituteGlobalTypes: file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml - ContrailV2VirtualNetworkGlobalType: file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml - ContrailV2NetworkRuleGlobalType: file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml - ContrailV2VLANSubInterfaceGlobalType: file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml - GlobalSubstitutionTypes: file: GlobalSubstitutionTypesServiceTemplate.yaml topology_template: inputs: vlan_ids: hidden: false immutable: false type: list description: List of VLAN IDs to use for subinterfaces entry_schema: type: string parent_interface: hidden: false immutable: false type: string description: Parent Contrail interface virtual_ipv6_address: hidden: false immutable: false type: string description: virtual IPv6 address associated with subinterfaces virtual_ip_address: hidden: false immutable: false type: string description: virtual IPv4 address associated with subinterfaces mac_address: hidden: false immutable: false type: string description: MAC address to use for subinterface ipv6_address: hidden: false immutable: false type: string description: IPv6 address associated with subinterfaces subinterface_name_prefix: hidden: false immutable: false type: string description: Combined with subinterface_instance_index, this is used as the name of the subinterface resource subinterface_instance_index: hidden: false immutable: false type: float description: Index of instance among multiple instances. Use to retrieve correct parameter for this instance when passed all parameters for all instances. ip_address: hidden: false immutable: false type: string description: IPv4 address associated with subinterfaces vlan_networks: hidden: false immutable: false type: list description: List of Contrail VLAN networks to use for the subinterfaces. The order and number of these must match the VLAN ID list entry_schema: type: string node_templates: contrail_vmi_subinterface: type: org.openecomp.resource.cp.nodes.heat.network.contrailV2.VLANSubInterface properties: virtual_machine_interface_refs: - get_input: parent_interface name: str_replace: template: $NAME$VLAN params: $NAME: get_input: subinterface_name_prefix $VLAN: get_input: - vlan_ids - get_input: subinterface_instance_index virtual_network_refs: - get_input: - vlan_networks - get_input: subinterface_instance_index virtual_machine_interface_properties: sub_interface_vlan_tag: get_input: - vlan_ids - get_input: subinterface_instance_index virtual_machine_interface_allowed_address_pairs: allowed_address_pair: - address_mode: active-standby ip: ip_prefix: get_input: virtual_ip_address ip_prefix_len: 32 mac: get_input: mac_address - address_mode: active-standby ip: ip_prefix: get_input: virtual_ipv6_address ip_prefix_len: 128 mac: get_input: mac_address virtual_machine_interface_mac_addresses: mac_address: - get_input: mac_address groups: vlan_subinterface_dual_group: type: org.openecomp.groups.heat.HeatStack properties: heat_file: ../Artifacts/vlan_subinterface_dual.yaml description: | HOT template to instantiate a single Contrail VLAN sub-interface with associated instance IP addresses and allowed address pairs members: - contrail_vmi_subinterface substitution_mappings: node_type: org.openecomp.resource.abstract.nodes.heat.vlan_subinterface_dual requirements: binding_contrail_vmi_subinterface: - contrail_vmi_subinterface - binding link_contrail_vmi_subinterface: - contrail_vmi_subinterface - link