ccafac79bdd3897b276cc22a1ac73904cf251f1b
[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     pcm_flavor_name:
12       label: PCRF CM flavor name
13       hidden: false
14       immutable: false
15       type: string
16       description: flavor name of PCRF CM instance
17       default: cps
18     availabilityzone_name:
19       label: availabilityzone name
20       hidden: false
21       immutable: false
22       type: string
23       description: availabilityzone name
24       default: nova
25     oam_net_gw:
26       label: CPS network gateway
27       hidden: false
28       immutable: false
29       type: string
30       description: CPS network gateway
31     pcm_server_names:
32       label: PCRF CM server names
33       hidden: false
34       immutable: false
35       type: list
36       description: name of the PCRF CM instance
37       default:
38       - ZRDM1PCRF01PCM001
39       entry_schema:
40         type: string
41     pcm_image_name:
42       label: PCRF CM image name
43       hidden: false
44       immutable: false
45       type: string
46       description: PCRF CM image name
47       default: rhel2
48     net_name:
49       hidden: false
50       immutable: false
51       type: string
52     compute_image_name:
53       hidden: false
54       immutable: false
55       type: string
56   node_templates:
57     server_pcm_002:
58       type: org.openecomp.resource.abstract.nodes.heat.pcm_server
59       directives:
60       - substitutable
61       properties:
62         pcm_flavor_name:
63           get_input: pcm_flavor_name
64         service_template_filter:
65           substitute_service_template: nested-pcm_v0.2ServiceTemplate.yaml
66         port_pcm_port_1_network_role_tag: oam
67         availabilityzone_name:
68           get_input: availabilityzone_name
69         port_pcm_port_0_ip_requirements:
70         - ip_version: 4
71           ip_count_required:
72             is_required: true
73           floating_ip_count_required:
74             is_required: false
75         pcm_image_name:
76           get_input: pcm_image_name
77         port_pcm_port_1_mac_requirements:
78           mac_count_required:
79             is_required: false
80         port_pcm_port_1_ip_requirements:
81         - ip_version: 4
82           ip_count_required:
83             is_required: true
84           floating_ip_count_required:
85             is_required: false
86         port_pcm_port_0_network_role_tag: cps
87         port_pcm_port_0_mac_requirements:
88           mac_count_required:
89             is_required: false
90         pcm_server_name:
91           get_input:
92           - pcm_server_names
93           - 0
94       requirements:
95       - dependency_pcm_port_1:
96           capability: tosca.capabilities.Node
97           node: tosca.nodes.Root
98           relationship: tosca.relationships.DependsOn
99       - link_pcm_port_1:
100           capability: tosca.capabilities.network.Linkable
101           relationship: tosca.relationships.network.LinksTo
102       - dependency_server_pcm:
103           capability: tosca.capabilities.Node
104           node: tosca.nodes.Root
105           relationship: tosca.relationships.DependsOn
106       - local_storage_server_pcm:
107           capability: tosca.capabilities.Attachment
108           node: tosca.nodes.BlockStorage
109           relationship: tosca.relationships.AttachesTo
110       - dependency_pcm_port_0:
111           capability: tosca.capabilities.Node
112           node: tosca.nodes.Root
113           relationship: tosca.relationships.DependsOn
114       - link_pcm_port_0:
115           capability: tosca.capabilities.network.Linkable
116           relationship: tosca.relationships.network.LinksTo
117     server_pcm_001:
118       type: org.openecomp.resource.abstract.nodes.heat.pcm_server_1
119       directives:
120       - substitutable
121       properties:
122         pcm_flavor_name:
123           get_input: pcm_flavor_name
124         service_template_filter:
125           substitute_service_template: nested-pcm_v0.1ServiceTemplate.yaml
126         port_pcm_port_1_network_role_tag: oam
127         availabilityzone_name:
128           get_input: availabilityzone_name
129         port_pcm_port_0_ip_requirements:
130         - ip_version: 4
131           ip_count_required:
132             is_required: true
133           floating_ip_count_required:
134             is_required: false
135         pcm_image_name:
136           get_input: pcm_image_name
137         port_pcm_port_1_mac_requirements:
138           mac_count_required:
139             is_required: false
140         port_pcm_port_1_ip_requirements:
141         - ip_version: 4
142           ip_count_required:
143             is_required: true
144           floating_ip_count_required:
145             is_required: false
146         port_pcm_port_0_network_role_tag: cps
147         port_pcm_port_0_mac_requirements:
148           mac_count_required:
149             is_required: false
150         pcm_server_name:
151           get_input:
152           - pcm_server_names
153           - 0
154       requirements:
155       - dependency_pcm_port_1:
156           capability: tosca.capabilities.Node
157           node: tosca.nodes.Root
158           relationship: tosca.relationships.DependsOn
159       - link_pcm_port_1:
160           capability: tosca.capabilities.network.Linkable
161           relationship: tosca.relationships.network.LinksTo
162       - dependency_server_pcm:
163           capability: tosca.capabilities.Node
164           node: tosca.nodes.Root
165           relationship: tosca.relationships.DependsOn
166       - local_storage_server_pcm:
167           capability: tosca.capabilities.Attachment
168           node: tosca.nodes.BlockStorage
169           relationship: tosca.relationships.AttachesTo
170       - dependency_pcm_port_0:
171           capability: tosca.capabilities.Node
172           node: tosca.nodes.Root
173           relationship: tosca.relationships.DependsOn
174       - link_pcm_port_0:
175           capability: tosca.capabilities.network.Linkable
176           relationship: tosca.relationships.network.LinksTo
177     compute_port_0:
178       type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
179       properties:
180         ip_requirements:
181         - ip_version: 4
182           ip_count_required:
183             is_required: false
184           floating_ip_count_required:
185             is_required: false
186         mac_requirements:
187           mac_count_required:
188             is_required: false
189         network:
190           get_input: net_name
191     abstract_compute:
192       type: org.openecomp.resource.abstract.nodes.compute
193       directives:
194       - substitutable
195       properties:
196         compute_compute_user_data_format:
197         - get_attribute:
198           - server_pcm_001
199           - oam_net_gw
200         vm_image_name:
201           get_input: compute_image_name
202         compute_compute_name:
203         - compute_name: null
204         vm_flavor_name:
205           compute_flavor_name: null
206         compute_compute_config_drive:
207         - get_attribute:
208           - compute_port_0
209           - tenant_id
210           - port_security_enabled
211           - device_id
212           - qos_policy
213           - allowed_address_pairs
214           - show
215           - device_owner
216           - network
217           - security_groups
218           - fixed_ips
219           - mac_address
220           - admin_state_up
221           - name
222           - subnets
223           - status
224         service_template_filter:
225           substitute_service_template: Nested_computeServiceTemplate.yaml
226           count: 1
227         index_value:
228           get_property:
229           - SELF
230           - service_template_filter
231           - index_value
232   groups:
233     hot-nimbus-pcm_v0.4_group:
234       type: org.openecomp.groups.heat.HeatStack
235       properties:
236         heat_file: ../Artifacts/hot-nimbus-pcm_v0.4.yaml
237         description: heat template that creates PCRF Cluman stack
238       members:
239       - server_pcm_002
240       - server_pcm_001
241       - compute_port_0
242       - abstract_compute