[SDC-29] Amdocs OnBoard 1707 initial commit.
[sdc.git] / openecomp-be / lib / openecomp-sdc-translator-lib / openecomp-sdc-translator-core / src / test / resources / mock / services / heattotosca / subInterfaceToInterfaceConnection / vTSBC_AIC / expectedoutputfiles / perimeta_ha_swmu_bServiceTemplate.yaml
1 tosca_definitions_version: tosca_simple_yaml_1_0_0
2 metadata:
3   template_name: perimeta_ha_swmu_b
4 imports:
5 - CommonGlobalTypes:
6     file: CommonGlobalTypesServiceTemplate.yaml
7 - NovaServerGlobalTypes:
8     file: NovaServerGlobalTypesServiceTemplate.yaml
9 - NeutronPortGlobalTypes:
10     file: NeutronPortGlobalTypesServiceTemplate.yaml
11 - NeutronSecurityRulesGlobalTypes:
12     file: NeutronSecurityRulesGlobalTypesServiceTemplate.yaml
13 - NeutronNetGlobalTypes:
14     file: NeutronNetGlobalTypesServiceTemplate.yaml
15 - CinderVolumeGlobalTypes:
16     file: CinderVolumeGlobalTypesServiceTemplate.yaml
17 - ContrailVirtualNetworkGlobalType:
18     file: ContrailVirtualNetworkGlobalTypeServiceTemplate.yaml
19 - ContrailNetworkRuleGlobalType:
20     file: ContrailNetworkRuleGlobalTypeServiceTemplate.yaml
21 - AbstractSubstituteGlobalTypes:
22     file: AbstractSubstituteGlobalTypesServiceTemplate.yaml
23 - ContrailV2VirtualMachineInterfaceGlobalType:
24     file: ContrailV2VirtualMachineInterfaceGlobalTypeServiceTemplate.yaml
25 - ContrailComputeGlobalTypes:
26     file: ContrailComputeGlobalTypesServiceTemplate.yaml
27 - ContrailPortGlobalTypes:
28     file: ContrailPortGlobalTypesServiceTemplate.yaml
29 - ContrailAbstractSubstituteGlobalTypes:
30     file: ContrailAbstractSubstituteGlobalTypesServiceTemplate.yaml
31 - ContrailV2VirtualNetworkGlobalType:
32     file: ContrailV2VirtualNetworkGlobalTypeServiceTemplate.yaml
33 - ContrailV2NetworkRuleGlobalType:
34     file: ContrailV2NetworkRuleGlobalTypeServiceTemplate.yaml
35 - ContrailV2VLANSubInterfaceGlobalType:
36     file: ContrailV2VLANSubInterfaceGlobalTypeServiceTemplate.yaml
37 - GlobalSubstitutionTypes:
38     file: GlobalSubstitutionTypesServiceTemplate.yaml
39 node_types:
40   org.openecomp.resource.vfc.nodes.heat.vm_b:
41     derived_from: org.openecomp.resource.vfc.nodes.heat.nova.Server
42 topology_template:
43   inputs:
44     vf_module_id:
45       hidden: false
46       immutable: false
47       type: string
48       description: Unique ID for this VF Module instance
49     untrusted_net_id:
50       hidden: false
51       immutable: false
52       type: string
53       description: Service network 2 network UUID
54       constraints: [
55         ]
56     mgmt_net_plen:
57       hidden: false
58       immutable: false
59       type: string
60       description: Prefix length of management network
61     perimeta_config:
62       hidden: false
63       immutable: false
64       type: string
65       description: Orchestration template configuration for instance.
66     vm_a_names:
67       hidden: false
68       immutable: false
69       type: list
70       description: List of names of Perimeta VM A instances, indexed by perimeta_instance_index
71       entry_schema:
72         type: string
73     serv3_vips:
74       hidden: false
75       immutable: false
76       type: list
77       description: List of service network 3 virtual IP addresses for all instances.
78       entry_schema:
79         type: string
80     untrusted_b_ips:
81       hidden: false
82       immutable: false
83       type: list
84       description: List of fixed IP addresses to use as untrusted fixed IPs of B instances.
85       entry_schema:
86         type: string
87     ha_net_id:
88       hidden: false
89       immutable: false
90       type: string
91       description: HA network id
92       constraints: [
93         ]
94     perimeta_param_server_group:
95       hidden: false
96       immutable: false
97       type: string
98       description: Server group to use for these VMs - ignored
99     untrusted_vlan_networks:
100       hidden: false
101       immutable: false
102       type: list
103       description: List of Contrail VLAN networks to use on the untrusted/access network.   The order and number of these must match the VLAN ID list.
104       entry_schema:
105         type: string
106     mgmt_sec_groups:
107       hidden: false
108       immutable: false
109       type: list
110       description: List of security groups to add on management interfaces.
111       entry_schema:
112         type: string
113     perimeta_instance_index:
114       hidden: false
115       immutable: false
116       type: float
117       description: Index of instance among multiple instances.  Use to retrieve correct parameter for this instance when passed all parameters for all instances.
118     untrusted_vlan_ids:
119       hidden: false
120       immutable: false
121       type: list
122       description: List of VLAN IDs to use on the untrusted/access network
123       entry_schema:
124         type: string
125     serv3_net_id:
126       hidden: false
127       immutable: false
128       type: string
129       description: Service network 3 network UUID
130     perimeta_keypair:
131       hidden: false
132       immutable: false
133       type: string
134       description: Keypair to use for accessing this Perimeta instance
135       constraints: [
136         ]
137     mgmt_vips:
138       hidden: false
139       immutable: false
140       type: list
141       description: List of management virtual IP addresses for all instances.
142       entry_schema:
143         type: string
144     untrusted_vips:
145       hidden: false
146       immutable: false
147       type: list
148       description: List of service network 2 virtual IP addresses for all instances.
149       entry_schema:
150         type: string
151     vnf_id:
152       hidden: false
153       immutable: false
154       type: string
155       description: VNF ID of this deployment
156     availability_zone_0:
157       hidden: false
158       immutable: false
159       type: string
160       description: Availability zone for A instances.
161     availability_zone_1:
162       hidden: false
163       immutable: false
164       type: string
165       description: Availability zone for B instances.  May be the same as A instance.
166     serv3_a_ips:
167       hidden: false
168       immutable: false
169       type: list
170       description: List of fixed IP addresses to use as serv3 fixed IPs of A instances.
171       entry_schema:
172         type: string
173     unused_net_id:
174       hidden: false
175       immutable: false
176       type: string
177       description: Service network unused port network UUID
178     ha_a_ips:
179       hidden: false
180       immutable: false
181       type: list
182       description: List of fixed IP addresses to use as HA IPs of A instances.
183       entry_schema:
184         type: string
185     untrusted_v6_vips:
186       hidden: false
187       immutable: false
188       type: list
189       description: List of service network 2 alternate virtual IP addresses for all instances.
190       entry_schema:
191         type: string
192     ha_sec_groups:
193       hidden: false
194       immutable: false
195       type: list
196       description: List of security groups to add on HA interfaces.
197       entry_schema:
198         type: string
199     trusted_a_ips:
200       hidden: false
201       immutable: false
202       type: list
203       description: List of fixed IP addresses to use as trusted fixed IPs of A instances.
204       entry_schema:
205         type: string
206     untrusted_num_vlans:
207       hidden: false
208       immutable: false
209       type: float
210       description: Number of VLANs to connect to on the untrusted/access network
211     system_names:
212       hidden: false
213       immutable: false
214       type: list
215       description: List of system names of Perimeta instances.  Name of a specific instance is indexed by perimeta_instance_index
216       entry_schema:
217         type: string
218     vm_b_names:
219       hidden: false
220       immutable: false
221       type: list
222       description: List of names of Perimeta VM A instances, indexed by perimeta_instance_index
223       entry_schema:
224         type: string
225     trusted_sec_groups:
226       hidden: false
227       immutable: false
228       type: list
229       description: List of security groups to add on trusted interfaces.
230       entry_schema:
231         type: string
232     serv3_sec_groups:
233       hidden: false
234       immutable: false
235       type: list
236       description: List of security groups to add on serv3 interfaces.
237       entry_schema:
238         type: string
239     trusted_vips:
240       hidden: false
241       immutable: false
242       type: list
243       description: List of service network 1 virtual IP addresses for all instances.
244       entry_schema:
245         type: string
246     trusted_net_id:
247       hidden: false
248       immutable: false
249       type: string
250       description: Service network 1 network UUID
251       constraints: [
252         ]
253     serv3_b_ips:
254       hidden: false
255       immutable: false
256       type: list
257       description: List of fixed IP addresses to use as serv3 fixed IPs of B instances.
258       entry_schema:
259         type: string
260     ha_b_ips:
261       hidden: false
262       immutable: false
263       type: list
264       description: List of fixed IP addresses to use as HA IPs of B instances.
265       entry_schema:
266         type: string
267     untrusted_a_v6_ips:
268       hidden: false
269       immutable: false
270       type: list
271       description: List of fixed IP addresses to use as untrusted alternate fixed IPs of A instances.
272       entry_schema:
273         type: string
274     untrusted_b_v6_ips:
275       hidden: false
276       immutable: false
277       type: list
278       description: List of fixed IP addresses to use as untrusted alternate fixed IPs of B instances.
279       entry_schema:
280         type: string
281     mgmt_a_ips:
282       hidden: false
283       immutable: false
284       type: list
285       description: List of fixed IP addresses to use as management IPs of A instances.
286       entry_schema:
287         type: string
288     vm_role:
289       hidden: false
290       immutable: false
291       type: string
292       description: Role of these VMs
293     trusted_b_ips:
294       hidden: false
295       immutable: false
296       type: list
297       description: List of fixed IP addresses to use as trusted fixed IPs of B instances.
298       entry_schema:
299         type: string
300     perimeta_image_name:
301       hidden: false
302       immutable: false
303       type: string
304       description: Glance image for Perimeta instance
305       constraints: [
306         ]
307     mgmt_net_default_gateway:
308       hidden: false
309       immutable: false
310       type: string
311       description: IP address of management default gateway
312     untrusted_a_ips:
313       hidden: false
314       immutable: false
315       type: list
316       description: List of fixed IP addresses to use as untrusted fixed IPs of A instances.
317       entry_schema:
318         type: string
319     untrusted_sec_groups:
320       hidden: false
321       immutable: false
322       type: list
323       description: List of security groups to add on untrusted interfaces.
324       entry_schema:
325         type: string
326     mgmt_net_id:
327       hidden: false
328       immutable: false
329       type: string
330       description: Management network id
331       constraints: [
332         ]
333     perimeta_flavor_name:
334       hidden: false
335       immutable: false
336       type: string
337       description: Flavor to use for creating VM instances
338       constraints: [
339         ]
340     ha_network_plen:
341       hidden: false
342       immutable: false
343       type: float
344       constraints:
345       - in_range:
346         - 0
347         - 32
348     mgmt_b_ips:
349       hidden: false
350       immutable: false
351       type: list
352       description: List of fixed IP addresses to use as management IPs of B instances.
353       entry_schema:
354         type: string
355   node_templates:
356     perimeta_b_ha_0_port:
357       type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
358       properties:
359         security_groups:
360           get_input: ha_sec_groups
361         fixed_ips:
362         - ip_address:
363             get_input:
364             - ha_b_ips
365             - get_input: perimeta_instance_index
366         name:
367           str_replace:
368             template: $VM_ha_port
369             params:
370               $VM:
371                 get_input:
372                 - vm_b_names
373                 - get_input: perimeta_instance_index
374         network:
375           get_input: ha_net_id
376       requirements:
377       - binding:
378           capability: tosca.capabilities.network.Bindable
379           node: perimeta_b_server_0
380           relationship: tosca.relationships.network.BindsTo
381     perimeta_b_serv3_0_port:
382       type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
383       properties:
384         security_groups:
385           get_input: serv3_sec_groups
386         fixed_ips:
387         - ip_address:
388             get_input:
389             - serv3_b_ips
390             - get_input: perimeta_instance_index
391         allowed_address_pairs:
392         - ip_address:
393             get_input:
394             - serv3_vips
395             - get_input: perimeta_instance_index
396         name:
397           str_replace:
398             template: $VM_serv3_port
399             params:
400               $VM:
401                 get_input:
402                 - vm_b_names
403                 - get_input: perimeta_instance_index
404         network:
405           get_input: serv3_net_id
406       requirements:
407       - binding:
408           capability: tosca.capabilities.network.Bindable
409           node: perimeta_b_server_0
410           relationship: tosca.relationships.network.BindsTo
411     perimeta_b_trusted_0_port:
412       type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
413       properties:
414         security_groups:
415           get_input: trusted_sec_groups
416         fixed_ips:
417         - ip_address:
418             get_input:
419             - trusted_b_ips
420             - get_input: perimeta_instance_index
421         allowed_address_pairs:
422         - ip_address:
423             get_input:
424             - trusted_vips
425             - get_input: perimeta_instance_index
426         name:
427           str_replace:
428             template: $VM_trusted_port
429             params:
430               $VM:
431                 get_input:
432                 - vm_b_names
433                 - get_input: perimeta_instance_index
434         network:
435           get_input: trusted_net_id
436       requirements:
437       - binding:
438           capability: tosca.capabilities.network.Bindable
439           node: perimeta_b_server_0
440           relationship: tosca.relationships.network.BindsTo
441     perimeta_b_untrusted_0_port:
442       type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
443       properties:
444         security_groups:
445           get_input: untrusted_sec_groups
446         fixed_ips:
447         - ip_address:
448             get_input:
449             - untrusted_b_ips
450             - get_input: perimeta_instance_index
451         - ip_address:
452             get_input:
453             - untrusted_b_v6_ips
454             - get_input: perimeta_instance_index
455         allowed_address_pairs:
456         - ip_address:
457             get_input:
458             - untrusted_vips
459             - get_input: perimeta_instance_index
460         - ip_address:
461             get_input:
462             - untrusted_v6_vips
463             - get_input: perimeta_instance_index
464         name:
465           str_replace:
466             template: $VM_untrusted_port
467             params:
468               $VM:
469                 get_input:
470                 - vm_b_names
471                 - get_input: perimeta_instance_index
472         network:
473           get_input: untrusted_net_id
474       requirements:
475       - binding:
476           capability: tosca.capabilities.network.Bindable
477           node: perimeta_b_server_0
478           relationship: tosca.relationships.network.BindsTo
479     perimeta_b_untrusted_0_vlan_ports:
480       type: org.openecomp.resource.abstract.nodes.heat.vlan_subinterface_dual
481       directives:
482       - substitutable
483       properties:
484         vlan_ids:
485           get_input: untrusted_vlan_ids
486         service_template_filter:
487           substitute_service_template: vlan_subinterface_dualServiceTemplate.yaml
488           count:
489             get_input: untrusted_num_vlans
490           mandatory: false
491         parent_interface: perimeta_b_untrusted_0_port
492         virtual_ipv6_address:
493           get_input:
494           - untrusted_v6_vips
495           - get_input: perimeta_instance_index
496         virtual_ip_address:
497           get_input:
498           - untrusted_vips
499           - get_input: perimeta_instance_index
500         mac_address:
501           get_attribute:
502           - perimeta_b_untrusted_0_port
503           - mac_address
504         ipv6_address:
505           get_input:
506           - untrusted_b_v6_ips
507           - get_input: perimeta_instance_index
508         subinterface_name_prefix:
509           str_replace:
510             template: $VM_untrusted_port_vlan_
511             params:
512               $VM:
513                 get_input:
514                 - vm_b_names
515                 - get_input: perimeta_instance_index
516         subinterface_instance_index:
517           get_property:
518           - SELF
519           - service_template_filter
520           - index_value
521         ip_address:
522           get_input:
523           - untrusted_b_ips
524           - get_input: perimeta_instance_index
525         vlan_networks:
526           get_input: untrusted_vlan_networks
527       requirements:
528       - binding_contrail_vmi_subinterface:
529           capability: tosca.capabilities.network.Bindable
530           node: perimeta_b_untrusted_0_port
531           relationship: tosca.relationships.network.BindsTo
532     perimeta_b_unused_0_port:
533       type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
534       properties:
535         name:
536           str_replace:
537             template: $VM_unused_port
538             params:
539               $VM:
540                 get_input:
541                 - vm_b_names
542                 - get_input: perimeta_instance_index
543         network:
544           get_input: unused_net_id
545       requirements:
546       - binding:
547           capability: tosca.capabilities.network.Bindable
548           node: perimeta_b_server_0
549           relationship: tosca.relationships.network.BindsTo
550     perimeta_b_mgmt_0_port:
551       type: org.openecomp.resource.cp.nodes.heat.network.neutron.Port
552       properties:
553         security_groups:
554           get_input: mgmt_sec_groups
555         fixed_ips:
556         - ip_address:
557             get_input:
558             - mgmt_b_ips
559             - get_input: perimeta_instance_index
560         allowed_address_pairs:
561         - ip_address:
562             get_input:
563             - mgmt_vips
564             - get_input: perimeta_instance_index
565         name:
566           str_replace:
567             template: $VM_mgmt_port
568             params:
569               $VM:
570                 get_input:
571                 - vm_b_names
572                 - get_input: perimeta_instance_index
573         network:
574           get_input: mgmt_net_id
575       requirements:
576       - binding:
577           capability: tosca.capabilities.network.Bindable
578           node: perimeta_b_server_0
579           relationship: tosca.relationships.network.BindsTo
580     perimeta_b_server_0:
581       type: org.openecomp.resource.vfc.nodes.heat.vm_b
582       properties:
583         flavor:
584           get_input: perimeta_flavor_name
585         key_name:
586           get_input: perimeta_keypair
587         availability_zone:
588           get_input: availability_zone_1
589         image:
590           get_input: perimeta_image_name
591         metadata:
592           vf_module_id:
593             get_input: vf_module_id
594           vm_role:
595             str_replace:
596               template: $ROLE_b
597               params:
598                 $ROLE:
599                   get_input: vm_role
600           vnf_id:
601             get_input: vnf_id
602         config_drive: true
603         user_data_format: RAW
604         name:
605           get_input:
606           - vm_b_names
607           - get_input: perimeta_instance_index
608         scheduler_hints:
609           group:
610             get_input: perimeta_param_server_group
611   groups:
612     perimeta_ha_swmu_b_group:
613       type: org.openecomp.groups.heat.HeatStack
614       properties:
615         heat_file: ../Artifacts/perimeta_ha_swmu_b.yaml
616         description: |
617           HOT template to instantiate a Perimeta 1+1 HA instance with 4vNICs as part of a nested template
618       members:
619       - perimeta_b_ha_0_port
620       - perimeta_b_serv3_0_port
621       - perimeta_b_trusted_0_port
622       - perimeta_b_untrusted_0_port
623       - perimeta_b_untrusted_0_vlan_ports
624       - perimeta_b_unused_0_port
625       - perimeta_b_mgmt_0_port
626       - perimeta_b_server_0
627   outputs:
628     server_group_used:
629       description: Server group used for these VMs
630       value:
631         get_input: perimeta_param_server_group
632   substitution_mappings:
633     node_type: org.openecomp.resource.abstract.nodes.heat.perimeta_ha_swmu_b
634     capabilities:
635       binding_perimeta_b_ha_0_port:
636       - perimeta_b_ha_0_port
637       - binding
638       binding_perimeta_b_trusted_0_port:
639       - perimeta_b_trusted_0_port
640       - binding
641       binding_perimeta_b_untrusted_0_port:
642       - perimeta_b_untrusted_0_port
643       - binding
644       os_perimeta_b_server_0:
645       - perimeta_b_server_0
646       - os
647       binding_perimeta_b_unused_0_port:
648       - perimeta_b_unused_0_port
649       - binding
650       binding_perimeta_b_mgmt_0_port:
651       - perimeta_b_mgmt_0_port
652       - binding
653       attachment_perimeta_b_unused_0_port:
654       - perimeta_b_unused_0_port
655       - attachment
656       binding_perimeta_b_server_0:
657       - perimeta_b_server_0
658       - binding
659       attachment_perimeta_b_serv3_0_port:
660       - perimeta_b_serv3_0_port
661       - attachment
662       scalable_perimeta_b_server_0:
663       - perimeta_b_server_0
664       - scalable
665       attachment_perimeta_b_ha_0_port:
666       - perimeta_b_ha_0_port
667       - attachment
668       attachment_perimeta_b_trusted_0_port:
669       - perimeta_b_trusted_0_port
670       - attachment
671       endpoint_perimeta_b_server_0:
672       - perimeta_b_server_0
673       - endpoint
674       binding_perimeta_b_serv3_0_port:
675       - perimeta_b_serv3_0_port
676       - binding
677       attachment_perimeta_b_untrusted_0_port:
678       - perimeta_b_untrusted_0_port
679       - attachment
680       host_perimeta_b_server_0:
681       - perimeta_b_server_0
682       - host
683       attachment_perimeta_b_mgmt_0_port:
684       - perimeta_b_mgmt_0_port
685       - attachment
686     requirements:
687       link_perimeta_b_untrusted_0_port:
688       - perimeta_b_untrusted_0_port
689       - link
690       link_perimeta_b_serv3_0_port:
691       - perimeta_b_serv3_0_port
692       - link
693       link_perimeta_b_ha_0_port:
694       - perimeta_b_ha_0_port
695       - link
696       link_contrail_vmi_subinterface_perimeta_b_untrusted_0_vlan_ports:
697       - perimeta_b_untrusted_0_vlan_ports
698       - link_contrail_vmi_subinterface
699       local_storage_perimeta_b_server_0:
700       - perimeta_b_server_0
701       - local_storage
702       link_perimeta_b_unused_0_port:
703       - perimeta_b_unused_0_port
704       - link
705       link_perimeta_b_mgmt_0_port:
706       - perimeta_b_mgmt_0_port
707       - link
708       link_perimeta_b_trusted_0_port:
709       - perimeta_b_trusted_0_port
710       - link