[SDC-29] Amdocs OnBoard 1707 initial commit.
[sdc.git] / openecomp-be / lib / openecomp-sdc-translator-lib / openecomp-sdc-translator-core / src / test / resources / mock / services / heattotosca / subInterfaceToInterfaceConnection / vTSBC_AIC / inputfiles / vlan_subinterface_dual.yaml
1 heat_template_version: 2014-10-16
2
3 description: >
4   HOT template to instantiate a single Contrail VLAN sub-interface with associated instance IP addresses and allowed address pairs
5
6 parameters:
7   subinterface_instance_index:
8     type: number
9     description: Index of instance among multiple instances.  Use to retrieve correct parameter for this instance when passed all parameters for all instances.
10   subinterface_name_prefix:
11     type: string
12     description: Combined with subinterface_instance_index, this is used as the name of the subinterface resource
13   parent_interface:
14     type: string
15     description: Parent Contrail interface
16   mac_address:
17     type: string
18     description: MAC address to use for subinterface
19   ip_address:
20     type: string
21     description: IPv4 address associated with subinterfaces
22   ipv6_address:
23     type: string
24     description: IPv6 address associated with subinterfaces
25   virtual_ip_address:
26     type: string
27     description: virtual IPv4 address associated with subinterfaces
28   virtual_ipv6_address:
29     type: string
30     description: virtual IPv6 address associated with subinterfaces
31   vlan_ids:
32     type: comma_delimited_list
33     description: List of VLAN IDs to use for subinterfaces
34   vlan_networks:
35     type: comma_delimited_list
36     description: List of Contrail VLAN networks to use for the subinterfaces.   The order and number of these must match the VLAN ID list
37
38 resources:
39   contrail_vmi_subinterface:
40     type: OS::ContrailV2::VirtualMachineInterface
41     properties:
42       name:
43         str_replace:
44           template: $NAME$VLAN
45           params:
46             $NAME: { get_param: subinterface_name_prefix }
47             $VLAN: { get_param: [ vlan_ids, { get_param: subinterface_instance_index } ] }
48       virtual_machine_interface_properties:
49         {
50           virtual_machine_interface_properties_sub_interface_vlan_tag: { get_param: [ vlan_ids, { get_param: subinterface_instance_index } ] }
51         }
52       virtual_machine_interface_mac_addresses:
53         {
54         virtual_machine_interface_mac_addresses_mac_address: [{ get_param: mac_address }],
55         }
56       virtual_machine_interface_allowed_address_pairs:
57         {
58         virtual_machine_interface_allowed_address_pairs_allowed_address_pair: [
59             {
60               virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
61               virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
62               virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
63               {
64                 virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ip_address },
65                 virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 32
66               }
67             },
68             {
69               virtual_machine_interface_allowed_address_pairs_allowed_address_pair_address_mode: active-standby,
70               virtual_machine_interface_allowed_address_pairs_allowed_address_pair_mac: { get_param: mac_address },
71               virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip:
72               {
73                 virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix: { get_param: virtual_ipv6_address },
74                 virtual_machine_interface_allowed_address_pairs_allowed_address_pair_ip_ip_prefix_len: 128
75               }
76             }
77           ]
78         }
79       virtual_network_refs: [{ get_param: [ vlan_networks, { get_param: subinterface_instance_index } ] }]
80       virtual_machine_interface_refs: [{ get_param: parent_interface }]
81
82   contrail_vmi_ip:
83     type: OS::ContrailV2::InstanceIp
84     depends_on: [ contrail_vmi_subinterface ]
85     properties:
86       virtual_machine_interface_refs: [{ get_resource: contrail_vmi_subinterface }]
87       virtual_network_refs: [{ get_param: [ vlan_networks, { get_param: subinterface_instance_index } ] }]
88       instance_ip_address: { get_param:  ip_address }
89       instance_ip_family: v4
90
91   contrail_vmi_ipv6:
92     type: OS::ContrailV2::InstanceIp
93     depends_on: [ contrail_vmi_subinterface ]
94     properties:
95       virtual_machine_interface_refs: [{ get_resource: contrail_vmi_subinterface }]
96       virtual_network_refs: [{ get_param: [ vlan_networks, { get_param: subinterface_instance_index } ] }]
97       instance_ip_address: { get_param:  ipv6_address }
98       instance_ip_family: v6