78fe423e5d7d3c788ec7f9e6f3f48ed8403541fc
[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     oam_net_ips:
12       label: OAM network ips
13       hidden: false
14       immutable: false
15       type: list
16       description: OAM network ips
17       default:
18       - 107.239.64.121
19       entry_schema:
20         type: string
21     availabilityzone_name:
22       label: availabilityzone name
23       hidden: false
24       immutable: false
25       type: string
26       description: availabilityzone name
27       default: nova
28     oam_net_gw:
29       label: CPS network gateway
30       hidden: false
31       immutable: false
32       type: string
33       description: CPS network gateway
34       default: 107.239.64.1
35     pcm_server_names:
36       label: PCRF CM server names
37       hidden: false
38       immutable: false
39       type: list
40       description: name of the PCRF CM instance
41       default:
42       - ZRDM1PCRF01PCM001
43       entry_schema:
44         type: string
45     pcm_image_name:
46       label: PCRF CM image name
47       hidden: false
48       immutable: false
49       type: string
50       description: PCRF CM image name
51       default: rhel2
52     cps_net_ips:
53       label: CPS network ips
54       hidden: false
55       immutable: false
56       type: list
57       description: CPS network ips
58       default:
59       - 172.26.16.113
60       entry_schema:
61         type: string
62     oam_flavor_name:
63       label: PCRF CM flavor name
64       hidden: false
65       immutable: false
66       type: string
67       description: flavor name of PCRF CM instance
68       default: cps
69     security_group_name:
70       label: security group name
71       hidden: false
72       immutable: false
73       type: string
74       description: the name of security group
75       default: nimbus_security_group
76     pcm_volumes:
77       label: CPS Cluman Cinder Volume
78       hidden: false
79       immutable: false
80       type: list
81       description: CPS Cluman Cinder Volume
82       default:
83       - 249cb355-8fdf-4382-9c3c-a2ebe767d45b
84       entry_schema:
85         type: string
86     compute_image_name:
87       hidden: false
88       immutable: false
89       type: string
90     pcm_flavor_name:
91       label: PCRF CM flavor name
92       hidden: false
93       immutable: false
94       type: string
95       description: flavor name of PCRF CM instance
96       default: cps
97     net_name:
98       hidden: false
99       immutable: false
100       type: string
101     oam_image_name:
102       label: PCRF CM image name
103       hidden: false
104       immutable: false
105       type: string
106       description: PCRF CM image name
107       default: rhel2
108     shared_security_group_id2:
109       hidden: false
110       immutable: false
111       type: string
112       description: network name of jsa log network
113     oam_server_names:
114       label: PCRF CM server names
115       hidden: false
116       immutable: false
117       type: list
118       description: name of the PCRF CM instance
119       default:
120       - ZRDM1PCRF01PCM001
121       entry_schema:
122         type: string
123     cps_net_name:
124       label: CPS network name
125       hidden: false
126       immutable: false
127       type: string
128       description: CPS network name
129       default: int_pcrf_net_0
130     cps_net_mask:
131       label: CPS network mask
132       hidden: false
133       immutable: false
134       type: string
135       description: CPS network mask
136       default: 255.255.255.0
137     oam_net_mask:
138       label: CPS network mask
139       hidden: false
140       immutable: false
141       type: string
142       description: CPS network mask
143       default: 255.255.255.0
144     shared_security_group_id1:
145       hidden: false
146       immutable: false
147       type: string
148       description: network name of jsa log network
149     oam_net_name:
150       label: OAM network name
151       hidden: false
152       immutable: false
153       type: string
154       description: OAM network name
155       default: oam_protected_net_0
156   node_templates:
157     server_pcm_002:
158       type: org.openecomp.resource.abstract.nodes.heat.nested-pcm_v0.1
159       directives:
160       - substitutable
161       properties:
162         pcm_flavor_name:
163           get_input: pcm_flavor_name
164         p1: jsa_security_group1
165         service_template_filter:
166           substitute_service_template: nested-pcm_v0.1ServiceTemplate.yaml
167         p2: jsa_security_group2
168         port_pcm_port_1_network_role_tag: oam
169         port_pcm_port_0_ip_requirements:
170         - ip_version: 4
171           ip_count_required:
172             is_required: true
173           floating_ip_count_required:
174             is_required: false
175         pcm_image_name:
176           get_input: pcm_image_name
177         port_pcm_port_1_mac_requirements:
178           mac_count_required:
179             is_required: false
180         port_pcm_port_1_ip_requirements:
181         - ip_version: 4
182           ip_count_required:
183             is_required: true
184           floating_ip_count_required:
185             is_required: false
186         port_pcm_port_0_network_role_tag: cps
187         port_pcm_port_0_mac_requirements:
188           mac_count_required:
189             is_required: false
190         pcm_server_name:
191           get_input:
192           - pcm_server_names
193           - 0
194     server_oam_001:
195       type: org.openecomp.resource.abstract.nodes.heat.nested-oam_v0.1
196       directives:
197       - substitutable
198       properties:
199         availabilityzone_name:
200           get_input: availabilityzone_name
201         oam_net_gw:
202           get_input: oam_net_gw
203         port_oam_port_0_mac_requirements:
204           mac_count_required:
205             is_required: false
206         oam_flavor_name:
207           get_input: oam_flavor_name
208         cps_net_ip:
209           get_input:
210           - cps_net_ips
211           - 0
212         port_oam_port_1_network_role_tag: oam
213         oam_server_name:
214           get_input:
215           - oam_server_names
216           - 0
217         service_template_filter:
218           substitute_service_template: nested-oam_v0.1ServiceTemplate.yaml
219         port_oam_port_1_ip_requirements:
220         - ip_version: 4
221           ip_count_required:
222             is_required: true
223           floating_ip_count_required:
224             is_required: false
225         port_oam_port_1_mac_requirements:
226           mac_count_required:
227             is_required: false
228         pcm_vol:
229           get_input:
230           - pcm_volumes
231           - 0
232         port_oam_port_0_network_role_tag: cps
233         oam_image_name:
234           get_input: oam_image_name
235         cps_net_name:
236           get_input: cps_net_name
237         cps_net_mask:
238           get_input: cps_net_mask
239         oam_net_ip:
240           get_input:
241           - oam_net_ips
242           - 0
243         oam_net_mask:
244           get_input: oam_net_mask
245         port_oam_port_0_ip_requirements:
246         - ip_version: 4
247           ip_count_required:
248             is_required: true
249           floating_ip_count_required:
250             is_required: false
251         oam_net_name:
252           get_input: oam_net_name
253     server_pcm_001:
254       type: org.openecomp.resource.abstract.nodes.heat.nested-pcm_v0.1
255       directives:
256       - substitutable
257       properties:
258         port_pcm_port_1_network_role_tag: oam
259         availabilityzone_name:
260           get_input: availabilityzone_name
261         port_pcm_port_0_ip_requirements:
262         - ip_version: 4
263           ip_count_required:
264             is_required: true
265           floating_ip_count_required:
266             is_required: false
267         oam_net_gw:
268           get_input: oam_net_gw
269         pcm_image_name:
270           get_input: pcm_image_name
271         security_group_name:
272           get_input: security_group_name
273         cps_net_ip:
274           get_input:
275           - cps_net_ips
276           - 0
277         port_pcm_port_1_mac_requirements:
278           mac_count_required:
279             is_required: false
280         pcm_flavor_name:
281           get_input: pcm_flavor_name
282         service_template_filter:
283           substitute_service_template: nested-pcm_v0.1ServiceTemplate.yaml
284         pcm_vol:
285           get_input:
286           - pcm_volumes
287           - 0
288         port_pcm_port_1_ip_requirements:
289         - ip_version: 4
290           ip_count_required:
291             is_required: true
292           floating_ip_count_required:
293             is_required: false
294         port_pcm_port_0_network_role_tag: cps
295         port_pcm_port_0_mac_requirements:
296           mac_count_required:
297             is_required: false
298         pcm_server_name:
299           get_input:
300           - pcm_server_names
301           - 0
302         cps_net_name:
303           get_input: cps_net_name
304         cps_net_mask:
305           get_input: cps_net_mask
306         oam_net_ip:
307           get_input:
308           - oam_net_ips
309           - 0
310         oam_net_mask:
311           get_input: oam_net_mask
312         oam_net_name:
313           get_input: oam_net_name
314     packet_mirror_network:
315       type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
316       properties:
317         network_name:
318           get_input: net_name
319       requirements:
320       - dependency:
321           capability: tosca.capabilities.Node
322           node: server_pcm_001
323           relationship: tosca.relationships.DependsOn
324       - dependency:
325           capability: feature_compute
326           node: abstract_compute
327           relationship: tosca.relationships.DependsOn
328     compute_port_0:
329       type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
330       properties:
331         ip_requirements:
332         - ip_version: 4
333           ip_count_required:
334             is_required: false
335           floating_ip_count_required:
336             is_required: false
337         mac_requirements:
338           mac_count_required:
339             is_required: false
340         network:
341           get_input: net_name
342     jsa_security_group1:
343       type: org.openecomp.resource.vfc.rules.nodes.heat.network.neutron.SecurityRules
344       properties:
345         name: jsa_security_group1_name
346         description: ems security group
347         rules:
348         - protocol: icmp
349           ethertype: IPv6
350           remote_ip_prefix: ::/0
351           direction: ingress
352       requirements:
353       - port:
354           capability: attachment_pcm_port_0
355           node: server_pcm_002
356           relationship: org.openecomp.relationships.AttachesTo
357       - port:
358           capability: attachment_pcm_port_1
359           node: server_pcm_002
360           relationship: org.openecomp.relationships.AttachesTo
361       - port:
362           capability: attachment_oam_port_1
363           node: test_shared_node_connected_in_nested
364           relationship: org.openecomp.relationships.AttachesTo
365       - port:
366           capability: attachment_oam_port_0
367           node: test_shared_node_connected_in_nested
368           relationship: org.openecomp.relationships.AttachesTo
369     jsa_security_group2:
370       type: org.openecomp.resource.vfc.rules.nodes.heat.network.neutron.SecurityRules
371       properties:
372         name: jsa_security_group2_name
373         description: ems security group
374         rules:
375         - protocol: tcp
376           ethertype: IPv4
377           port_range_max: 65535
378           remote_ip_prefix: 0.0.0.0/0
379           direction: egress
380           port_range_min: 1
381       requirements:
382       - port:
383           capability: attachment_pcm_port_0
384           node: server_pcm_002
385           relationship: org.openecomp.relationships.AttachesTo
386     test_shared_node_connected_in_nested:
387       type: org.openecomp.resource.abstract.nodes.heat.nested-oam_v0.1
388       directives:
389       - substitutable
390       properties:
391         service_template_filter:
392           substitute_service_template: nested-oam_v0.1ServiceTemplate.yaml
393         p2:
394           get_input: shared_security_group_id2
395         port_oam_port_1_ip_requirements:
396         - ip_version: 4
397           ip_count_required:
398             is_required: true
399           floating_ip_count_required:
400             is_required: false
401         port_oam_port_1_mac_requirements:
402           mac_count_required:
403             is_required: false
404         port_oam_port_0_mac_requirements:
405           mac_count_required:
406             is_required: false
407         port_oam_port_0_network_role_tag: cps
408         port_oam_port_1_network_role_tag: oam
409         port_oam_port_0_ip_requirements:
410         - ip_version: 4
411           ip_count_required:
412             is_required: true
413           floating_ip_count_required:
414             is_required: false
415         shared_security_group_id1:
416           get_input: shared_security_group_id1
417     abstract_compute:
418       type: org.openecomp.resource.abstract.nodes.compute
419       directives:
420       - substitutable
421       properties:
422         compute_compute_user_data_format:
423         - get_attribute:
424           - server_pcm_001
425           - oam_net_gw
426         vm_image_name:
427           get_input: compute_image_name
428         compute_compute_metadata:
429         - get_attribute:
430           - server_pcm_001
431           - server_pcm_id
432         compute_compute_name:
433         - compute_name: null
434         vm_flavor_name:
435           compute_flavor_name: null
436         compute_compute_config_drive:
437         - get_attribute:
438           - compute_port_0
439           - tenant_id
440           - port_security_enabled
441           - device_id
442           - qos_policy
443           - allowed_address_pairs
444           - show
445           - device_owner
446           - network
447           - security_groups
448           - fixed_ips
449           - mac_address
450           - admin_state_up
451           - name
452           - subnets
453           - status
454         service_template_filter:
455           substitute_service_template: Nested_computeServiceTemplate.yaml
456           count: 1
457         index_value:
458           get_property:
459           - SELF
460           - service_template_filter
461           - index_value
462   groups:
463     hot-nimbus-pcm_v0.4_group:
464       type: org.openecomp.groups.heat.HeatStack
465       properties:
466         heat_file: ../Artifacts/hot-nimbus-pcm_v0.4.yaml
467         description: heat template that creates PCRF Cluman stack
468       members:
469       - server_pcm_002
470       - server_oam_001
471       - server_pcm_001
472       - packet_mirror_network
473       - compute_port_0
474       - jsa_security_group1
475       - jsa_security_group2
476       - abstract_compute
477     addOn_group:
478       type: org.openecomp.groups.heat.HeatStack
479       properties:
480         heat_file: ../Artifacts/addOn.yml
481         description: |
482           Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
483       members:
484       - test_shared_node_connected_in_nested