e26a807c2985247121a6fbf238c283f094631dae
[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     app_volume_size_0:
12       hidden: false
13       immutable: false
14       type: float
15       description: Size of Service Data 1 Volume for app VMs
16       default: 130
17       constraints:
18       - in_range:
19         - 1
20         - 9999
21     plt_data_floating_v6_ip:
22       hidden: false
23       immutable: false
24       type: string
25       description: Floating IPv6 for plt VMs on the DATA network
26     iox_data_floating_v6_ip:
27       hidden: false
28       immutable: false
29       type: string
30       description: Floating IPv6 for iox VMs on the DATA network
31     plt_data_v6_ips:
32       hidden: false
33       immutable: false
34       type: list
35       description: Fixed IPv6 assignments for plt VMs on the DATA network
36       entry_schema:
37         type: string
38     iox_data_v6_ips:
39       hidden: false
40       immutable: false
41       type: list
42       description: Fixed IPv6 assignments for iox VMs on the DATA network
43       entry_schema:
44         type: string
45     plt_volume_shared_id_0:
46       hidden: false
47       immutable: false
48       type: string
49       description: ServiceData2 volume for plt VMs
50     plt_oam_ips:
51       hidden: false
52       immutable: false
53       type: list
54       description: Fixed IPv4 assignments for plt VMs on the OAM network
55       entry_schema:
56         type: string
57     openstack_cacert:
58       label: OpenStack CA Certificate
59       hidden: false
60       immutable: false
61       type: string
62       description: CA Certificate to use for OpenStack client calls.
63       default: ''
64     siteinfo_url:
65       hidden: false
66       immutable: false
67       type: string
68       description: siteinfo url
69     plt_pair_uuid:
70       hidden: false
71       immutable: false
72       type: string
73       description: UUID for plt VM pair
74       default: 573f433e25ba8
75     app_names:
76       hidden: false
77       immutable: false
78       type: list
79       description: VM names for app VMs
80       entry_schema:
81         type: string
82     iox_names:
83       hidden: false
84       immutable: false
85       type: list
86       description: VM names for iox VMs
87       entry_schema:
88         type: string
89     plt_servicedata2_volume_size_0:
90       hidden: false
91       immutable: false
92       type: float
93       description: Size of Service Data 2 Volume for plt VMs
94       default: 150
95       constraints:
96       - in_range:
97         - 1
98         - 9999
99     app_volume_id_0:
100       hidden: false
101       immutable: false
102       type: string
103       description: ServiceData1 volume for first app VM
104     plt_servicedata1_volume_size_0:
105       hidden: false
106       immutable: false
107       type: float
108       description: Size of Service Data 1 Volume for plt VMs
109       default: 70
110       constraints:
111       - in_range:
112         - 1
113         - 9999
114     internal_subnet_cidr:
115       hidden: false
116       immutable: false
117       type: string
118       description: IP subnet for internal network
119       default: 169.30.12.0/24
120     app_volume_id_1:
121       hidden: false
122       immutable: false
123       type: string
124       description: ServiceData1 volume for second app VM
125     domain:
126       hidden: false
127       immutable: false
128       type: string
129       description: What is this domain?
130     app_volume_id_2:
131       hidden: false
132       immutable: false
133       type: string
134       description: ServiceData1 volume for third app VM
135     plt_image_name:
136       hidden: false
137       immutable: false
138       type: string
139       description: Pilot image
140       default: USP_IECF-PILOT_30.3.3-mcas4.4.6.qcow2
141     app_image_name:
142       hidden: false
143       immutable: false
144       type: string
145       description: App image
146       default: USP_IECF-APP_30.3.3-mcas4.4.6.qcow2
147     plt_oam_floating_ip:
148       hidden: false
149       immutable: false
150       type: string
151       description: Floating IPv4 for plt VMs on the OAM network
152     plt_flavor_name:
153       hidden: false
154       immutable: false
155       type: string
156       description: Pilot flavor
157       default: nd.c2r4d50
158     vf_module_id:
159       hidden: false
160       immutable: false
161       type: string
162       description: Unique ID for this VF Module instance
163     iox_flavor_name:
164       hidden: false
165       immutable: false
166       type: string
167       description: IO flavor
168       default: nd.c2r4d50
169     app_security_groups:
170       hidden: false
171       immutable: false
172       type: list
173       description: App security group
174       entry_schema:
175         type: string
176     vnf_name:
177       hidden: false
178       immutable: false
179       type: string
180       description: Unique name for this VF instance
181     config_server_cacert:
182       label: configure server CA Certificate
183       hidden: false
184       immutable: false
185       type: string
186       description: CA Certificate for download from siteinfo url and config url.
187       default: ''
188     vf_module_name:
189       hidden: false
190       immutable: false
191       type: string
192       description: Unique name for this VF Module instance
193     oam_security_groups:
194       hidden: false
195       immutable: false
196       type: list
197       description: OAM security group
198       entry_schema:
199         type: string
200     iox_oam_ips:
201       hidden: false
202       immutable: false
203       type: list
204       description: Fixed IPv4 assignments for iox VMs on the OAM network
205       entry_schema:
206         type: string
207     vnf_id:
208       hidden: false
209       immutable: false
210       type: string
211       description: Unique ID for this VF instance
212     iox_image_name:
213       hidden: false
214       immutable: false
215       type: string
216       description: IO image
217       default: USP_IECF-IO_30.3.3-mcas4.4.6.qcow2
218     availability_zone_0:
219       hidden: false
220       immutable: false
221       type: string
222       description: First availability zone ID or Name
223     ignore_siteinfo_audit:
224       label: Siteinfo Audit Ignore Flag
225       hidden: false
226       immutable: false
227       type: string
228       description: Set to true if siteinfo audit failure should not prevent system installation
229     availability_zone_1:
230       hidden: false
231       immutable: false
232       type: string
233       description: Second availability zone ID or Name
234     data_net_id:
235       hidden: false
236       immutable: false
237       type: string
238       description: DATA network
239     plt_names:
240       hidden: false
241       immutable: false
242       type: list
243       description: VM names for plt VMs
244       entry_schema:
245         type: string
246     plt_security_groups:
247       hidden: false
248       immutable: false
249       type: list
250       description: Pilot security group
251       entry_schema:
252         type: string
253     app_data_v6_ips:
254       hidden: false
255       immutable: false
256       type: list
257       description: Fixed IPv6 assignments for app VMs on the DATA network
258       entry_schema:
259         type: string
260     iox_security_groups:
261       hidden: false
262       immutable: false
263       type: list
264       description: IO security group
265       entry_schema:
266         type: string
267     ieccf_debug:
268       hidden: false
269       immutable: false
270       type: string
271       description: IECCF debug flag
272       default: false
273     name_server_2:
274       hidden: false
275       immutable: false
276       type: string
277       description: IP address of name server 2
278     app_oam_ips:
279       hidden: false
280       immutable: false
281       type: list
282       description: Fixed IPv4 assignments for app VMs on the OAM network
283       entry_schema:
284         type: string
285     app_flavor_name:
286       hidden: false
287       immutable: false
288       type: string
289       description: App flavor
290       default: nd.c2r4d50
291     name_server_1:
292       hidden: false
293       immutable: false
294       type: string
295       description: IP address of name server 1
296     oam_net_id:
297       hidden: false
298       immutable: false
299       type: string
300       description: OAM network
301     iox_oam_floating_ip:
302       hidden: false
303       immutable: false
304       type: string
305       description: Floating IPv4 for iox VMs on the OAM network
306     ieccf_config_url:
307       hidden: false
308       immutable: false
309       type: string
310       description: IECCF configuration package URL
311     iox_pair_uuid:
312       hidden: false
313       immutable: false
314       type: string
315       description: UUID for iox VM pair
316       default: 573f433e284b4
317     plt_volume_id_0:
318       hidden: false
319       immutable: false
320       type: string
321       description: ServiceData1 volume for first plt VM
322     plt_volume_id_1:
323       hidden: false
324       immutable: false
325       type: string
326       description: ServiceData1 volume for second plt VM
327     data_security_groups:
328       hidden: false
329       immutable: false
330       type: list
331       description: DATA security group
332       entry_schema:
333         type: string
334   node_templates:
335     network:data:vip:m001:m002:
336       type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
337       properties:
338         replacement_policy: AUTO
339         ip_requirements:
340         - ip_version: 4
341           ip_count_required:
342             is_required: true
343           floating_ip_count_required:
344             is_required: false
345         security_groups:
346           get_input: data_security_groups
347         fixed_ips:
348         - ip_address:
349             get_input: plt_data_floating_v6_ip
350         mac_requirements:
351           mac_count_required:
352             is_required: false
353         name:
354           str_replace:
355             template: $vnf_name-network_data_vip_m001_m002
356             params:
357               $vnf_name:
358                 get_input: vnf_name
359         network_role_tag: data
360         network:
361           get_input: data_net_id
362     network:data:vip:m004:m003:
363       type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
364       properties:
365         replacement_policy: AUTO
366         ip_requirements:
367         - ip_version: 4
368           ip_count_required:
369             is_required: true
370           floating_ip_count_required:
371             is_required: false
372         security_groups:
373           get_input: data_security_groups
374         fixed_ips:
375         - ip_address:
376             get_input: iox_data_floating_v6_ip
377         mac_requirements:
378           mac_count_required:
379             is_required: false
380         name:
381           str_replace:
382             template: $vnf_name-network_data_vip_m004_m003
383             params:
384               $vnf_name:
385                 get_input: vnf_name
386         network_role_tag: data
387         network:
388           get_input: data_net_id
389     plt_volume_shared_0:
390       type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
391       properties:
392         size: '(get_input : plt_servicedata2_volume_size_0) * 1024'
393         name:
394           str_replace:
395             template: $vnf_name-plt_volume_shared_0
396             params:
397               $vnf_name:
398                 get_input: vnf_name
399     network:oam:vip:m001:m002:
400       type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
401       properties:
402         replacement_policy: AUTO
403         ip_requirements:
404         - ip_version: 4
405           ip_count_required:
406             is_required: true
407           floating_ip_count_required:
408             is_required: false
409         security_groups:
410           get_input: oam_security_groups
411         fixed_ips:
412         - ip_address:
413             get_input: plt_oam_floating_ip
414         mac_requirements:
415           mac_count_required:
416             is_required: false
417         name:
418           str_replace:
419             template: $vnf_name-network_oam_vip_m001_m002
420             params:
421               $vnf_name:
422                 get_input: vnf_name
423         network_role_tag: oam
424         network:
425           get_input: oam_net_id
426     app_volume_1:
427       type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
428       properties:
429         size: '(get_input : app_volume_size_0) * 1024'
430         name:
431           str_replace:
432             template: $vnf_name-app_volume_1
433             params:
434               $vnf_name:
435                 get_input: vnf_name
436     app_volume_2:
437       type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
438       properties:
439         size: '(get_input : app_volume_size_0) * 1024'
440         name:
441           str_replace:
442             template: $vnf_name-app_volume_2
443             params:
444               $vnf_name:
445                 get_input: vnf_name
446     app_volume_0:
447       type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
448       properties:
449         size: '(get_input : app_volume_size_0) * 1024'
450         name:
451           str_replace:
452             template: $vnf_name-app_volume_0
453             params:
454               $vnf_name:
455                 get_input: vnf_name
456     plt_volume_1:
457       type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
458       properties:
459         size: '(get_input : plt_servicedata1_volume_size_0) * 1024'
460         name:
461           str_replace:
462             template: $vnf_name-plt_volume_1
463             params:
464               $vnf_name:
465                 get_input: vnf_name
466     plt_volume_0:
467       type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
468       properties:
469         size: '(get_input : plt_servicedata1_volume_size_0) * 1024'
470         name:
471           str_replace:
472             template: $vnf_name-plt_volume_0
473             params:
474               $vnf_name:
475                 get_input: vnf_name
476     abstract_iox_0:
477       type: org.openecomp.resource.abstract.nodes.iox
478       directives:
479       - substitutable
480       properties:
481         port_iox_data_0_port_ip_requirements:
482         - ip_version: 6
483           ip_count_required:
484             is_required: true
485           floating_ip_count_required:
486             is_required: false
487         port_iox_internal_0_port_network:
488         - internal_net_0
489         port_iox_data_0_port_name:
490         - str_replace:
491             template: $vnf_name-iox_data_1_port_0
492             params:
493               $vnf_name:
494                 get_input: vnf_name
495         vm_flavor_name:
496           get_input: iox_flavor_name
497         port_iox_data_0_port_allowed_address_pairs:
498         - ip_address:
499             get_attribute:
500             - network:data:vip:m004:m003
501             - fixed_ips
502             - 0
503             - ip_address
504         port_iox_internal_0_port_ip_requirements:
505         - ip_version: 4
506           ip_count_required:
507             is_required: false
508           floating_ip_count_required:
509             is_required: true
510         vm_image_name:
511           get_input: iox_image_name
512         port_iox_oam_0_port_name:
513         - str_replace:
514             template: $vnf_name-iox_oam_1_port_0
515             params:
516               $vnf_name:
517                 get_input: vnf_name
518         port_iox_oam_0_port_network_role_tag: oam
519         compute_iox_user_data_format:
520         - RAW
521         port_iox_data_0_port_fixed_ips:
522         - ip_address:
523             get_input:
524             - iox_data_v6_ips
525             - 1
526         port_iox_internal_0_port_allowed_address_pairs:
527         - ip_address:
528             get_input: internal_subnet_cidr
529         compute_iox_config_drive:
530         - true
531         port_iox_oam_0_port_replacement_policy:
532         - AUTO
533         port_iox_data_0_port_security_groups:
534         - get_input: data_security_groups
535         compute_iox_image_update_policy:
536         - REBUILD
537         port_iox_oam_0_port_network:
538         - get_input: oam_net_id
539         port_iox_internal_0_port_security_groups:
540         - get_input: iox_security_groups
541         port_iox_internal_0_port_name:
542         - str_replace:
543             template: $vnf_name-iox_internal_1_port_0
544             params:
545               $vnf_name:
546                 get_input: vnf_name
547         port_iox_oam_0_port_fixed_ips:
548         - ip_address:
549             get_input:
550             - iox_oam_ips
551             - 1
552         compute_iox_name:
553         - get_input:
554           - iox_names
555           - 1
556         port_iox_data_0_port_network:
557         - get_input: data_net_id
558         port_iox_internal_0_port_replacement_policy:
559         - AUTO
560         port_iox_internal_0_port_mac_requirements:
561           mac_count_required:
562             is_required: false
563         port_iox_data_0_port_mac_requirements:
564           mac_count_required:
565             is_required: false
566         port_iox_data_0_port_replacement_policy:
567         - AUTO
568         compute_iox_metadata:
569         - vf_module_id:
570             get_input: vf_module_id
571           vm_role: iox
572           vnf_id:
573             get_input: vnf_id
574           vnf_name:
575             get_input: vnf_name
576           vf_module_name:
577             get_input: vf_module_name
578         port_iox_oam_0_port_allowed_address_pairs:
579         - ip_address:
580             get_attribute:
581             - network:io:vip:m004:m003
582             - fixed_ips
583             - 0
584             - ip_address
585         compute_iox_availability_zone:
586         - get_input: availability_zone_1
587         port_iox_oam_0_port_security_groups:
588         - get_input: oam_security_groups
589         port_iox_oam_0_port_mac_requirements:
590           mac_count_required:
591             is_required: false
592         port_iox_oam_0_port_ip_requirements:
593         - ip_version: 4
594           ip_count_required:
595             is_required: true
596           floating_ip_count_required:
597             is_required: false
598         port_iox_data_0_port_network_role_tag: data
599         service_template_filter:
600           substitute_service_template: Nested_ioxServiceTemplate.yaml
601           count: 1
602         index_value:
603           get_property:
604           - SELF
605           - service_template_filter
606           - index_value
607       requirements:
608       - link_iox_iox_internal_0_port:
609           capability: tosca.capabilities.network.Linkable
610           node: internal_net_0
611           relationship: tosca.relationships.network.LinksTo
612     abstract_app_0:
613       type: org.openecomp.resource.abstract.nodes.app
614       directives:
615       - substitutable
616       properties:
617         port_app_data_0_port_mac_requirements:
618           mac_count_required:
619             is_required: false
620         compute_app_scheduler_hints:
621         - group: app_server_group_group
622         port_app_internal_0_port_ip_requirements:
623         - ip_version: 4
624           ip_count_required:
625             is_required: false
626           floating_ip_count_required:
627             is_required: true
628         port_app_oam_0_port_replacement_policy:
629         - AUTO
630         port_app_oam_0_port_network:
631         - get_input: oam_net_id
632         vm_flavor_name:
633           get_input: app_flavor_name
634         vm_image_name:
635           get_input: app_image_name
636         port_app_oam_0_port_name:
637         - str_replace:
638             template: $vnf_name-app_oam_2_port_0
639             params:
640               $vnf_name:
641                 get_input: vnf_name
642         compute_app_availability_zone:
643         - get_input: availability_zone_0
644         compute_app_config_drive:
645         - true
646         port_app_oam_0_port_mac_requirements:
647           mac_count_required:
648             is_required: false
649         port_app_data_0_port_network:
650         - get_input: data_net_id
651         port_app_data_0_port_network_role_tag: data
652         port_app_oam_0_port_network_role_tag: oam
653         compute_app_metadata:
654         - vf_module_id:
655             get_input: vf_module_id
656           vm_role: app
657           vnf_id:
658             get_input: vnf_id
659           vnf_name:
660             get_input: vnf_name
661           vf_module_name:
662             get_input: vf_module_name
663         port_app_data_0_port_ip_requirements:
664         - ip_version: 4
665           ip_count_required:
666             is_required: false
667           floating_ip_count_required:
668             is_required: false
669         port_app_internal_0_port_allowed_address_pairs:
670         - ip_address:
671             get_input: internal_subnet_cidr
672         port_app_data_0_port_name:
673         - str_replace:
674             template: $vnf_name-app_data_2_port_0
675             params:
676               $vnf_name:
677                 get_input: vnf_name
678         port_app_oam_0_port_ip_requirements:
679         - ip_version: 4
680           ip_count_required:
681             is_required: true
682           floating_ip_count_required:
683             is_required: false
684         port_app_internal_0_port_network:
685         - internal_net_0
686         port_app_data_0_port_security_groups:
687         - get_input: data_security_groups
688         port_app_internal_0_port_replacement_policy:
689         - AUTO
690         port_app_internal_0_port_mac_requirements:
691           mac_count_required:
692             is_required: false
693         port_app_oam_0_port_security_groups:
694         - get_input: oam_security_groups
695         port_app_internal_0_port_name:
696         - str_replace:
697             template: $vnf_name-app_internal_2_port_0
698             params:
699               $vnf_name:
700                 get_input: vnf_name
701         port_app_oam_0_port_fixed_ips:
702         - ip_address:
703             get_input:
704             - app_oam_ips
705             - 2
706         port_app_data_0_port_replacement_policy:
707         - AUTO
708         compute_app_name:
709         - get_input:
710           - app_names
711           - 2
712         port_app_internal_0_port_security_groups:
713         - get_input: app_security_groups
714         compute_app_image_update_policy:
715         - REBUILD
716         compute_app_user_data_format:
717         - RAW
718         service_template_filter:
719           substitute_service_template: Nested_appServiceTemplate.yaml
720           count: 1
721         index_value:
722           get_property:
723           - SELF
724           - service_template_filter
725           - index_value
726       requirements:
727       - link_app_app_internal_0_port:
728           capability: tosca.capabilities.network.Linkable
729           node: internal_net_0
730           relationship: tosca.relationships.network.LinksTo
731     network:system:vip:m001:m002:
732       type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
733       properties:
734         replacement_policy: AUTO
735         ip_requirements:
736         - ip_version: 4
737           ip_count_required:
738             is_required: false
739           floating_ip_count_required:
740             is_required: true
741         security_groups:
742           get_input: plt_security_groups
743         mac_requirements:
744           mac_count_required:
745             is_required: false
746         allowed_address_pairs:
747         - ip_address:
748             get_input: internal_subnet_cidr
749         name:
750           str_replace:
751             template: $vnf_name-network_system_vip_m001_m002
752             params:
753               $vnf_name:
754                 get_input: vnf_name
755         network: internal_net_0
756       requirements:
757       - link:
758           capability: tosca.capabilities.network.Linkable
759           node: internal_net_0
760           relationship: tosca.relationships.network.LinksTo
761     abstract_iox_1:
762       type: org.openecomp.resource.abstract.nodes.iox
763       directives:
764       - substitutable
765       properties:
766         port_iox_data_0_port_ip_requirements:
767         - ip_version: 6
768           ip_count_required:
769             is_required: true
770           floating_ip_count_required:
771             is_required: false
772         port_iox_internal_0_port_network:
773         - internal_net_0
774         port_iox_data_0_port_name:
775         - str_replace:
776             template: $vnf_name-iox_data_0_port_0
777             params:
778               $vnf_name:
779                 get_input: vnf_name
780         vm_flavor_name:
781           get_input: iox_flavor_name
782         port_iox_data_0_port_allowed_address_pairs:
783         - ip_address:
784             get_attribute:
785             - network:data:vip:m004:m003
786             - fixed_ips
787             - 0
788             - ip_address
789         port_iox_internal_0_port_ip_requirements:
790         - ip_version: 4
791           ip_count_required:
792             is_required: false
793           floating_ip_count_required:
794             is_required: true
795         vm_image_name:
796           get_input: iox_image_name
797         port_iox_oam_0_port_name:
798         - str_replace:
799             template: $vnf_name-iox_oam_0_port_0
800             params:
801               $vnf_name:
802                 get_input: vnf_name
803         port_iox_oam_0_port_network_role_tag: oam
804         compute_iox_user_data_format:
805         - RAW
806         port_iox_data_0_port_fixed_ips:
807         - ip_address:
808             get_input:
809             - iox_data_v6_ips
810             - 0
811         port_iox_internal_0_port_allowed_address_pairs:
812         - ip_address:
813             get_input: internal_subnet_cidr
814         compute_iox_config_drive:
815         - true
816         port_iox_oam_0_port_replacement_policy:
817         - AUTO
818         port_iox_data_0_port_security_groups:
819         - get_input: data_security_groups
820         compute_iox_image_update_policy:
821         - REBUILD
822         port_iox_oam_0_port_network:
823         - get_input: oam_net_id
824         port_iox_internal_0_port_security_groups:
825         - get_input: iox_security_groups
826         port_iox_internal_0_port_name:
827         - str_replace:
828             template: $vnf_name-iox_internal_0_port_0
829             params:
830               $vnf_name:
831                 get_input: vnf_name
832         compute_iox_name:
833         - get_input:
834           - iox_names
835           - 0
836         port_iox_data_0_port_network:
837         - get_input: data_net_id
838         port_iox_internal_0_port_replacement_policy:
839         - AUTO
840         port_iox_internal_0_port_mac_requirements:
841           mac_count_required:
842             is_required: false
843         port_iox_data_0_port_mac_requirements:
844           mac_count_required:
845             is_required: false
846         port_iox_data_0_port_replacement_policy:
847         - AUTO
848         compute_iox_metadata:
849         - vf_module_id:
850             get_input: vf_module_id
851           vm_role: iox
852           vnf_id:
853             get_input: vnf_id
854           vnf_name:
855             get_input: vnf_name
856           vf_module_name:
857             get_input: vf_module_name
858         port_iox_oam_0_port_allowed_address_pairs:
859         - ip_address:
860             get_attribute:
861             - network:io:vip:m004:m003
862             - fixed_ips
863             - 0
864             - ip_address
865         compute_iox_availability_zone:
866         - get_input: availability_zone_0
867         port_iox_oam_0_port_security_groups:
868         - get_input: oam_security_groups
869         port_iox_oam_0_port_mac_requirements:
870           mac_count_required:
871             is_required: false
872         port_iox_oam_0_port_ip_requirements:
873         - ip_version: 4
874           ip_count_required:
875             is_required: false
876           floating_ip_count_required:
877             is_required: false
878         port_iox_data_0_port_network_role_tag: data
879         service_template_filter:
880           substitute_service_template: Nested_ioxServiceTemplate.yaml
881           count: 1
882         index_value:
883           get_property:
884           - SELF
885           - service_template_filter
886           - index_value
887       requirements:
888       - link_iox_iox_internal_0_port:
889           capability: tosca.capabilities.network.Linkable
890           node: internal_net_0
891           relationship: tosca.relationships.network.LinksTo
892     abstract_app_2:
893       type: org.openecomp.resource.abstract.nodes.app
894       directives:
895       - substitutable
896       properties:
897         port_app_data_0_port_mac_requirements:
898           mac_count_required:
899             is_required: false
900         compute_app_scheduler_hints:
901         - group: app_server_group_group
902         port_app_internal_0_port_ip_requirements:
903         - ip_version: 4
904           ip_count_required:
905             is_required: false
906           floating_ip_count_required:
907             is_required: true
908         port_app_oam_0_port_replacement_policy:
909         - AUTO
910         port_app_oam_0_port_network:
911         - get_input: oam_net_id
912         vm_flavor_name:
913           get_input: app_flavor_name
914         port_app_data_0_port_fixed_ips:
915         - ip_address:
916             get_input:
917             - app_data_v6_ips
918             - 1
919         vm_image_name:
920           get_input: app_image_name
921         port_app_oam_0_port_name:
922         - str_replace:
923             template: $vnf_name-app_oam_1_port_0
924             params:
925               $vnf_name:
926                 get_input: vnf_name
927         compute_app_availability_zone:
928         - get_input: availability_zone_1
929         compute_app_config_drive:
930         - true
931         port_app_oam_0_port_mac_requirements:
932           mac_count_required:
933             is_required: false
934         port_app_data_0_port_network:
935         - get_input: data_net_id
936         port_app_data_0_port_network_role_tag: data
937         port_app_oam_0_port_network_role_tag: oam
938         compute_app_metadata:
939         - vf_module_id:
940             get_input: vf_module_id
941           vm_role: app
942           vnf_id:
943             get_input: vnf_id
944           vnf_name:
945             get_input: vnf_name
946           vf_module_name:
947             get_input: vf_module_name
948         port_app_data_0_port_ip_requirements:
949         - ip_version: 6
950           ip_count_required:
951             is_required: true
952           floating_ip_count_required:
953             is_required: false
954         port_app_internal_0_port_allowed_address_pairs:
955         - ip_address:
956             get_input: internal_subnet_cidr
957         port_app_data_0_port_name:
958         - str_replace:
959             template: $vnf_name-app_data_1_port_0
960             params:
961               $vnf_name:
962                 get_input: vnf_name
963         port_app_oam_0_port_ip_requirements:
964         - ip_version: 4
965           ip_count_required:
966             is_required: true
967           floating_ip_count_required:
968             is_required: false
969         port_app_internal_0_port_network:
970         - internal_net_0
971         port_app_data_0_port_security_groups:
972         - get_input: data_security_groups
973         port_app_internal_0_port_replacement_policy:
974         - AUTO
975         port_app_internal_0_port_mac_requirements:
976           mac_count_required:
977             is_required: false
978         port_app_oam_0_port_security_groups:
979         - get_input: oam_security_groups
980         port_app_internal_0_port_name:
981         - str_replace:
982             template: $vnf_name-app_internal_1_port_0
983             params:
984               $vnf_name:
985                 get_input: vnf_name
986         port_app_oam_0_port_fixed_ips:
987         - ip_address:
988             get_input:
989             - app_oam_ips
990             - 1
991         port_app_data_0_port_replacement_policy:
992         - AUTO
993         compute_app_name:
994         - get_input:
995           - app_names
996           - 1
997         port_app_internal_0_port_security_groups:
998         - get_input: app_security_groups
999         compute_app_image_update_policy:
1000         - REBUILD
1001         compute_app_user_data_format:
1002         - RAW
1003         service_template_filter:
1004           substitute_service_template: Nested_appServiceTemplate.yaml
1005           count: 1
1006         index_value:
1007           get_property:
1008           - SELF
1009           - service_template_filter
1010           - index_value
1011       requirements:
1012       - link_app_app_internal_0_port:
1013           capability: tosca.capabilities.network.Linkable
1014           node: internal_net_0
1015           relationship: tosca.relationships.network.LinksTo
1016     abstract_app_1:
1017       type: org.openecomp.resource.abstract.nodes.app
1018       directives:
1019       - substitutable
1020       properties:
1021         port_app_data_0_port_mac_requirements:
1022           mac_count_required:
1023             is_required: false
1024         compute_app_scheduler_hints:
1025         - group: app_server_group_group
1026         port_app_internal_0_port_ip_requirements:
1027         - ip_version: 4
1028           ip_count_required:
1029             is_required: false
1030           floating_ip_count_required:
1031             is_required: true
1032         port_app_oam_0_port_replacement_policy:
1033         - AUTO
1034         port_app_oam_0_port_network:
1035         - get_input: oam_net_id
1036         vm_flavor_name:
1037           get_input: app_flavor_name
1038         port_app_data_0_port_fixed_ips:
1039         - ip_address:
1040             get_input:
1041             - app_data_v6_ips
1042             - 0
1043         vm_image_name:
1044           get_input: app_image_name
1045         port_app_oam_0_port_name:
1046         - str_replace:
1047             template: $vnf_name-app_oam_0_port_0
1048             params:
1049               $vnf_name:
1050                 get_input: vnf_name
1051         compute_app_availability_zone:
1052         - get_input: availability_zone_0
1053         compute_app_config_drive:
1054         - true
1055         port_app_oam_0_port_mac_requirements:
1056           mac_count_required:
1057             is_required: false
1058         port_app_data_0_port_network:
1059         - get_input: data_net_id
1060         port_app_data_0_port_network_role_tag: data
1061         port_app_oam_0_port_network_role_tag: oam
1062         compute_app_metadata:
1063         - vf_module_id:
1064             get_input: vf_module_id
1065           vm_role: app
1066           vnf_id:
1067             get_input: vnf_id
1068           vnf_name:
1069             get_input: vnf_name
1070           vf_module_name:
1071             get_input: vf_module_name
1072         port_app_data_0_port_ip_requirements:
1073         - ip_version: 6
1074           ip_count_required:
1075             is_required: true
1076           floating_ip_count_required:
1077             is_required: false
1078         port_app_internal_0_port_allowed_address_pairs:
1079         - ip_address:
1080             get_input: internal_subnet_cidr
1081         port_app_data_0_port_name:
1082         - str_replace:
1083             template: $vnf_name-app_data_0_port_0
1084             params:
1085               $vnf_name:
1086                 get_input: vnf_name
1087         port_app_oam_0_port_ip_requirements:
1088         - ip_version: 4
1089           ip_count_required:
1090             is_required: false
1091           floating_ip_count_required:
1092             is_required: false
1093         port_app_internal_0_port_network:
1094         - internal_net_0
1095         port_app_data_0_port_security_groups:
1096         - get_input: data_security_groups
1097         port_app_internal_0_port_replacement_policy:
1098         - AUTO
1099         port_app_internal_0_port_mac_requirements:
1100           mac_count_required:
1101             is_required: false
1102         port_app_oam_0_port_security_groups:
1103         - get_input: oam_security_groups
1104         port_app_internal_0_port_name:
1105         - str_replace:
1106             template: $vnf_name-app_internal_0_port_0
1107             params:
1108               $vnf_name:
1109                 get_input: vnf_name
1110         port_app_data_0_port_replacement_policy:
1111         - AUTO
1112         compute_app_name:
1113         - get_input:
1114           - app_names
1115           - 0
1116         port_app_internal_0_port_security_groups:
1117         - get_input: app_security_groups
1118         compute_app_image_update_policy:
1119         - REBUILD
1120         compute_app_user_data_format:
1121         - RAW
1122         service_template_filter:
1123           substitute_service_template: Nested_appServiceTemplate.yaml
1124           count: 1
1125         index_value:
1126           get_property:
1127           - SELF
1128           - service_template_filter
1129           - index_value
1130       requirements:
1131       - link_app_app_internal_0_port:
1132           capability: tosca.capabilities.network.Linkable
1133           node: internal_net_0
1134           relationship: tosca.relationships.network.LinksTo
1135     internal_net_0:
1136       type: org.openecomp.resource.vl.nodes.heat.network.neutron.Net
1137       properties:
1138         dhcp_enabled: 'True'
1139         network_name:
1140           str_replace:
1141             template: $prefix-internal_net_0
1142             params:
1143               $prefix:
1144                 get_input: vnf_name
1145         subnets:
1146           internal_0_subnet_0:
1147             enable_dhcp: 'True'
1148             name:
1149               str_replace:
1150                 template: $vnf_name-internal_0_subnet_0
1151                 params:
1152                   $vnf_name:
1153                     get_input: vnf_name
1154             cidr:
1155               get_input: internal_subnet_cidr
1156             gateway_ip: ''
1157     abstract_plt_1:
1158       type: org.openecomp.resource.abstract.nodes.plt
1159       directives:
1160       - substitutable
1161       properties:
1162         port_plt_internal_0_port_allowed_address_pairs:
1163         - ip_address:
1164             get_input: internal_subnet_cidr
1165         port_plt_oam_0_port_security_groups:
1166         - get_input: oam_security_groups
1167         compute_plt_config_drive:
1168         - true
1169         vm_flavor_name:
1170           get_input: plt_flavor_name
1171         port_plt_data_0_port_fixed_ips:
1172         - ip_address:
1173             get_input:
1174             - plt_data_v6_ips
1175             - 1
1176         vm_image_name:
1177           get_input: plt_image_name
1178         compute_plt_availability_zone:
1179         - get_input: availability_zone_1
1180         port_plt_oam_0_port_name:
1181         - str_replace:
1182             template: $vnf_name-plt_oam_0_port_0
1183             params:
1184               $vnf_name:
1185                 get_input: vnf_name
1186         port_plt_internal_0_port_security_groups:
1187         - get_input: plt_security_groups
1188         port_plt_oam_0_port_ip_requirements:
1189         - ip_version: 4
1190           ip_count_required:
1191             is_required: false
1192           floating_ip_count_required:
1193             is_required: false
1194         port_plt_data_0_port_mac_requirements:
1195           mac_count_required:
1196             is_required: false
1197         port_plt_data_0_port_allowed_address_pairs:
1198         - ip_address:
1199             get_attribute:
1200             - network:data:vip:m001:m002
1201             - fixed_ips
1202             - 0
1203             - ip_address
1204         port_plt_data_0_port_ip_requirements:
1205         - ip_version: 6
1206           ip_count_required:
1207             is_required: true
1208           floating_ip_count_required:
1209             is_required: false
1210         port_plt_internal_0_port_network:
1211         - internal_net_0
1212         compute_plt_metadata:
1213         - vf_module_id:
1214             get_input: vf_module_id
1215           vm_role: plt
1216           vnf_id:
1217             get_input: vnf_id
1218           vnf_name:
1219             get_input: vnf_name
1220           vf_module_name:
1221             get_input: vf_module_name
1222         port_plt_data_0_port_security_groups:
1223         - get_input: data_security_groups
1224         port_plt_internal_0_port_mac_requirements:
1225           mac_count_required:
1226             is_required: false
1227         port_plt_data_0_port_network_role_tag: data
1228         port_plt_internal_0_port_ip_requirements:
1229         - ip_version: 4
1230           ip_count_required:
1231             is_required: false
1232           floating_ip_count_required:
1233             is_required: true
1234         port_plt_oam_0_port_network_role_tag: oam
1235         port_plt_internal_0_port_name:
1236         - str_replace:
1237             template: $vnf_name-plt_internal_0_port_0
1238             params:
1239               $vnf_name:
1240                 get_input: vnf_name
1241         compute_plt_image_update_policy:
1242         - REBUILD
1243         port_plt_oam_0_port_allowed_address_pairs:
1244         - ip_address:
1245             get_attribute:
1246             - network:oam:vip:m001:m002
1247             - fixed_ips
1248             - 0
1249             - ip_address
1250         port_plt_data_0_port_name:
1251         - str_replace:
1252             template: $vnf_name-plt_data_0_port_0
1253             params:
1254               $vnf_name:
1255                 get_input: vnf_name
1256         compute_plt_user_data_format:
1257         - RAW
1258         port_plt_internal_0_port_replacement_policy:
1259         - AUTO
1260         port_plt_data_0_port_network:
1261         - get_input: data_net_id
1262         port_plt_oam_0_port_network:
1263         - get_input: oam_net_id
1264         port_plt_oam_0_port_replacement_policy:
1265         - AUTO
1266         port_plt_data_0_port_replacement_policy:
1267         - AUTO
1268         port_plt_oam_0_port_mac_requirements:
1269           mac_count_required:
1270             is_required: false
1271         compute_plt_name:
1272         - get_input:
1273           - plt_names
1274           - 1
1275         service_template_filter:
1276           substitute_service_template: Nested_pltServiceTemplate.yaml
1277           count: 1
1278         index_value:
1279           get_property:
1280           - SELF
1281           - service_template_filter
1282           - index_value
1283       requirements:
1284       - link_plt_plt_internal_0_port:
1285           capability: tosca.capabilities.network.Linkable
1286           node: internal_net_0
1287           relationship: tosca.relationships.network.LinksTo
1288     abstract_plt_0:
1289       type: org.openecomp.resource.abstract.nodes.plt
1290       directives:
1291       - substitutable
1292       properties:
1293         port_plt_internal_0_port_allowed_address_pairs:
1294         - ip_address:
1295             get_input: internal_subnet_cidr
1296         port_plt_oam_0_port_security_groups:
1297         - get_input: oam_security_groups
1298         compute_plt_config_drive:
1299         - true
1300         vm_flavor_name:
1301           get_input: plt_flavor_name
1302         port_plt_data_0_port_fixed_ips:
1303         - ip_address:
1304             get_input:
1305             - plt_data_v6_ips
1306             - 0
1307         vm_image_name:
1308           get_input: plt_image_name
1309         compute_plt_availability_zone:
1310         - get_input: availability_zone_0
1311         port_plt_oam_0_port_name:
1312         - str_replace:
1313             template: $vnf_name-plt_oam_0_port_0
1314             params:
1315               $vnf_name:
1316                 get_input: vnf_name
1317         port_plt_internal_0_port_security_groups:
1318         - get_input: plt_security_groups
1319         port_plt_oam_0_port_ip_requirements:
1320         - ip_version: 4
1321           ip_count_required:
1322             is_required: true
1323           floating_ip_count_required:
1324             is_required: false
1325         port_plt_data_0_port_mac_requirements:
1326           mac_count_required:
1327             is_required: false
1328         port_plt_data_0_port_allowed_address_pairs:
1329         - ip_address:
1330             get_attribute:
1331             - network:data:vip:m001:m002
1332             - fixed_ips
1333             - 0
1334             - ip_address
1335         port_plt_data_0_port_ip_requirements:
1336         - ip_version: 6
1337           ip_count_required:
1338             is_required: true
1339           floating_ip_count_required:
1340             is_required: false
1341         port_plt_internal_0_port_network:
1342         - internal_net_0
1343         compute_plt_metadata:
1344         - vf_module_id:
1345             get_input: vf_module_id
1346           vm_role: plt
1347           vnf_id:
1348             get_input: vnf_id
1349           vnf_name:
1350             get_input: vnf_name
1351           vf_module_name:
1352             get_input: vf_module_name
1353         port_plt_data_0_port_security_groups:
1354         - get_input: data_security_groups
1355         port_plt_internal_0_port_mac_requirements:
1356           mac_count_required:
1357             is_required: false
1358         port_plt_data_0_port_network_role_tag: data
1359         port_plt_internal_0_port_ip_requirements:
1360         - ip_version: 4
1361           ip_count_required:
1362             is_required: false
1363           floating_ip_count_required:
1364             is_required: true
1365         port_plt_oam_0_port_fixed_ips:
1366         - ip_address:
1367             get_input:
1368             - plt_oam_ips
1369             - 0
1370         port_plt_oam_0_port_network_role_tag: oam
1371         port_plt_internal_0_port_name:
1372         - str_replace:
1373             template: $vnf_name-plt_internal_0_port_0
1374             params:
1375               $vnf_name:
1376                 get_input: vnf_name
1377         compute_plt_image_update_policy:
1378         - REBUILD
1379         port_plt_oam_0_port_allowed_address_pairs:
1380         - ip_address:
1381             get_attribute:
1382             - network:oam:vip:m001:m002
1383             - fixed_ips
1384             - 0
1385             - ip_address
1386         port_plt_data_0_port_name:
1387         - str_replace:
1388             template: $vnf_name-plt_data_0_port_0
1389             params:
1390               $vnf_name:
1391                 get_input: vnf_name
1392         compute_plt_user_data_format:
1393         - RAW
1394         port_plt_internal_0_port_replacement_policy:
1395         - AUTO
1396         port_plt_data_0_port_network:
1397         - get_input: data_net_id
1398         port_plt_oam_0_port_network:
1399         - get_input: oam_net_id
1400         port_plt_oam_0_port_replacement_policy:
1401         - AUTO
1402         port_plt_data_0_port_replacement_policy:
1403         - AUTO
1404         port_plt_oam_0_port_mac_requirements:
1405           mac_count_required:
1406             is_required: false
1407         compute_plt_name:
1408         - get_input:
1409           - plt_names
1410           - 0
1411         service_template_filter:
1412           substitute_service_template: Nested_pltServiceTemplate.yaml
1413           count: 1
1414         index_value:
1415           get_property:
1416           - SELF
1417           - service_template_filter
1418           - index_value
1419       requirements:
1420       - link_plt_plt_internal_0_port:
1421           capability: tosca.capabilities.network.Linkable
1422           node: internal_net_0
1423           relationship: tosca.relationships.network.LinksTo
1424     network:io:vip:m004:m003:
1425       type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
1426       properties:
1427         replacement_policy: AUTO
1428         ip_requirements:
1429         - ip_version: 4
1430           ip_count_required:
1431             is_required: true
1432           floating_ip_count_required:
1433             is_required: false
1434         security_groups:
1435           get_input: oam_security_groups
1436         fixed_ips:
1437         - ip_address:
1438             get_input: iox_oam_floating_ip
1439         mac_requirements:
1440           mac_count_required:
1441             is_required: false
1442         name:
1443           str_replace:
1444             template: $vnf_name-network_io_vip_m004_m003
1445             params:
1446               $vnf_name:
1447                 get_input: vnf_name
1448         network_role_tag: oam
1449         network:
1450           get_input: oam_net_id
1451   groups:
1452     base_vIECCF_group:
1453       type: org.openecomp.groups.heat.HeatStack
1454       properties:
1455         heat_file: ../Artifacts/base_vIECCF.yml
1456       members:
1457       - network:data:vip:m001:m002
1458       - network:data:vip:m004:m003
1459       - network:oam:vip:m001:m002
1460       - network:system:vip:m001:m002
1461       - internal_net_0
1462       - network:io:vip:m004:m003
1463       - abstract_iox_0
1464       - abstract_iox_1
1465       - abstract_app_0
1466       - abstract_app_1
1467       - abstract_app_2
1468       - abstract_plt_0
1469       - abstract_plt_1
1470     app_server_group_group:
1471       type: tosca.groups.Root
1472       members:
1473       - abstract_app_0
1474       - abstract_app_1
1475       - abstract_app_2
1476     base_vIECCF_volume_group:
1477       type: org.openecomp.groups.heat.HeatStack
1478       properties:
1479         heat_file: ../Artifacts/base_vIECCF_volume.yml
1480         description: Volume creation template for vCCF
1481       members:
1482       - app_volume_1
1483       - app_volume_2
1484       - plt_volume_shared_0
1485       - app_volume_0
1486       - plt_volume_1
1487       - plt_volume_0
1488   outputs:
1489     plt_volume_shared_id_0:
1490       description: ServiceData2 volume for plt VMs
1491       value: plt_volume_shared_0
1492     oam_management_v4_address:
1493       value:
1494         get_input: plt_oam_floating_ip
1495     app_volume_id_0:
1496       description: ServiceData1 volume for first app VM
1497       value: app_volume_0
1498     app_volume_id_1:
1499       description: ServiceData1 volume for second app VM
1500       value: app_volume_1
1501     app_volume_id_2:
1502       description: ServiceData1 volume for third app VM
1503       value: app_volume_2
1504     plt_volume_id_0:
1505       description: ServiceData1 volume for first plt VM
1506       value: plt_volume_0
1507     plt_volume_id_1:
1508       description: ServiceData1 volume for second plt VM
1509       value: plt_volume_1
1510   policies:
1511     app_server_group_policy:
1512       type: org.openecomp.policies.placement.Antilocate
1513       properties:
1514         name:
1515           str_replace:
1516             template: $vnf_name-app_server_group
1517             params:
1518               $vnf_name:
1519                 get_input: vnf_name
1520         container_type: host
1521       targets:
1522       - app_server_group_group