b1f6c7e875b69007271152dad936cd1df3eedba9
[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.pcm_server
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       requirements:
195       - dependency_pcm_port_1:
196           capability: tosca.capabilities.Node
197           node: tosca.nodes.Root
198           relationship: tosca.relationships.DependsOn
199       - link_pcm_port_1:
200           capability: tosca.capabilities.network.Linkable
201           relationship: tosca.relationships.network.LinksTo
202       - dependency_server_pcm:
203           capability: tosca.capabilities.Node
204           node: tosca.nodes.Root
205           relationship: tosca.relationships.DependsOn
206       - local_storage_server_pcm:
207           capability: tosca.capabilities.Attachment
208           node: tosca.nodes.BlockStorage
209           relationship: tosca.relationships.AttachesTo
210       - dependency_pcm_port_0:
211           capability: tosca.capabilities.Node
212           node: tosca.nodes.Root
213           relationship: tosca.relationships.DependsOn
214       - link_pcm_port_0:
215           capability: tosca.capabilities.network.Linkable
216           relationship: tosca.relationships.network.LinksTo
217     server_oam_001:
218       type: org.openecomp.resource.abstract.nodes.heat.oam_server
219       directives:
220       - substitutable
221       properties:
222         availabilityzone_name:
223           get_input: availabilityzone_name
224         oam_net_gw:
225           get_input: oam_net_gw
226         port_oam_port_0_mac_requirements:
227           mac_count_required:
228             is_required: false
229         oam_flavor_name:
230           get_input: oam_flavor_name
231         cps_net_ip:
232           get_input:
233           - cps_net_ips
234           - 0
235         port_oam_port_1_network_role_tag: oam
236         oam_server_name:
237           get_input:
238           - oam_server_names
239           - 0
240         service_template_filter:
241           substitute_service_template: nested-oam_v0.1ServiceTemplate.yaml
242         port_oam_port_1_ip_requirements:
243         - ip_version: 4
244           ip_count_required:
245             is_required: true
246           floating_ip_count_required:
247             is_required: false
248         port_oam_port_1_mac_requirements:
249           mac_count_required:
250             is_required: false
251         pcm_vol:
252           get_input:
253           - pcm_volumes
254           - 0
255         port_oam_port_0_network_role_tag: cps
256         oam_image_name:
257           get_input: oam_image_name
258         cps_net_name:
259           get_input: cps_net_name
260         cps_net_mask:
261           get_input: cps_net_mask
262         oam_net_ip:
263           get_input:
264           - oam_net_ips
265           - 0
266         oam_net_mask:
267           get_input: oam_net_mask
268         port_oam_port_0_ip_requirements:
269         - ip_version: 4
270           ip_count_required:
271             is_required: true
272           floating_ip_count_required:
273             is_required: false
274         oam_net_name:
275           get_input: oam_net_name
276       requirements:
277       - dependency_oam_port_0:
278           capability: tosca.capabilities.Node
279           node: tosca.nodes.Root
280           relationship: tosca.relationships.DependsOn
281       - link_oam_port_0:
282           capability: tosca.capabilities.network.Linkable
283           relationship: tosca.relationships.network.LinksTo
284       - dependency_server_oam:
285           capability: tosca.capabilities.Node
286           node: tosca.nodes.Root
287           relationship: tosca.relationships.DependsOn
288       - local_storage_server_oam:
289           capability: tosca.capabilities.Attachment
290           node: tosca.nodes.BlockStorage
291           relationship: tosca.relationships.AttachesTo
292       - dependency_oam_port_1:
293           capability: tosca.capabilities.Node
294           node: tosca.nodes.Root
295           relationship: tosca.relationships.DependsOn
296       - link_oam_port_1:
297           capability: tosca.capabilities.network.Linkable
298           relationship: tosca.relationships.network.LinksTo
299     server_pcm_001:
300       type: org.openecomp.resource.abstract.nodes.heat.pcm_server
301       directives:
302       - substitutable
303       properties:
304         port_pcm_port_1_network_role_tag: oam
305         availabilityzone_name:
306           get_input: availabilityzone_name
307         port_pcm_port_0_ip_requirements:
308         - ip_version: 4
309           ip_count_required:
310             is_required: true
311           floating_ip_count_required:
312             is_required: false
313         oam_net_gw:
314           get_input: oam_net_gw
315         pcm_image_name:
316           get_input: pcm_image_name
317         security_group_name:
318           get_input: security_group_name
319         cps_net_ip:
320           get_input:
321           - cps_net_ips
322           - 0
323         port_pcm_port_1_mac_requirements:
324           mac_count_required:
325             is_required: false
326         pcm_flavor_name:
327           get_input: pcm_flavor_name
328         service_template_filter:
329           substitute_service_template: nested-pcm_v0.1ServiceTemplate.yaml
330         pcm_vol:
331           get_input:
332           - pcm_volumes
333           - 0
334         port_pcm_port_1_ip_requirements:
335         - ip_version: 4
336           ip_count_required:
337             is_required: true
338           floating_ip_count_required:
339             is_required: false
340         port_pcm_port_0_network_role_tag: cps
341         port_pcm_port_0_mac_requirements:
342           mac_count_required:
343             is_required: false
344         pcm_server_name:
345           get_input:
346           - pcm_server_names
347           - 0
348         cps_net_name:
349           get_input: cps_net_name
350         cps_net_mask:
351           get_input: cps_net_mask
352         oam_net_ip:
353           get_input:
354           - oam_net_ips
355           - 0
356         oam_net_mask:
357           get_input: oam_net_mask
358         oam_net_name:
359           get_input: oam_net_name
360       requirements:
361       - dependency_pcm_port_1:
362           capability: tosca.capabilities.Node
363           node: tosca.nodes.Root
364           relationship: tosca.relationships.DependsOn
365       - link_pcm_port_1:
366           capability: tosca.capabilities.network.Linkable
367           relationship: tosca.relationships.network.LinksTo
368       - dependency_server_pcm:
369           capability: tosca.capabilities.Node
370           node: tosca.nodes.Root
371           relationship: tosca.relationships.DependsOn
372       - local_storage_server_pcm:
373           capability: tosca.capabilities.Attachment
374           node: tosca.nodes.BlockStorage
375           relationship: tosca.relationships.AttachesTo
376       - dependency_pcm_port_0:
377           capability: tosca.capabilities.Node
378           node: tosca.nodes.Root
379           relationship: tosca.relationships.DependsOn
380       - link_pcm_port_0:
381           capability: tosca.capabilities.network.Linkable
382           relationship: tosca.relationships.network.LinksTo
383     packet_mirror_network:
384       type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
385       properties:
386         network_name:
387           get_input: net_name
388       requirements:
389       - dependency:
390           capability: tosca.capabilities.Node
391           node: server_pcm_001
392           relationship: tosca.relationships.DependsOn
393       - dependency:
394           capability: feature_compute
395           node: abstract_compute
396           relationship: tosca.relationships.DependsOn
397     compute_port_0:
398       type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
399       properties:
400         ip_requirements:
401         - ip_version: 4
402           ip_count_required:
403             is_required: false
404           floating_ip_count_required:
405             is_required: false
406         mac_requirements:
407           mac_count_required:
408             is_required: false
409         network:
410           get_input: net_name
411     jsa_security_group1:
412       type: org.openecomp.resource.vfc.rules.nodes.heat.network.neutron.SecurityRules
413       properties:
414         name: jsa_security_group1_name
415         description: ems security group
416         rules:
417         - protocol: icmp
418           ethertype: IPv6
419           remote_ip_prefix: ::/0
420           direction: ingress
421       requirements:
422       - port:
423           capability: attachment_pcm_port_0
424           node: server_pcm_002
425           relationship: org.openecomp.relationships.AttachesTo
426       - port:
427           capability: attachment_pcm_port_1
428           node: server_pcm_002
429           relationship: org.openecomp.relationships.AttachesTo
430       - port:
431           capability: attachment_oam_port_1
432           node: test_shared_node_connected_in_nested
433           relationship: org.openecomp.relationships.AttachesTo
434       - port:
435           capability: attachment_oam_port_0
436           node: test_shared_node_connected_in_nested
437           relationship: org.openecomp.relationships.AttachesTo
438     jsa_security_group2:
439       type: org.openecomp.resource.vfc.rules.nodes.heat.network.neutron.SecurityRules
440       properties:
441         name: jsa_security_group2_name
442         description: ems security group
443         rules:
444         - protocol: tcp
445           ethertype: IPv4
446           port_range_max: 65535
447           remote_ip_prefix: 0.0.0.0/0
448           direction: egress
449           port_range_min: 1
450       requirements:
451       - port:
452           capability: attachment_pcm_port_0
453           node: server_pcm_002
454           relationship: org.openecomp.relationships.AttachesTo
455     test_shared_node_connected_in_nested:
456       type: org.openecomp.resource.abstract.nodes.heat.oam_server
457       directives:
458       - substitutable
459       properties:
460         service_template_filter:
461           substitute_service_template: nested-oam_v0.1ServiceTemplate.yaml
462         p2:
463           get_input: shared_security_group_id2
464         port_oam_port_1_ip_requirements:
465         - ip_version: 4
466           ip_count_required:
467             is_required: true
468           floating_ip_count_required:
469             is_required: false
470         port_oam_port_1_mac_requirements:
471           mac_count_required:
472             is_required: false
473         port_oam_port_0_mac_requirements:
474           mac_count_required:
475             is_required: false
476         port_oam_port_0_network_role_tag: cps
477         port_oam_port_1_network_role_tag: oam
478         port_oam_port_0_ip_requirements:
479         - ip_version: 4
480           ip_count_required:
481             is_required: true
482           floating_ip_count_required:
483             is_required: false
484         shared_security_group_id1:
485           get_input: shared_security_group_id1
486       requirements:
487       - dependency_oam_port_0:
488           capability: tosca.capabilities.Node
489           node: tosca.nodes.Root
490           relationship: tosca.relationships.DependsOn
491       - link_oam_port_0:
492           capability: tosca.capabilities.network.Linkable
493           relationship: tosca.relationships.network.LinksTo
494       - dependency_server_oam:
495           capability: tosca.capabilities.Node
496           node: tosca.nodes.Root
497           relationship: tosca.relationships.DependsOn
498       - local_storage_server_oam:
499           capability: tosca.capabilities.Attachment
500           node: tosca.nodes.BlockStorage
501           relationship: tosca.relationships.AttachesTo
502       - dependency_oam_port_1:
503           capability: tosca.capabilities.Node
504           node: tosca.nodes.Root
505           relationship: tosca.relationships.DependsOn
506       - link_oam_port_1:
507           capability: tosca.capabilities.network.Linkable
508           relationship: tosca.relationships.network.LinksTo
509     abstract_compute:
510       type: org.openecomp.resource.abstract.nodes.compute
511       directives:
512       - substitutable
513       properties:
514         compute_compute_user_data_format:
515         - get_attribute:
516           - server_pcm_001
517           - oam_net_gw
518         vm_image_name:
519           get_input: compute_image_name
520         compute_compute_metadata:
521         - get_attribute:
522           - server_pcm_001
523           - server_pcm_id
524         compute_compute_name:
525         - compute_name: null
526         vm_flavor_name:
527           compute_flavor_name: null
528         compute_compute_config_drive:
529         - get_attribute:
530           - compute_port_0
531           - tenant_id
532           - port_security_enabled
533           - device_id
534           - qos_policy
535           - allowed_address_pairs
536           - show
537           - device_owner
538           - network
539           - security_groups
540           - fixed_ips
541           - mac_address
542           - admin_state_up
543           - name
544           - subnets
545           - status
546         service_template_filter:
547           substitute_service_template: Nested_computeServiceTemplate.yaml
548           count: 1
549         index_value:
550           get_property:
551           - SELF
552           - service_template_filter
553           - index_value
554   groups:
555     hot-nimbus-pcm_v0.4_group:
556       type: org.openecomp.groups.heat.HeatStack
557       properties:
558         heat_file: ../Artifacts/hot-nimbus-pcm_v0.4.yaml
559         description: heat template that creates PCRF Cluman stack
560       members:
561       - server_pcm_002
562       - server_oam_001
563       - server_pcm_001
564       - packet_mirror_network
565       - compute_port_0
566       - jsa_security_group1
567       - jsa_security_group2
568       - abstract_compute
569     addOn_group:
570       type: org.openecomp.groups.heat.HeatStack
571       properties:
572         heat_file: ../Artifacts/addOn.yml
573         description: |
574           Version 2.0 02-09-2016 (Authors: John Doe, user PROD)
575       members:
576       - test_shared_node_connected_in_nested