[SDC-29] rebase continue work to align source
[sdc.git] / test-apis-ci / src / test / resources / CI / tests / HeatDeploymentArtifacts / asc_heat 0 2.yaml
1 heat_template_version: 2013-05-23
2 #################################
3 #
4 #  Changes in v0.2:
5 #  - Unique availability zone for each VM
6 #  - LAN8 and SLAN networks removed according to latest Prod/Type I diagram
7 #  - 2 DB VMs added
8 #  - Images corrected
9 #  - VM start-up order: SMP->DB->BE->FE (no error handling yet)
10 #  - Provisioning scripts placeholders
11 #
12 #################################
13
14 description: ASC Template
15
16 parameters:
17 #  availability_zone_smp0:
18 #    type: string
19 #    default: nova
20 #  availability_zone_smp1:
21 #    type: string
22 #    default: nova
23 #  availability_zone_fe0:
24 #    type: string
25 #    default: nova
26 #  availability_zone_fe1:
27 #    type: string
28 #    default: nova
29 #  availability_zone_db0:
30 #    type: string
31 #    default: nova
32 #  availability_zone_db1:
33 #    type: string
34 #    default: nova
35 #  availability_zone_be0:
36 #    type: string
37 #    default: nova
38 #  availability_zone_be1:
39 #    type: string
40 #    default: nova
41 #  availability_zone_be2:
42 #    type: string
43 #    default: nova
44 #  availability_zone_be3:
45 #    type: string
46 #    default: nova
47 #  availability_zone_be4:
48 #    type: string
49 #    default: nova
50
51   vnf_name:
52     type: string
53     description: Unique name for this VNF instance
54     default: This_is_the_SCP_name
55   vnf_id:
56     type: string
57     description: Unique ID for this VNF instance
58     default: This_is_ths_SCP_id
59
60   flavor_scp_be_id:
61     type: string
62     description: flavor type
63     default: a1.Small
64   flavor_scp_fe_id:
65     type: string
66     description: flavor type
67     default: a1.Small
68   flavor_smp_id:
69     type: string
70     description: flavor type
71     default: a1.Small
72   flavor_db_id:
73     type: string
74     description: flavor type
75     default: a1.Small
76   image_scp_be_id:
77     type: string
78     description: Image use to boot a server
79     default: asc_base_image_be
80   image_scp_fe_id:
81     type: string
82     description: Image use to boot a server
83     default: asc_base_image_fe    
84   image_smp_id:
85     type: string
86     description: Image use to boot a server
87     default: asc_base_image_smp
88   image_db_id:
89     type: string
90     description: Image use to boot a server
91     default: asc_base_image_db
92
93   int_vscp_fe_cluster_net_id:
94     type: string
95     description: LAN2 FE Cluster/KA
96   int_vscp_fe_cluster_cidr:
97     type: string
98     description: Private Network2 Address (CIDR notation)
99   int_vscp_cluster_net_id:
100     type: string
101     description: LAN3 Cluster
102   int_vscp_cluster_cidr:
103     type: string
104     description: Private Network3 Address (CIDR notation)
105   int_vscp_db_network_net_id:
106     type: string
107     description: LAN4 DB
108   int_vscp_db_network_cidr:
109     type: string
110     description: Private Network4 Address (CIDR notation)
111   SIGNET_vrf_A1_direct_net_id:
112     type: string
113     description: Network name for SIGTRAN_A
114   SIGNET_vrf_B1_direct_net_id:
115     type: string
116     description: Network name for SIGTRAN_B
117   Cricket_OCS_protected_net_id:
118     type: string
119     description: Network name for CRICKET_OCS
120   OAM_direct_net_id:
121     type: string
122     description: Network name for OAM
123   be0_Cricket_OCS_protected_ips:
124     type: string
125     label: be0 port 5 OAM ip address
126     description: be0 port 5 OAM ip address
127   be1_Cricket_OCS_protected_ips:
128     type: string
129     label: be1 port 5 OAM ip address
130     description: be1 port 5 OAM ip address
131   be2_Cricket_OCS_protected_ips:
132     type: string
133     label: be2 port 5 OAM ip address
134     description: be2 port 5 OAM ip address
135   be3_Cricket_OCS_protected_ips:
136     type: string
137     label: be3 port 5 OAM ip address
138     description: be3 port 5 OAM ip address
139   be4_Cricket_OCS_protected_ips:
140     type: string
141     label: be4 port 5 OAM ip address
142     description: be4 port 5 OAM ip address
143   be0_OAM_direct_ips:
144     type: string
145     label: be0 port 7 OAM ip address
146     description: be0 port 7 OAM ip address
147   be1_OAM_direct_ips:
148     type: string
149     label: be1 port 7 OAM ip address
150     description: be1 port 7 OAM ip address
151   be2_OAM_direct_ips:
152     type: string
153     label: be2 port 7 OAM ip address
154     description: be2 port 7 OAM ip address
155   be3_OAM_direct_ips:
156     type: string
157     label: be3 port 7 OAM ip address
158     description: be3 port 7 OAM ip address
159   be4_OAM_direct_ips:
160     type: string
161     label: be4 port 7 OAM ip address
162     description: be4 port 7 OAM ip address
163   fe0_SIGNET_vrf_A1_direct_ips:
164     type: string
165     label: fe0 port 0 SIGTRAN ip address
166     description: fe0 port 0 SIGTRAN ip address
167   fe0_OAM_direct_ips:
168     type: string
169     label: fe0 port 7 OAM ip address
170     description: fe0 port 7 OAM ip address
171   fe1_SIGNET_vrf_B1_direct_ips:
172     type: string
173     label: fe1 port 1 SIGTRAN ip address
174     description: fe1 port 1 SIGTRAN ip address
175   fe1_OAM_direct_ips:
176     type: string
177     label: fe1 port 7 OAM ip address
178     description: fe1 port 7 OAM ip address
179   smp0_OAM_direct_ips:
180     type: string
181     label: smp0 port 7 OAM ip address
182     description: smp0 port 7 OAM ip address
183   smp1_OAM_direct_ips:
184     type: string
185     label: smp1 port 7 OAM ip address
186     description: smp1 port 7 OAM ip address
187   db0_OAM_direct_ips:
188     type: string
189     label: db0 port 7 OAM ip address
190     description: smp0 port 7 OAM ip address
191   db1_OAM_direct_ips:
192     type: string
193     label: smp1 port 7 OAM ip address
194     description: db1 port 7 OAM ip address
195   vm_scp_be0_name:
196     type: string
197     default: vSCP_BE0
198     description: name of VM
199   vm_scp_be1_name:
200     type: string
201     default: vSCP_BE1
202     description: name of VM    
203   vm_scp_be2_name:
204     type: string
205     default: vSCP_BE2
206     description: name of VM
207   vm_scp_be3_name:
208     type: string
209     default: vSCP_BE3
210     description: name of VM
211   vm_scp_be4_name:
212     type: string
213     default: vSCP_BE4
214     description: name of VM
215   vm_scp_fe0_name:
216     type: string
217     default: vSCP_FE0
218     description: name of VM
219   vm_scp_fe1_name:
220     type: string
221     default: vSCP_FE1
222     description: name of VM
223   vm_smp0_name:
224     type: string
225     default: vSMP0
226     description: name of VM
227   vm_smp1_name:
228     type: string
229     default: vSMP1
230     description: name of VM
231   vm_db0_name:
232     type: string
233     default: vDB0
234     description: name of VM
235   vm_db1_name:
236     type: string
237     default: vDB1
238     description: name of VM
239
240 resources:
241 #  scp_be_wait_condition:
242 #    type: OS::Heat::WaitCondition
243 #    properties:
244 #      handle: { get_resource: scp_be_wait_handle }
245 #      count: 5
246 #      timeout: 300
247 #  scp_be_wait_handle:
248 #    type: OS::Heat::WaitConditionHandle
249 #
250 #  scp_fe_wait_condition:
251 #    type: OS::Heat::WaitCondition
252 #    properties:
253 #      handle: { get_resource: scp_fe_wait_handle }
254 #      count: 2
255 #      timeout: 300
256 #  scp_fe_wait_handle:
257 #    type: OS::Heat::WaitConditionHandle
258 #
259 #  smp_wait_condition:
260 #    type: OS::Heat::WaitCondition
261 #    properties:
262 #      handle: { get_resource: smp_wait_handle }
263 #      count: 2
264 #      timeout: 300
265 #  smp_wait_handle:
266 #    type: OS::Heat::WaitConditionHandle
267 #
268 #  db_wait_condition:
269 #    type: OS::Heat::WaitCondition
270 #    properties:
271 #      handle: { get_resource: db_wait_handle }
272 #      count: 2
273 #      timeout: 300
274 #  db_wait_handle:
275 #    type: OS::Heat::WaitConditionHandle
276
277   FE_Affinity:
278     type: OS::Nova::ServerGroup
279     properties:
280       policies: ["anti-affinity"] 
281   BE_Affinity:
282     type: OS::Nova::ServerGroup
283     properties:
284       policies: ["anti-affinity"]
285   SMP_Affinity:
286     type: OS::Nova::ServerGroup
287     properties:
288       policies: ["anti-affinity"]
289   DB_Affinity:
290     type: OS::Nova::ServerGroup
291     properties:
292       policies: ["anti-affinity"]
293       
294   FE_Clustering_KA:
295     type: OS::Contrail::VirtualNetwork
296     properties:
297       name: { get_param: int_vscp_fe_cluster_net_id }
298
299   FE_Clustering_subnet:
300     type: OS::Neutron::Subnet
301     properties:
302       network_id: { get_resource: FE_Clustering_KA }
303       cidr: { get_param: int_vscp_fe_cluster_cidr }
304
305   Clustering_Network:
306     type: OS::Contrail::VirtualNetwork
307     properties:
308       name: { get_param: int_vscp_cluster_net_id }
309
310   Clustering_Network_subnet:
311     type: OS::Neutron::Subnet
312     properties:
313       network_id: { get_resource: Clustering_Network }
314       cidr: { get_param: int_vscp_cluster_cidr }
315
316   DB_Network:
317     type: OS::Contrail::VirtualNetwork
318     properties:
319       name: { get_param: int_vscp_db_network_net_id }
320
321   DB_Network_subnet:
322     type: OS::Neutron::Subnet
323     properties:
324       network_id: { get_resource: DB_Network }
325       cidr: { get_param: int_vscp_db_network_cidr }
326
327   server_scp_be0:
328     type: OS::Nova::Server
329 #    depends on: db_wait_condition
330     properties:
331       name: { get_param: vm_scp_be0_name }
332       image: { get_param: image_scp_be_id }
333 #      availability_zone: { get_param: availability_zone_be0 }
334       flavor: { get_param: flavor_scp_be_id }
335       scheduler_hints: { group: { get_resource: BE_Affinity } }
336       networks:
337       - port: { get_resource: be0_port_3 }
338       - port: { get_resource: be0_port_4 }
339       - port: { get_resource: be0_port_5 }
340       - port: { get_resource: be0_port_7 }
341       metadata:
342         vnf_id: { get_param: vnf_id }
343       user_data:
344         str_replace:
345           template: |
346             #!/bin/bash
347             #todo: provision $vm_name
348             wc_notify --data-binary '{"status": "SUCCESS"}'
349           params:
350             $vm_name: {get_param: vm_scp_be0_name}
351 #            wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] }
352
353   be0_port_3:
354     type: OS::Neutron::Port
355     properties:
356       network_id: { get_resource: Clustering_Network }
357
358   be0_port_4:
359     type: OS::Neutron::Port
360     properties:
361       network_id: { get_resource: DB_Network }
362
363   be0_port_5:
364     type: OS::Neutron::Port
365     properties:
366       network: { get_param: Cricket_OCS_protected_net_id }
367       fixed_ips: [{"ip_address": {get_param: be0_Cricket_OCS_protected_ips}}]
368
369   be0_port_7:
370     type: OS::Neutron::Port
371     properties:
372       network: { get_param: OAM_direct_net_id }
373       fixed_ips: [{"ip_address": {get_param: be0_OAM_direct_ips}}]
374
375   server_scp_be1:
376     type: OS::Nova::Server
377 #    depends on: db_wait_condition
378     properties:
379       name: { get_param: vm_scp_be1_name }
380       image: { get_param: image_scp_be_id }
381 #      availability_zone: { get_param: availability_zone_be1 }
382       flavor: { get_param: flavor_scp_be_id }
383       scheduler_hints: { group: { get_resource: BE_Affinity } }
384       networks:
385       - port: { get_resource: be1_port_3 }
386       - port: { get_resource: be1_port_4 }
387       - port: { get_resource: be1_port_5 }
388       - port: { get_resource: be1_port_7 }
389       metadata:
390         vnf_id: { get_param: vnf_id }
391       user_data:
392         str_replace:
393           template: |
394             #!/bin/bash
395             #todo: provision $vm_name
396             wc_notify --data-binary '{"status": "SUCCESS"}'
397           params:
398             $vm_name: {get_param: vm_scp_be1_name}
399 #            wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] }
400
401   be1_port_3:
402     type: OS::Neutron::Port
403     properties:
404       network_id: { get_resource: Clustering_Network }
405
406   be1_port_4:
407     type: OS::Neutron::Port
408     properties:
409       network_id: { get_resource: DB_Network }
410
411   be1_port_5:
412     type: OS::Neutron::Port
413     properties:
414       network: { get_param: Cricket_OCS_protected_net_id }
415       fixed_ips: [{"ip_address": {get_param: be1_Cricket_OCS_protected_ips}}]
416
417   be1_port_7:
418     type: OS::Neutron::Port
419     properties:
420       network: { get_param: OAM_direct_net_id }
421       fixed_ips: [{"ip_address": {get_param: be1_OAM_direct_ips}}]
422
423   server_scp_be2:
424     type: OS::Nova::Server
425 #    depends on: db_wait_condition
426     properties:
427       name: { get_param: vm_scp_be2_name }
428       image: { get_param: image_scp_be_id }
429 #      availability_zone: { get_param: availability_zone_be2 }
430       flavor: { get_param: flavor_scp_be_id }
431       scheduler_hints: { group: { get_resource: BE_Affinity } }
432       networks:
433       - port: { get_resource: be2_port_3 }
434       - port: { get_resource: be2_port_4 }
435       - port: { get_resource: be2_port_5 }
436       - port: { get_resource: be2_port_7 }
437       metadata:
438         vnf_id: { get_param: vnf_id }
439       user_data:
440         str_replace:
441           template: |
442             #!/bin/bash
443             #todo: provision $vm_name
444             wc_notify --data-binary '{"status": "SUCCESS"}'
445           params:
446             $vm_name: {get_param: vm_scp_be2_name}
447 #            wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] }
448
449   be2_port_3:
450     type: OS::Neutron::Port
451     properties:
452       network_id: { get_resource: Clustering_Network }
453
454   be2_port_4:
455     type: OS::Neutron::Port
456     properties:
457       network_id: { get_resource: DB_Network }
458
459   be2_port_5:
460     type: OS::Neutron::Port
461     properties:
462       network: { get_param: Cricket_OCS_protected_net_id }
463       fixed_ips: [{"ip_address": {get_param: be2_Cricket_OCS_protected_ips}}]
464
465   be2_port_7:
466     type: OS::Neutron::Port
467     properties:
468       network: { get_param: OAM_direct_net_id }
469       fixed_ips: [{"ip_address": {get_param: be2_OAM_direct_ips}}]
470
471   server_scp_be3:
472     type: OS::Nova::Server
473 #    depends on: db_wait_condition
474     properties:
475       name: { get_param: vm_scp_be3_name }
476       image: { get_param: image_scp_be_id }
477 #      availability_zone: { get_param: availability_zone_be3 }
478       flavor: { get_param: flavor_scp_be_id }
479       scheduler_hints: { group: { get_resource: BE_Affinity } }
480       networks:
481       - port: { get_resource: be3_port_3 }
482       - port: { get_resource: be3_port_4 }
483       - port: { get_resource: be3_port_5 }
484       - port: { get_resource: be3_port_7 }
485       metadata:
486         vnf_id: { get_param: vnf_id }
487       user_data:
488         str_replace:
489           template: |
490             #!/bin/bash
491             #todo: provision $vm_name
492             wc_notify --data-binary '{"status": "SUCCESS"}'
493           params:
494             $vm_name: {get_param: vm_scp_be3_name}
495 #            wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] }
496
497   be3_port_3:
498     type: OS::Neutron::Port
499     properties:
500       network_id: { get_resource: Clustering_Network }
501
502   be3_port_4:
503     type: OS::Neutron::Port
504     properties:
505       network_id: { get_resource: DB_Network }
506
507   be3_port_5:
508     type: OS::Neutron::Port
509     properties:
510       network: { get_param: Cricket_OCS_protected_net_id }
511       fixed_ips: [{"ip_address": {get_param: be3_Cricket_OCS_protected_ips}}]
512
513   be3_port_7:
514     type: OS::Neutron::Port
515     properties:
516       network: { get_param: OAM_direct_net_id }
517       fixed_ips: [{"ip_address": {get_param: be3_OAM_direct_ips}}]
518
519   server_scp_be4:
520     type: OS::Nova::Server
521 #    depends on: db_wait_condition
522     properties:
523       name: { get_param: vm_scp_be4_name }
524       image: { get_param: image_scp_be_id }
525 #      availability_zone: { get_param: availability_zone_be4 }
526       flavor: { get_param: flavor_scp_be_id }
527       scheduler_hints: { group: { get_resource: BE_Affinity } }
528       networks:
529       - port: { get_resource: be4_port_3 }
530       - port: { get_resource: be4_port_4 }
531       - port: { get_resource: be4_port_5 }
532       - port: { get_resource: be4_port_7 }
533       metadata:
534         vnf_id: { get_param: vnf_id }
535       user_data:
536         str_replace:
537           template: |
538             #!/bin/bash
539             #todo: provision $vm_name
540             wc_notify --data-binary '{"status": "SUCCESS"}'
541           params:
542             $vm_name: {get_param: vm_scp_be4_name}
543 #            wc_notify: { get_attr: ['scp_be_wait_handle', 'curl_cli'] }
544
545   be4_port_3:
546     type: OS::Neutron::Port
547     properties:
548       network_id: { get_resource: Clustering_Network }
549
550   be4_port_4:
551     type: OS::Neutron::Port
552     properties:
553       network_id: { get_resource: DB_Network }
554
555   be4_port_5:
556     type: OS::Neutron::Port
557     properties:
558       network: { get_param: Cricket_OCS_protected_net_id }
559       fixed_ips: [{"ip_address": {get_param: be4_Cricket_OCS_protected_ips}}]
560
561   be4_port_7:
562     type: OS::Neutron::Port
563     properties:
564       network: { get_param: OAM_direct_net_id }
565       fixed_ips: [{"ip_address": {get_param: be4_OAM_direct_ips}}]
566
567   server_scp_fe0:
568     type: OS::Nova::Server
569 #    depends on: scp_be_wait_condition
570     properties:
571       name: { get_param: vm_scp_fe0_name }
572       image: { get_param: image_scp_fe_id }
573 #      availability_zone: { get_param: availability_zone_fe0 }
574       flavor: { get_param: flavor_scp_fe_id }
575       scheduler_hints: { group: { get_resource: FE_Affinity } }
576       networks:
577       - port: { get_resource: fe0_port_0 }
578       - port: { get_resource: fe0_port_2 }
579       - port: { get_resource: fe0_port_3 }
580       - port: { get_resource: fe0_port_7 }
581       metadata:
582         vnf_id: { get_param: vnf_id }
583       user_data:
584         str_replace:
585           template: |
586             #!/bin/bash
587             #todo: provision $vm_name
588             wc_notify --data-binary '{"status": "SUCCESS"}'
589           params:
590             $vm_name: {get_param: vm_scp_fe0_name}
591 #            wc_notify: { get_attr: ['scp_fe_wait_handle', 'curl_cli'] }
592
593   fe0_port_0:
594     type: OS::Neutron::Port
595     properties:
596       network: { get_param: SIGNET_vrf_A1_direct_net_id }
597       fixed_ips: [{"ip_address": {get_param: fe0_SIGNET_vrf_A1_direct_ips}}]
598
599   fe0_port_2:
600     type: OS::Neutron::Port
601     properties:
602       network_id: { get_resource: FE_Clustering_KA }
603
604   fe0_port_3:
605     type: OS::Neutron::Port
606     properties:
607       network_id: { get_resource: Clustering_Network }
608
609   fe0_port_7:
610     type: OS::Neutron::Port
611     properties:
612       network: { get_param: OAM_direct_net_id }
613       fixed_ips: [{"ip_address": {get_param: fe0_OAM_direct_ips}}]
614
615   server_scp_fe1:
616     type: OS::Nova::Server
617 #    depends on: scp_be_wait_condition
618     properties:
619       name: { get_param: vm_scp_fe1_name }
620       image: { get_param: image_scp_fe_id }
621 #      availability_zone: { get_param: availability_zone_fe1 }
622       flavor: { get_param: flavor_scp_fe_id }
623       scheduler_hints: { group: { get_resource: FE_Affinity } }
624       networks:
625       - port: { get_resource: fe1_port_1 }
626       - port: { get_resource: fe1_port_2 }
627       - port: { get_resource: fe1_port_3 }
628       - port: { get_resource: fe1_port_7 }
629       metadata:
630         vnf_id: { get_param: vnf_id }
631       user_data:
632         str_replace:
633           template: |
634             #!/bin/bash
635             #todo: provision $vm_name
636             wc_notify --data-binary '{"status": "SUCCESS"}'
637           params:
638             $vm_name: {get_param: vm_scp_fe1_name}
639 #            wc_notify: { get_attr: ['scp_fe_wait_handle', 'curl_cli'] }
640
641   fe1_port_1:
642     type: OS::Neutron::Port
643     properties:
644       network: { get_param: SIGNET_vrf_B1_direct_net_id }
645       fixed_ips: [{"ip_address": {get_param: fe1_SIGNET_vrf_B1_direct_ips}}]
646
647   fe1_port_2:
648     type: OS::Neutron::Port
649     properties:
650       network_id: { get_resource: FE_Clustering_KA }
651
652   fe1_port_3:
653     type: OS::Neutron::Port
654     properties:
655       network_id: { get_resource: Clustering_Network }
656
657   fe1_port_7:
658     type: OS::Neutron::Port
659     properties:
660       network: { get_param: OAM_direct_net_id }
661       fixed_ips: [{"ip_address": {get_param: fe1_OAM_direct_ips}}]
662
663   server_smp0:
664     type: OS::Nova::Server
665     properties:
666       name: { get_param: vm_smp0_name }
667       image: { get_param: image_smp_id }
668 #      availability_zone: { get_param: availability_zone_smp0 }
669       flavor: { get_param: flavor_smp_id }
670       scheduler_hints: { group: { get_resource: SMP_Affinity } }
671       networks:
672       - port: { get_resource: smp0_port_7 }
673       metadata:
674         vnf_id: { get_param: vnf_id }
675       user_data:
676         str_replace:
677           template: |
678             #!/bin/bash
679             #todo: provision $vm_name
680             wc_notify --data-binary '{"status": "SUCCESS"}'
681           params:
682             $vm_name: {get_param: vm_smp0_name}
683 #            wc_notify: { get_attr: ['smp_wait_handle', 'curl_cli'] }
684
685   smp0_port_7:
686     type: OS::Neutron::Port
687     properties:
688       network: { get_param: OAM_direct_net_id }
689       fixed_ips: [{"ip_address": {get_param: smp0_OAM_direct_ips}}]
690
691   server_smp1:
692     type: OS::Nova::Server
693     properties:
694       name: { get_param: vm_smp1_name }
695       image: { get_param: image_smp_id }
696 #      availability_zone: { get_param: availability_zone_smp1 }
697       flavor: { get_param: flavor_smp_id }
698       scheduler_hints: { group: { get_resource: SMP_Affinity } }
699       networks:
700       - port: { get_resource: smp1_port_7 }
701       metadata:
702         vnf_id: { get_param: vnf_id }
703       user_data:
704         str_replace:
705           template: |
706             #!/bin/bash
707             #todo: provision $vm_name
708             wc_notify --data-binary '{"status": "SUCCESS"}'
709           params:
710             $vm_name: {get_param: vm_smp1_name}
711 #            wc_notify: { get_attr: ['smp_wait_handle', 'curl_cli'] }
712
713   smp1_port_7:
714     type: OS::Neutron::Port
715     properties:
716       network: { get_param: OAM_direct_net_id }
717       fixed_ips: [{"ip_address": {get_param: smp1_OAM_direct_ips}}]
718
719   server_db0:
720     type: OS::Nova::Server
721 #    depends_on: smp_wait_condition
722     properties:
723       name: { get_param: vm_db0_name }
724       image: { get_param: image_db_id }
725 #      availability_zone: { get_param: availability_zone_db0 }
726       flavor: { get_param: flavor_db_id }
727       scheduler_hints: { group: { get_resource: DB_Affinity } }
728       networks:
729       - port: { get_resource: db0_port_4 }
730       - port: { get_resource: db0_port_7 }
731       metadata:
732         vnf_id: { get_param: vnf_id }
733       user_data:
734         str_replace:
735           template: |
736             #!/bin/bash
737             #todo: provision $vm_name
738             wc_notify --data-binary '{"status": "SUCCESS"}'
739           params:
740             $vm_name: {get_param: vm_db0_name}
741 #            wc_notify: { get_attr: ['db_wait_handle', 'curl_cli'] }
742
743   db0_port_4:
744     type: OS::Neutron::Port
745     properties:
746       network_id: { get_resource: DB_Network }
747
748   db0_port_7:
749     type: OS::Neutron::Port
750     properties:
751       network: { get_param: OAM_direct_net_id }
752       fixed_ips: [{"ip_address": {get_param: db0_OAM_direct_ips}}]
753
754   server_db1:
755     type: OS::Nova::Server
756 #    depends_on: smp_wait_condition
757     properties:
758       name: { get_param: vm_db1_name }
759       image: { get_param: image_db_id }
760 #      availability_zone: { get_param: availability_zone_db1 }
761       flavor: { get_param: flavor_db_id }
762       scheduler_hints: { group: { get_resource: DB_Affinity } }
763       networks:
764       - port: { get_resource: db1_port_4 }
765       - port: { get_resource: db1_port_7 }
766       metadata:
767         vnf_id: { get_param: vnf_id }
768       user_data:
769         str_replace:
770           template: |
771             #!/bin/bash
772             #todo: provision $vm_name
773             wc_notify --data-binary '{"status": "SUCCESS"}'
774           params:
775             $vm_name: {get_param: vm_db1_name}
776 #            wc_notify: { get_attr: ['db_wait_handle', 'curl_cli'] }
777
778   db1_port_4:
779     type: OS::Neutron::Port
780     properties:
781       network_id: { get_resource: DB_Network }
782
783   db1_port_7:
784     type: OS::Neutron::Port
785     properties:
786       network: { get_param: OAM_direct_net_id }
787       fixed_ips: [{"ip_address": {get_param: db1_OAM_direct_ips}}]