ac68f001dd6acc1547eeb6fea24f883ff587807d
[sdc.git] /
1 tosca_definitions_version: tosca_simple_yaml_1_0_0
2 metadata:
3   template_name: Main
4 imports:
5 - openecomp_heat_index:
6     file: openecomp-heat/_index.yml
7 - GlobalSubstitutionTypes:
8     file: GlobalSubstitutionTypesServiceTemplate.yaml
9 topology_template:
10   inputs:
11     vf_module_id:
12       hidden: false
13       immutable: false
14       annotations:
15         source:
16           type: org.openecomp.annotations.Source
17           properties:
18             vf_module_label:
19             - DPA3_New_VNF_TSBGv_base
20             source_type: HEAT
21             param_name: vf_module_id
22       type: string
23       description: Unique ID for this VNF Module instance
24     avpn_subnet_id:
25       hidden: false
26       immutable: false
27       annotations:
28         source:
29           type: org.openecomp.annotations.Source
30           properties:
31             vf_module_label:
32             - DPA3_New_VNF_TSBGv_base
33             source_type: HEAT
34             param_name: avpn_subnet_id
35       type: list
36       description: comma delimited list of the UUIDs of the operator created IPv4 AVPN subnets
37       entry_schema:
38         type: string
39     internal_net_id:
40       hidden: false
41       immutable: false
42       annotations:
43         source:
44           type: org.openecomp.annotations.Source
45           properties:
46             vf_module_label:
47             - DPA3_New_VNF_TSBGv_base
48             source_type: HEAT
49             param_name: internal_net_id
50       type: string
51       description: the UUID of the operator-created Internal network
52       constraints:
53       - pattern: '[a-f0-9]{8}\-(?:[a-f0-9]{4}\-){3}[a-f0-9]{12}'
54     sbg_AVPN_vlan_tag_list:
55       hidden: false
56       immutable: false
57       annotations:
58         source:
59           type: org.openecomp.annotations.Source
60           properties:
61             vf_module_label:
62             - DPA3_New_VNF_TSBGv_base
63             source_type: HEAT
64             param_name: sbg_AVPN_vlan_tag_list
65       type: list
66       description: comma delimited list of internal VLAN TAG(s) used by AVPN networks
67       entry_schema:
68         type: string
69     sbg_AVPN_count:
70       hidden: false
71       immutable: false
72       annotations:
73         source:
74           type: org.openecomp.annotations.Source
75           properties:
76             vf_module_label:
77             - DPA3_New_VNF_TSBGv_base
78             source_type: HEAT
79             param_name: sbg_AVPN_count
80       type: float
81       description: The number of AVPN networks
82       constraints:
83       - in_range:
84         - 1
85         - 999
86     sbg_sc_flavor_name:
87       hidden: false
88       immutable: false
89       annotations:
90         source:
91           type: org.openecomp.annotations.Source
92           properties:
93             vf_module_label:
94             - DPA3_New_VNF_TSBGv_base
95             source_type: HEAT
96             param_name: sbg_sc_flavor_name
97       type: string
98       description: Flavor to use for SC VM. Minimum 4 non-HT vCPU and 16GB RAM required
99     sbg_comte_floating_ip:
100       hidden: false
101       immutable: false
102       annotations:
103         source:
104           type: org.openecomp.annotations.Source
105           properties:
106             vf_module_label:
107             - DPA3_New_VNF_TSBGv_base
108             source_type: HEAT
109             param_name: sbg_comte_floating_ip
110       type: string
111       description: Moveable IP (VIP) for COM on the Internal network, IPv4. Don't deviate from default!
112       constraints:
113       - pattern: (?:[0-9]{1,3}\.){3}[0-9]{1,3}
114     sbg_internal_ips:
115       hidden: false
116       immutable: false
117       annotations:
118         source:
119           type: org.openecomp.annotations.Source
120           properties:
121             vf_module_label:
122             - DPA3_New_VNF_TSBGv_base
123             source_type: HEAT
124             param_name: sbg_internal_ips
125       type: list
126       description: comma delimited list of IPv4 addresses of SBG VMs on the Internal network. Don't deviate from the default values.
127       entry_schema:
128         type: string
129     sbg_avpn_ips:
130       hidden: false
131       immutable: false
132       annotations:
133         source:
134           type: org.openecomp.annotations.Source
135           properties:
136             vf_module_label:
137             - DPA3_New_VNF_TSBGv_base
138             source_type: HEAT
139             param_name: sbg_avpn_ips
140       type: list
141       description: |
142         comma delimited list of IPv4 IPs to be used on AVPN networks. n*2 IP address expected where n is the number of PL VM pairs. The first two addresses are assigned to the first PL VM pair, second two IPs to the second PL VM pair, and so on. Note: this is true regardless of the number of AVPN networks and sbg_AVPN_count.
143       entry_schema:
144         type: string
145     sbg_sc_names:
146       hidden: false
147       immutable: false
148       annotations:
149         source:
150           type: org.openecomp.annotations.Source
151           properties:
152             vf_module_label:
153             - DPA3_New_VNF_TSBGv_base
154             source_type: HEAT
155             param_name: sbg_sc_names
156       type: list
157       description: comma delimited list of VM names assigned to System Controller VMs
158       entry_schema:
159         type: string
160     sbg_nfs_floating_ip:
161       hidden: false
162       immutable: false
163       annotations:
164         source:
165           type: org.openecomp.annotations.Source
166           properties:
167             vf_module_label:
168             - DPA3_New_VNF_TSBGv_base
169             source_type: HEAT
170             param_name: sbg_nfs_floating_ip
171       type: string
172       description: Moveable IP (VIP) for NFS server on the Internal network, IPv4. Don't deviate from default!
173       constraints:
174       - pattern: (?:[0-9]{1,3}\.){3}[0-9]{1,3}
175     sbg_boot_floating_ip:
176       hidden: false
177       immutable: false
178       annotations:
179         source:
180           type: org.openecomp.annotations.Source
181           properties:
182             vf_module_label:
183             - DPA3_New_VNF_TSBGv_base
184             source_type: HEAT
185             param_name: sbg_boot_floating_ip
186       type: string
187       description: Moveable IP (VIP) for TFTP server on the Internal network, IPv4. Don't deviate from default!
188       constraints:
189       - pattern: (?:[0-9]{1,3}\.){3}[0-9]{1,3}
190     sbg_sc_volume_id_0:
191       hidden: false
192       immutable: false
193       annotations:
194         source:
195           type: org.openecomp.annotations.Source
196           properties:
197             vf_module_label:
198             - DPA3_New_VNF_TSBGv_base
199             source_type: HEAT
200             param_name: sbg_sc_volume_id_0
201       type: string
202       description: the UUID of the pre-created Cinder volume attached to SC-1 as root volume
203       constraints:
204       - pattern: '[a-f0-9]{8}\-(?:[a-f0-9]{4}\-){3}[a-f0-9]{12}'
205     vnf_id:
206       hidden: false
207       immutable: false
208       annotations:
209         source:
210           type: org.openecomp.annotations.Source
211           properties:
212             vf_module_label:
213             - DPA3_New_VNF_TSBGv_base
214             source_type: HEAT
215             param_name: vnf_id
216       type: string
217       description: Unique ID for this VF instance
218     avpn_net_id:
219       hidden: false
220       immutable: false
221       annotations:
222         source:
223           type: org.openecomp.annotations.Source
224           properties:
225             vf_module_label:
226             - DPA3_New_VNF_TSBGv_base
227             source_type: HEAT
228             param_name: avpn_net_id
229       type: list
230       description: comma delimited list of the UUIDs of the operator-created AVPN networks
231       entry_schema:
232         type: string
233     sbg_sc_volume_id_1:
234       hidden: false
235       immutable: false
236       annotations:
237         source:
238           type: org.openecomp.annotations.Source
239           properties:
240             vf_module_label:
241             - DPA3_New_VNF_TSBGv_base
242             source_type: HEAT
243             param_name: sbg_sc_volume_id_1
244       type: string
245       description: the UUID of the pre-created Cinder volume attached to SC-1 as tools volume
246       constraints:
247       - pattern: '[a-f0-9]{8}\-(?:[a-f0-9]{4}\-){3}[a-f0-9]{12}'
248     availability_zone_0:
249       hidden: false
250       immutable: false
251       annotations:
252         source:
253           type: org.openecomp.annotations.Source
254           properties:
255             vf_module_label:
256             - DPA3_New_VNF_TSBGv_base
257             source_type: HEAT
258             param_name: availability_zone_0
259       type: string
260       description: First availability zone ID or Name.
261     sbg_internal_mac_addresses:
262       hidden: false
263       immutable: false
264       annotations:
265         source:
266           type: org.openecomp.annotations.Source
267           properties:
268             vf_module_label:
269             - DPA3_New_VNF_TSBGv_base
270             source_type: HEAT
271             param_name: sbg_internal_mac_addresses
272       type: list
273       description: comma delimited list of MAC addresses for the VMs on the Internal network
274       entry_schema:
275         type: string
276   node_templates:
277     sbg_pl_trunk_subport_avpn_group_0:
278       type: org.openecomp.resource.abstract.nodes.heat.DPA3_New_VNF_TSBGv_nested_AVPN_subport
279       directives:
280       - substitutable
281       properties:
282         nested_avpn_net_id:
283           get_input: avpn_net_id
284         service_template_filter:
285           substitute_service_template: DPA3_New_VNF_TSBGv_nested_AVPN_subportServiceTemplate.yaml
286           count:
287             get_input: sbg_AVPN_count
288           mandatory: false
289         nested_sbg_AVPN_vlan_tag_list:
290           get_input: sbg_AVPN_vlan_tag_list
291         nested_sbg_avpn_ip_0:
292           get_input:
293           - sbg_avpn_ips
294           - 0
295         nested_avpn_subnet_id:
296           get_input: avpn_subnet_id
297         nested_sbg_AVPN_counter:
298           get_property:
299           - SELF
300           - service_template_filter
301           - index_value
302     abstract_sbg_sc:
303       type: org.openecomp.resource.abstract.nodes.sbg_sc
304       directives:
305       - substitutable
306       properties:
307         port_sbg_sc_internal_0_port_mac_requirements:
308           mac_count_required:
309             is_required: true
310         compute_sbg_sc_name:
311         - get_input:
312           - sbg_sc_names
313           - 0
314         compute_sbg_sc_config_drive:
315         - true
316         port_sbg_sc_internal_0_port_allowed_address_pairs:
317         - ip_address:
318             get_input: sbg_nfs_floating_ip
319         - ip_address:
320             get_input: sbg_comte_floating_ip
321         - ip_address:
322             get_input: sbg_boot_floating_ip
323         port_sbg_sc_internal_0_port_ip_requirements:
324         - ip_version: 4
325           ip_count_required:
326             is_required: true
327           floating_ip_count_required:
328             is_required: true
329         - ip_version: 6
330           ip_count_required:
331             is_required: false
332           floating_ip_count_required:
333             is_required: false
334         compute_sbg_sc_metadata:
335         - vf_module_id:
336             get_input: vf_module_id
337           vnf_id:
338             get_input: vnf_id
339         port_sbg_sc_internal_0_port_fixed_ips:
340         - ip_address:
341             get_input:
342             - sbg_internal_ips
343             - 0
344         port_sbg_sc_internal_0_port_network_role_tag: internal
345         vm_flavor_name:
346           get_input: sbg_sc_flavor_name
347         port_sbg_sc_internal_0_port_replacement_policy:
348         - AUTO
349         port_sbg_sc_internal_0_port_network:
350         - get_input: internal_net_id
351         port_sbg_sc_internal_0_port_mac_address:
352           get_input:
353           - sbg_internal_mac_addresses
354           - 0
355         compute_sbg_sc_availability_zone:
356         - get_input: availability_zone_0
357         compute_sbg_sc_user_data_format:
358         - RAW
359         port_sbg_sc_internal_0_port_subinterface_indicator:
360         - false
361         service_template_filter:
362           substitute_service_template: Nested_sbg_scServiceTemplate.yaml
363           count: 1
364         index_value:
365           get_property:
366           - SELF
367           - service_template_filter
368           - index_value
369   groups:
370     DPA3_New_VNF_TSBGv_base_group:
371       type: org.openecomp.groups.heat.HeatStack
372       properties:
373         heat_file: ../Artifacts/DPA3_New_VNF_TSBGv_base.yaml
374         description: |
375           SC1, SC2, PL3 and PL4. This is the main template, to be used to create an initial stack, with 1 mated pair
376       members:
377       - sbg_pl_trunk_subport_avpn_group_0
378       - abstract_sbg_sc