[UCA-10] Fix issue with MTU size in dockers
[demo.git] / heat / OpenECOMP / onap_openstack_float.yaml
1 heat_template_version: 2015-10-15
2
3 description: Heat template to install ONAP components
4
5 ##############
6 #            #
7 # PARAMETERS #
8 #            #
9 ##############
10
11 parameters:
12
13   ##############################################
14   #                                            #
15   # Parameters used across all ONAP components #
16   #                                            #
17   ##############################################
18   
19   public_net_id:
20     type: string
21     description: Public network for floating IP address allocation
22
23   ubuntu_1404_image:
24     type: string
25     description: Name of the Ubuntu 14.04 image
26
27   ubuntu_1604_image:
28     type: string
29     description: Name of the Ubuntu 16.04 image
30
31   flavor_small:
32     type: string
33     description: Name of the Small Flavor supported by the cloud provider
34
35   flavor_medium:
36     type: string
37     description: Name of the Medium Flavor supported by the cloud provider
38
39   flavor_large:
40     type: string
41     description: Name of the Large Flavor supported by the cloud provider
42
43   flavor_xlarge:
44     type: string
45     description: Name of the Extra Large Flavor supported by the cloud provider
46
47   vm_base_name:
48     type: string
49     description: Base name of ONAP VMs
50
51   key_name:
52     type: string
53     description: Public/Private key pair name
54
55   pub_key:
56     type: string
57     description: Public key to be installed on the compute instance
58
59   nexus_repo:
60     type: string
61     description: Complete URL for the Nexus repository.
62
63   nexus_docker_repo:
64     type: string
65     description: Complete URL for the Nexus repository for docker images.
66
67   nexus_username:
68     type: string
69     description: Nexus Repository username
70
71   nexus_password:
72     type: string
73     description: Nexus Repository Password
74
75   artifacts_version:
76     type: string
77     description: Artifacts version of ONAP components
78
79   docker_version:
80     type: string
81     label: Version number of ONAP docker images
82
83   gerrit_branch:
84     type: string
85     label: Gerrit code branch
86     description: Gerrit branch where to download the code from
87
88   dmaap_topic:
89     type: string
90     description: DMaaP Topic name
91
92   openstack_tenant_id:
93     type: string
94     description: Openstack tenant ID
95
96   openstack_username:
97     type: string
98     description: Openstack username
99
100   openstack_auth_method:
101     type: string
102     description: Openstack authentication method (password VS. api-key)
103
104   openstack_api_key:
105     type: string
106     description: Openstack API Key
107
108   horizon_url:
109     type: string
110     description: URL of Openstack Horizon
111
112   keystone_url:
113     type: string
114     description: URL of Openstack Keystone
115
116   cloud_env:
117     type: string
118     description: Cloud Provider Name
119
120   ######################
121   #                    #
122   # Network parameters #
123   #                    #
124   ######################
125
126   external_dns:
127     type: comma_delimited_list
128     description: External DNS for OAM ONAP network
129
130   ### Floating IP addresses ###
131   aai_float_ip:
132     type: string
133     description: AAI Floating IP Address
134
135   appc_float_ip:
136     type: string
137     description: APP-C Floating IP Address
138
139   dcae_float_ip:
140     type: string
141     description: DCAE Floating IP Address
142
143   dcae_coll_float_ip:
144     type: string
145     description: DCAE Collector Floating IP Address
146
147   dcae_db_float_ip:
148     type: string
149     description: DCAE Collector Database Floating IP Address
150
151   dcae_hdp1_float_ip:
152     type: string
153     description: Hadoop VM1 Floating IP Address
154
155   dcae_hdp2_float_ip:
156     type: string
157     description: Hadoop VM2 Floating IP Address
158
159   dcae_hdp3_float_ip:
160     type: string
161     description: Hadoop VM3 Floating IP Address
162
163   dns_float_ip:
164     type: string
165     description: DNS Floating IP Address
166
167   mso_float_ip:
168     type: string
169     description: MSO Floating IP Address
170
171   mr_float_ip:
172     type: string
173     description: Message Router Floating IP Address
174
175   policy_float_ip:
176     type: string
177     description: Policy Engine Floating IP Address
178
179   portal_float_ip:
180     type: string
181     description: Portal Floating IP Address
182
183   robot_float_ip:
184     type: string
185     description: Robot Framework Floating IP Address
186
187   sdc_float_ip:
188     type: string
189     description: SDC Floating IP Address
190
191   sdnc_float_ip:
192     type: string
193     description: SDN-C Floating IP Address
194
195   vid_float_ip:
196     type: string
197     description: VID Floating IP Address
198
199   ### Private IP addresses ###
200   oam_network_cidr:
201     type: string
202     description: CIDR of the OAM ONAP network
203
204   aai_ip_addr:
205     type: string
206     description: AAI IP Address
207
208   appc_ip_addr:
209     type: string
210     description: APP-C IP Address
211
212   dcae_ip_addr:
213     type: string
214     description: DCAE IP Address
215  
216   dcae_coll_ip_addr:
217     type: string
218     description: DCAE Collector IP Address
219
220   dcae_db_ip_addr:
221     type: string
222     description: DCAE Database IP Address
223
224   dcae_hdp1_ip_addr:
225     type: string
226     description: Hadoop VM1 IP Address
227
228   dcae_hdp2_ip_addr:
229     type: string
230     description: Hadoop VM2 IP Address
231
232   dcae_hdp3_ip_addr:
233     type: string
234     description: Hadoop VM3 IP Address
235
236   dns_ip_addr:
237     type: string
238     description: DNS IP Address
239
240   mso_ip_addr:
241     type: string
242     description: MSO IP Address
243
244   mr_ip_addr:
245     type: string
246     description: Message Router IP Address
247
248   policy_ip_addr:
249     type: string
250     description: Policy Engine IP Address
251
252   portal_ip_addr:
253     type: string
254     description: Portal IP Address
255
256   robot_ip_addr:
257     type: string
258     description: Robot Framework IP Address
259
260   sdc_ip_addr:
261     type: string
262     description: SDC IP Address
263
264   sdnc_ip_addr:
265     type: string
266     description: SDN-C IP Address
267
268   vid_ip_addr:
269     type: string
270     description: VID IP Address
271
272
273   ###########################
274   #                         #
275   # Parameters used by DCAE #
276   #                         #
277   ###########################
278
279   dcae_base_environment:
280     type: string
281     description: DCAE Base Environment configuration (RACKSPACE/2-NIC/...)
282
283   dcae_zone:
284     type: string
285     description: DCAE Zone to use in VM names created by DCAE controller
286
287   dcae_state:
288     type: string
289     description: DCAE State to use in VM names created by DCAE controller
290
291   nexus_repo_root:
292     type: string
293     description: Root URL of Nexus repository
294
295   nexus_url_snapshot:
296     type: string
297     description: Snapshot of Maven repository for DCAE deployment
298
299   openstack_region:
300     type: string
301     description: Region where the DCAE controller will spin the VMs
302
303   gitlab_branch:
304     type: string
305     description: Branch of the Gitlab repository
306     
307   dcae_code_version:
308     type: string
309     description: DCAE Code Version Number
310
311
312 #############
313 #           #
314 # RESOURCES #
315 #           #
316 #############
317
318 resources:
319   random-str:
320     type: OS::Heat::RandomString
321     properties:
322       length: 4
323
324
325   # Public key used to access ONAP components
326   vm_key:
327     type: OS::Nova::KeyPair
328     properties:
329       name:
330         str_replace:
331           template: base_rand
332           params:
333             base: { get_param: key_name }
334             rand: { get_resource: random-str }
335       public_key: { get_param: pub_key }
336       save_private_key: false
337
338
339   # ONAP management private network
340   oam_ecomp:
341     type: OS::Neutron::Net
342     properties:
343       name:
344         str_replace:
345           template: oam_ecomp_rand
346           params:
347             rand: { get_resource: random-str }
348
349   oam_ecomp_subnet:
350     type: OS::Neutron::Subnet
351     properties:
352       name:
353         str_replace:
354           template: oam_ecomp_rand
355           params:
356             rand: { get_resource: random-str }
357       network_id: { get_resource: oam_ecomp }
358       cidr: { get_param: oam_network_cidr }
359       dns_nameservers: { get_param: external_dns }
360
361   router:
362     type: OS::Neutron::Router
363     properties:
364       external_gateway_info:
365         network: { get_param: public_net_id }
366
367   router_interface:
368     type: OS::Neutron::RouterInterface
369     properties:
370       router_id: { get_resource: router }
371       subnet_id: { get_resource: oam_ecomp_subnet }
372
373
374   # DNS Server instantiation
375   dns_private_port:
376     type: OS::Neutron::Port
377     properties:
378       network: { get_resource: oam_ecomp }
379       fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: dns_ip_addr }}]
380
381   dns_floating_ip:
382     type: OS::Neutron::FloatingIP
383     properties:
384       floating_network_id: { get_param: public_net_id }
385       port_id: { get_resource: dns_private_port }
386       floating_ip_address: { get_param: dns_float_ip }
387
388   dns_vm:
389     type: OS::Nova::Server
390     properties:
391       image: { get_param: ubuntu_1404_image }
392       flavor: { get_param: flavor_small }
393       name: 
394         str_replace:
395           template: base-dns-server
396           params:
397             base: { get_param: vm_base_name }
398       key_name: { get_resource: vm_key }
399       networks:
400         - port: { get_resource: dns_private_port }
401       user_data_format: RAW
402       user_data:
403         str_replace:
404           params:
405             __nexus_repo__: { get_param: nexus_repo }
406             __artifacts_version__: { get_param: artifacts_version }
407             __oam_network_cidr__: { get_attr: [oam_ecomp_subnet, cidr] }
408             __dns_ip_addr__: { get_param: dns_ip_addr }
409             __aai_ip_addr__: { get_param: aai_ip_addr }
410             __appc_ip_addr__: { get_param: appc_ip_addr }
411             __dcae_ip_addr__: { get_param: dcae_ip_addr }
412             __dcae_coll_ip_addr__: { get_param: dcae_coll_ip_addr }
413             __mso_ip_addr__: { get_param: mso_ip_addr }
414             __mr_ip_addr__: { get_param: mr_ip_addr }
415             __policy_ip_addr__: { get_param: policy_ip_addr }
416             __portal_ip_addr__: { get_param: portal_ip_addr }
417             __robot_ip_addr__: { get_param: robot_ip_addr }
418             __sdc_ip_addr__: { get_param: sdc_ip_addr }
419             __sdnc_ip_addr__: { get_param: sdnc_ip_addr }
420             __vid_ip_addr__: { get_param: vid_ip_addr }
421             __cloud_env__: { get_param: cloud_env }
422
423           template: |
424             #!/bin/bash
425
426             # Create configuration files
427             mkdir -p /opt/config
428             echo "__nexus_repo__" > /opt/config/nexus_repo.txt
429             echo "__cloud_env__" > /opt/config/cloud_env.txt
430             echo "__artifacts_version__" > /opt/config/artifacts_version.txt
431             echo "__oam_network_cidr__" > /opt/config/oam_network_cidr.txt
432             echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
433             echo "__aai_ip_addr__" > /opt/config/aai_ip_addr.txt
434             echo "__appc_ip_addr__" > /opt/config/appc_ip_addr.txt
435             echo "__dcae_ip_addr__" > /opt/config/dcae_ip_addr.txt
436             echo "__dcae_coll_ip_addr__" > /opt/config/dcae_coll_ip_addr.txt
437             echo "__mso_ip_addr__" > /opt/config/mso_ip_addr.txt
438             echo "__mr_ip_addr__" > /opt/config/mr_ip_addr.txt
439             echo "__policy_ip_addr__" > /opt/config/policy_ip_addr.txt
440             echo "__portal_ip_addr__" > /opt/config/portal_ip_addr.txt
441             echo "__robot_ip_addr__" > /opt/config/robot_ip_addr.txt
442             echo "__sdc_ip_addr__" > /opt/config/sdc_ip_addr.txt
443             echo "__sdnc_ip_addr__" > /opt/config/sdnc_ip_addr.txt
444             echo "__vid_ip_addr__" > /opt/config/vid_ip_addr.txt
445
446             # Download and run install script
447             curl -k __nexus_repo__/org.openecomp.demo/boot/__artifacts_version__/dns_install.sh -o /opt/dns_install.sh
448             cd /opt
449             chmod +x dns_install.sh
450             ./dns_install.sh
451
452
453   # A&AI instantiation
454   aai_private_port:
455     type: OS::Neutron::Port
456     properties:
457       network: { get_resource: oam_ecomp }
458       fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: aai_ip_addr }}]
459
460   aai_floating_ip:
461     type: OS::Neutron::FloatingIP
462     properties:
463       floating_network_id: { get_param: public_net_id }
464       port_id: { get_resource: aai_private_port }
465       floating_ip_address: { get_param: aai_float_ip }
466
467   aai_vm:
468     type: OS::Nova::Server
469     properties:
470       image: { get_param: ubuntu_1404_image }
471       flavor: { get_param: flavor_xlarge }
472       name: 
473         str_replace:
474           template: base-aai
475           params:
476             base: { get_param: vm_base_name }      
477       key_name: { get_resource: vm_key }
478       networks:
479         - port: { get_resource: aai_private_port }
480       user_data_format: RAW
481       user_data:
482         str_replace:
483           params:
484             __nexus_repo__: { get_param: nexus_repo }
485             __nexus_docker_repo__: { get_param: nexus_docker_repo }
486             __nexus_username__: { get_param: nexus_username }
487             __nexus_password__: { get_param: nexus_password }
488             __dmaap_topic__: { get_param: dmaap_topic }
489             __artifacts_version__: { get_param: artifacts_version }
490             __dns_ip_addr__: { get_param: dns_ip_addr }
491             __sdc_ip_addr__: { get_param: sdc_ip_addr }
492             __docker_version__: { get_param: docker_version }
493             __cloud_env__: { get_param: cloud_env }
494             __external_dns__: { get_param: external_dns }
495           template: |
496             #!/bin/bash
497
498             # Create configuration files
499             mkdir -p /opt/config
500             echo "__nexus_repo__" > /opt/config/nexus_repo.txt
501             echo "__nexus_docker_repo__" > /opt/config/nexus_docker_repo.txt
502             echo "__nexus_username__" > /opt/config/nexus_username.txt
503             echo "__nexus_password__" > /opt/config/nexus_password.txt
504             echo "__artifacts_version__" > /opt/config/artifacts_version.txt
505             echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
506             echo "__sdc_ip_addr__" > /opt/config/sdc_ip_addr.txt
507             echo "__dmaap_topic__" > /opt/config/dmaap_topic.txt
508             echo "__docker_version__" > /opt/config/docker_version.txt
509             echo "__cloud_env__" > /opt/config/cloud_env.txt
510             echo "__external_dns__" > /opt/config/external_dns.txt
511
512             # Download and run install script
513             curl -k __nexus_repo__/org.openecomp.demo/boot/__artifacts_version__/aai_install.sh -o /opt/aai_install.sh
514             cd /opt
515             chmod +x aai_install.sh
516             ./aai_install.sh
517
518
519   # MSO instantiation
520   mso_private_port:
521     type: OS::Neutron::Port
522     properties:
523       network: { get_resource: oam_ecomp }
524       fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: mso_ip_addr }}]
525
526   mso_floating_ip:
527     type: OS::Neutron::FloatingIP
528     properties:
529       floating_network_id: { get_param: public_net_id }
530       port_id: { get_resource: mso_private_port }
531       floating_ip_address: { get_param: mso_float_ip }
532
533   mso_vm:
534     type: OS::Nova::Server
535     properties:
536       image: { get_param: ubuntu_1604_image }
537       flavor: { get_param: flavor_large }
538       name: 
539         str_replace:
540           template: base-mso
541           params:
542             base: { get_param: vm_base_name }      
543       key_name: { get_resource: vm_key }
544       networks:
545         - port: { get_resource: mso_private_port }
546       user_data_format: RAW
547       user_data:
548         str_replace:
549           params:
550             __nexus_repo__: { get_param: nexus_repo }
551             __nexus_docker_repo__: { get_param: nexus_docker_repo }
552             __nexus_username__: { get_param: nexus_username }
553             __nexus_password__: { get_param: nexus_password }
554             __openstack_username__: { get_param: openstack_username }
555             __openstack_tenant_id__: { get_param: openstack_tenant_id }
556             __openstack_api_key__: { get_param: openstack_api_key }
557             __keystone_url__: { get_param: keystone_url }
558             __dmaap_topic__: { get_param: dmaap_topic }
559             __artifacts_version__: { get_param: artifacts_version }
560             __dns_ip_addr__: { get_param: dns_ip_addr }
561             __docker_version__: { get_param: docker_version }
562             __gerrit_branch__: { get_param: gerrit_branch }
563             __cloud_env__: { get_param: cloud_env }
564             __external_dns__: { get_param: external_dns }
565           template: |
566             #!/bin/bash
567
568             # Create configuration files
569             mkdir -p /opt/config
570             echo "__nexus_repo__" > /opt/config/nexus_repo.txt
571             echo "__nexus_docker_repo__" > /opt/config/nexus_docker_repo.txt
572             echo "__nexus_username__" > /opt/config/nexus_username.txt
573             echo "__nexus_password__" > /opt/config/nexus_password.txt
574             echo "__artifacts_version__" > /opt/config/artifacts_version.txt
575             echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
576             echo "__dmaap_topic__" > /opt/config/dmaap_topic.txt
577             echo "__openstack_username__" > /opt/config/openstack_username.txt
578             echo "__openstack_tenant_id__" > /opt/config/tenant_id.txt
579             echo "__openstack_api_key__" > /opt/config/openstack_api_key.txt
580             echo "__keystone_url__" > /opt/config/keystone.txt
581             echo "__docker_version__" > /opt/config/docker_version.txt
582             echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
583             echo "__cloud_env__" > /opt/config/cloud_env.txt
584             echo "__external_dns__" > /opt/config/external_dns.txt
585
586             # Download and run install script
587             curl -k __nexus_repo__/org.openecomp.demo/boot/__artifacts_version__/mso_install.sh -o /opt/mso_install.sh
588             cd /opt
589             chmod +x mso_install.sh
590             ./mso_install.sh
591
592
593   # Message Router instantiation
594   mrouter_private_port:
595     type: OS::Neutron::Port
596     properties:
597       network: { get_resource: oam_ecomp }
598       fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: mr_ip_addr }}]
599
600   mrouter_floating_ip:
601     type: OS::Neutron::FloatingIP
602     properties:
603       floating_network_id: { get_param: public_net_id }
604       port_id: { get_resource: mrouter_private_port }
605       floating_ip_address: { get_param: mr_float_ip }
606
607   mrouter_vm:
608     type: OS::Nova::Server
609     properties:
610       image: { get_param: ubuntu_1404_image }
611       flavor: { get_param: flavor_large }
612       name: 
613         str_replace: 
614           template: base-message-router
615           params:
616             base: { get_param: vm_base_name }
617       key_name: { get_resource: vm_key }
618       networks:
619         - port: { get_resource: mrouter_private_port }
620       user_data_format: RAW
621       user_data:
622         str_replace:
623           params:
624             __nexus_repo__: { get_param: nexus_repo }
625             __nexus_docker_repo__: { get_param: nexus_docker_repo }
626             __nexus_username__: { get_param: nexus_username }
627             __nexus_password__: { get_param: nexus_password }
628             __artifacts_version__: { get_param: artifacts_version }
629             __dns_ip_addr__: { get_param: dns_ip_addr }
630             __gerrit_branch__: { get_param: gerrit_branch }
631             __cloud_env__: { get_param: cloud_env }
632             __external_dns__: { get_param: external_dns }
633           template: |
634             #!/bin/bash
635
636             # Create configuration files
637             mkdir -p /opt/config
638             echo "__nexus_repo__" > /opt/config/nexus_repo.txt
639             echo "__nexus_docker_repo__" > /opt/config/nexus_docker_repo.txt
640             echo "__nexus_username__" > /opt/config/nexus_username.txt
641             echo "__nexus_password__" > /opt/config/nexus_password.txt
642             echo "__artifacts_version__" > /opt/config/artifacts_version.txt
643             echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
644             echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
645             echo "__cloud_env__" > /opt/config/cloud_env.txt
646             echo "__external_dns__" > /opt/config/external_dns.txt
647
648             # Download and run install script
649             curl -k __nexus_repo__/org.openecomp.demo/boot/__artifacts_version__/mr_install.sh -o /opt/mr_install.sh
650             cd /opt
651             chmod +x mr_install.sh
652             ./mr_install.sh
653
654
655   # Robot Framework instantiation
656   robot_private_port:
657     type: OS::Neutron::Port
658     properties:
659       network: { get_resource: oam_ecomp }
660       fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: robot_ip_addr }}]
661
662   robot_floating_ip:
663     type: OS::Neutron::FloatingIP
664     properties:
665       floating_network_id: { get_param: public_net_id }
666       port_id: { get_resource: robot_private_port }
667       floating_ip_address: { get_param: robot_float_ip }
668  
669   robot_vm:
670     type: OS::Nova::Server
671     properties:
672       image: { get_param: ubuntu_1604_image }
673       flavor: { get_param: flavor_small }
674       name: 
675         str_replace: 
676           template: base-robot
677           params:
678             base: { get_param: vm_base_name }
679       key_name: { get_resource: vm_key }
680       networks:
681         - port: { get_resource: robot_private_port }
682       user_data_format: RAW
683       user_data:
684         str_replace:
685           params:
686             __nexus_repo__: { get_param: nexus_repo }
687             __nexus_docker_repo__: { get_param: nexus_docker_repo }
688             __nexus_username__: { get_param: nexus_username }
689             __nexus_password__: { get_param: nexus_password }
690             __network_name__: { get_attr: [oam_ecomp, name] }
691             __openstack_username__: { get_param: openstack_username }
692             __openstack_api_key__: { get_param : openstack_api_key }
693             __artifacts_version__: { get_param: artifacts_version }
694             __openstack_region__: { get_param: openstack_region }
695             __dns_ip_addr__: { get_param: dns_ip_addr }
696             __docker_version__: { get_param: docker_version }
697             __gerrit_branch__: { get_param: gerrit_branch }
698             __cloud_env__: { get_param: cloud_env }
699             __external_dns__: { get_param: external_dns }
700           template: |
701             #!/bin/bash
702
703             # Create configuration files
704             mkdir -p /opt/config
705             echo "__nexus_docker_repo__" > /opt/config/nexus_docker_repo.txt
706             echo "__nexus_repo__" > /opt/config/nexus_repo.txt
707             echo "__nexus_username__" > /opt/config/nexus_username.txt
708             echo "__nexus_password__" > /opt/config/nexus_password.txt
709             echo "__network_name__" > /opt/config/network.txt
710             echo "__openstack_username__" > /opt/config/openstack_username.txt
711             echo "__openstack_api_key__" > /opt/config/openstack_password.txt
712             echo "__openstack_region__" > /opt/config/region.txt
713             echo "__artifacts_version__" > /opt/config/artifacts_version.txt
714             echo "__docker_version__" > /opt/config/docker_version.txt
715             echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
716             echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
717             echo "__cloud_env__" > /opt/config/cloud_env.txt
718             echo "__external_dns__" > /opt/config/external_dns.txt
719
720             # Download and run install script
721             curl -k __nexus_repo__/org.openecomp.demo/boot/__artifacts_version__/robot_install.sh -o /opt/robot_install.sh
722             cd /opt
723             chmod +x robot_install.sh
724             ./robot_install.sh
725
726
727   # VID instantiation
728   vid_private_port:
729     type: OS::Neutron::Port
730     properties:
731       network: { get_resource: oam_ecomp }
732       fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: vid_ip_addr }}]
733
734   vid_floating_ip:
735     type: OS::Neutron::FloatingIP
736     properties:
737       floating_network_id: { get_param: public_net_id }
738       port_id: { get_resource: vid_private_port }
739       floating_ip_address: { get_param: vid_float_ip }
740
741   vid_vm:
742     type: OS::Nova::Server
743     properties:
744       image: { get_param: ubuntu_1404_image }
745       flavor: { get_param: flavor_medium }
746       name: 
747         str_replace: 
748           template: base-vid
749           params:
750             base: { get_param: vm_base_name }
751       key_name: { get_resource: vm_key }
752       networks:
753         - port: { get_resource: vid_private_port }
754       user_data_format: RAW
755       user_data:
756         str_replace:
757           params:
758             __nexus_repo__: { get_param: nexus_repo }
759             __nexus_docker_repo__: { get_param: nexus_docker_repo }
760             __nexus_username__: { get_param: nexus_username }
761             __nexus_password__: { get_param: nexus_password }
762             __artifacts_version__: { get_param: artifacts_version }
763             __dns_ip_addr__: { get_param: dns_ip_addr }
764             __docker_version__: { get_param: docker_version }
765             __gerrit_branch__: { get_param: gerrit_branch }
766             __cloud_env__: { get_param: cloud_env }
767             __external_dns__: { get_param: external_dns }
768           template: |
769             #!/bin/bash
770
771             # Create configuration files
772             mkdir -p /opt/config
773             echo "__nexus_repo__" > /opt/config/nexus_repo.txt
774             echo "__nexus_docker_repo__" > /opt/config/nexus_docker_repo.txt
775             echo "__nexus_username__" > /opt/config/nexus_username.txt
776             echo "__nexus_password__" > /opt/config/nexus_password.txt
777             echo "__artifacts_version__" > /opt/config/artifacts_version.txt
778             echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
779             echo "__docker_version__" > /opt/config/docker_version.txt
780             echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
781             echo "__cloud_env__" > /opt/config/cloud_env.txt
782             echo "__external_dns__" > /opt/config/external_dns.txt
783
784             # Download and run install script
785             curl -k __nexus_repo__/org.openecomp.demo/boot/__artifacts_version__/vid_install.sh -o /opt/vid_install.sh
786             cd /opt
787             chmod +x vid_install.sh
788             ./vid_install.sh
789
790  
791   # SDN-C instantiation
792   sdnc_private_port:
793     type: OS::Neutron::Port
794     properties:
795       network: { get_resource: oam_ecomp }
796       fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: sdnc_ip_addr }}]
797
798   sdnc_floating_ip:
799     type: OS::Neutron::FloatingIP
800     properties:
801       floating_network_id: { get_param: public_net_id }
802       port_id: { get_resource: sdnc_private_port }
803       floating_ip_address: { get_param: sdnc_float_ip }
804
805   sdnc_vm:
806     type: OS::Nova::Server
807     properties:
808       image: { get_param: ubuntu_1404_image }
809       flavor: { get_param: flavor_large }
810       name: 
811         str_replace: 
812           template: base-sdnc
813           params:
814             base: { get_param: vm_base_name }
815       key_name: { get_resource: vm_key }
816       networks:
817         - port: { get_resource: sdnc_private_port }
818       user_data_format: RAW
819       user_data:
820         str_replace:
821           params:
822             __nexus_repo__: { get_param: nexus_repo }
823             __nexus_docker_repo__: { get_param: nexus_docker_repo }
824             __nexus_username__: { get_param: nexus_username }
825             __nexus_password__: { get_param: nexus_password }
826             __artifacts_version__: { get_param: artifacts_version }
827             __dns_ip_addr__: { get_param: dns_ip_addr }
828             __docker_version__: { get_param: docker_version }
829             __gerrit_branch__: { get_param: gerrit_branch }
830             __cloud_env__: { get_param: cloud_env }
831             __external_dns__: { get_param: external_dns }
832           template: |
833             #!/bin/bash
834
835             # Create configuration files
836             mkdir -p /opt/config
837             echo "__nexus_repo__" > /opt/config/nexus_repo.txt
838             echo "__nexus_docker_repo__" > /opt/config/nexus_docker_repo.txt
839             echo "__nexus_username__" > /opt/config/nexus_username.txt
840             echo "__nexus_password__" > /opt/config/nexus_password.txt
841             echo "__artifacts_version__" > /opt/config/artifacts_version.txt
842             echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
843             echo "__docker_version__" > /opt/config/docker_version.txt
844             echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
845             echo "__cloud_env__" > /opt/config/cloud_env.txt
846             echo "__external_dns__" > /opt/config/external_dns.txt
847
848             # Download and run install script
849             curl -k __nexus_repo__/org.openecomp.demo/boot/__artifacts_version__/sdnc_install.sh -o /opt/sdnc_install.sh
850             cd /opt
851             chmod +x sdnc_install.sh
852             ./sdnc_install.sh
853
854
855   # SDC instantiation
856   sdc_private_port:
857     type: OS::Neutron::Port
858     properties:
859       network: { get_resource: oam_ecomp }
860       fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: sdc_ip_addr }}]
861
862   sdc_floating_ip:
863     type: OS::Neutron::FloatingIP
864     properties:
865       floating_network_id: { get_param: public_net_id }
866       port_id: { get_resource: sdc_private_port }
867       floating_ip_address: { get_param: sdc_float_ip }
868
869   sdc_volume_data:
870     type: OS::Cinder::Volume
871     properties:
872       name: vol1-sdc-data
873       size: 100
874
875   sdc_vm:
876     type: OS::Nova::Server
877     properties:
878       image: { get_param: ubuntu_1604_image }
879       flavor: { get_param: flavor_xlarge }
880       name: 
881         str_replace: 
882           template: base-sdc
883           params:
884             base: { get_param: vm_base_name }
885       key_name: { get_resource: vm_key }
886       networks:
887         - port: { get_resource: sdc_private_port }
888       block_device_mapping:
889         - device_name: /dev/vdb
890           volume_id: {get_resource: sdc_volume_data}
891       user_data_format: RAW
892       user_data:
893         str_replace:
894           params:
895             __nexus_repo__: { get_param: nexus_repo }
896             __nexus_docker_repo__: { get_param: nexus_docker_repo }
897             __nexus_username__: { get_param: nexus_username }
898             __nexus_password__: { get_param: nexus_password }
899             __env_name__: { get_param: dmaap_topic }
900             __artifacts_version__: { get_param: artifacts_version }
901             __dns_ip_addr__: { get_param: dns_ip_addr }
902             __mr_ip_addr__: { get_param: mr_ip_addr }
903             __public_ip__: { get_attr: [sdc_floating_ip, floating_ip_address] }
904             __docker_version__: { get_param: docker_version }
905             __gerrit_branch__: { get_param: gerrit_branch }
906             __cloud_env__: { get_param: cloud_env }
907             __external_dns__: { get_param: external_dns }
908           template: |
909             #!/bin/bash
910
911             # Create configuration files
912             mkdir -p /opt/config
913             echo "__nexus_repo__" > /opt/config/nexus_repo.txt
914             echo "__nexus_docker_repo__" > /opt/config/nexus_docker_repo.txt
915             echo "__nexus_username__" > /opt/config/nexus_username.txt
916             echo "__nexus_password__" > /opt/config/nexus_password.txt
917             echo "__env_name__" > /opt/config/env_name.txt
918             echo "__mr_ip_addr__" > /opt/config/mr_ip_addr.txt
919             echo "__public_ip__" > /opt/config/public_ip.txt
920             echo "__artifacts_version__" > /opt/config/artifacts_version.txt
921             echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
922             echo "__docker_version__" > /opt/config/docker_version.txt
923             echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
924             echo "__cloud_env__" > /opt/config/cloud_env.txt
925             echo "__external_dns__" > /opt/config/external_dns.txt
926
927             # Download and run install script
928             curl -k __nexus_repo__/org.openecomp.demo/boot/__artifacts_version__/asdc_install.sh -o /opt/asdc_install.sh
929             cd /opt
930             chmod +x asdc_install.sh
931             ./asdc_install.sh
932
933
934   # PORTAL instantiation
935   portal_private_port:
936     type: OS::Neutron::Port
937     properties:
938       network: { get_resource: oam_ecomp }
939       fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: portal_ip_addr }}]
940
941   portal_floating_ip:
942     type: OS::Neutron::FloatingIP
943     properties:
944       floating_network_id: { get_param: public_net_id }
945       port_id: { get_resource: portal_private_port }
946       floating_ip_address: { get_param: portal_float_ip }
947
948   portal_vm:
949     type: OS::Nova::Server
950     properties:
951       image: { get_param: ubuntu_1404_image }
952       flavor: { get_param: flavor_large }
953       name: 
954         str_replace: 
955           template: base-portal
956           params:
957             base: { get_param: vm_base_name }
958       key_name: { get_resource: vm_key }
959       networks:
960         - port: { get_resource: portal_private_port }
961       user_data_format: RAW
962       user_data:
963         str_replace:
964           params:
965             __nexus_repo__: { get_param: nexus_repo }
966             __nexus_docker_repo__: { get_param: nexus_docker_repo }
967             __nexus_username__: { get_param: nexus_username }
968             __nexus_password__: { get_param: nexus_password }
969             __artifacts_version__: { get_param: artifacts_version }
970             __dns_ip_addr__: { get_param: dns_ip_addr }
971             __public_ip__: { get_attr: [portal_floating_ip, floating_ip_address] }
972             __docker_version__: { get_param: docker_version }
973             __gerrit_branch__: { get_param: gerrit_branch }
974             __cloud_env__: { get_param: cloud_env }
975             __external_dns__: { get_param: external_dns }
976           template: |
977             #!/bin/bash
978
979             # Create configuration files
980             mkdir -p /opt/config
981             echo "__nexus_repo__" > /opt/config/nexus_repo.txt
982             echo "__nexus_docker_repo__" > /opt/config/nexus_docker_repo.txt
983             echo "__nexus_username__" > /opt/config/nexus_username.txt
984             echo "__nexus_password__" > /opt/config/nexus_password.txt
985             echo "__public_ip__" > /opt/config/public_ip.txt
986             echo "__artifacts_version__" > /opt/config/artifacts_version.txt
987             echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
988             echo "__docker_version__" > /opt/config/docker_version.txt
989             echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
990             echo "__cloud_env__" > /opt/config/cloud_env.txt
991             echo "__external_dns__" > /opt/config/external_dns.txt
992
993             # Download and run install script
994             curl -k __nexus_repo__/org.openecomp.demo/boot/__artifacts_version__/portal_install.sh -o /opt/portal_install.sh
995             cd /opt
996             chmod +x portal_install.sh
997             ./portal_install.sh
998
999
1000   # DCAE Controller instantiation
1001   dcae_c_private_port:
1002     type: OS::Neutron::Port
1003     properties:
1004       network: { get_resource: oam_ecomp }
1005       fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: dcae_ip_addr }}]
1006
1007   dcae_c_floating_ip:
1008     type: OS::Neutron::FloatingIP
1009     properties:
1010       floating_network_id: { get_param: public_net_id }
1011       port_id: { get_resource: dcae_c_private_port }
1012       floating_ip_address: { get_param: dcae_float_ip }
1013
1014   dcae_c_vm:
1015     type: OS::Nova::Server
1016     properties:
1017       image: { get_param: ubuntu_1404_image }
1018       flavor: { get_param: flavor_medium }
1019       name: 
1020         str_replace: 
1021           template: base-dcae-controller
1022           params:
1023             base: { get_param: vm_base_name }
1024       key_name: { get_resource: vm_key }
1025       networks:
1026         - port: { get_resource: dcae_c_private_port }
1027       user_data_format: RAW
1028       user_data:
1029         str_replace:
1030           params:
1031             __nexus_repo__: { get_param: nexus_repo }
1032             __nexus_docker_repo__: { get_param: nexus_docker_repo }
1033             __nexus_username__: { get_param: nexus_username }
1034             __nexus_password__: { get_param: nexus_password }
1035             __nexus_url_snapshots__: { get_param: nexus_url_snapshot }
1036             __gitlab_branch__: { get_param: gitlab_branch }
1037             __dns_ip_addr__: { get_param: dns_ip_addr }
1038             __dcae_zone__: { get_param: dcae_zone }
1039             __dcae_state__: { get_param: dcae_state }
1040             __artifacts_version__: { get_param: artifacts_version }
1041             __tenant_id__: { get_param: openstack_tenant_id }
1042             __openstack_private_network_name__: { get_attr: [oam_ecomp, name] }
1043             __openstack_user__: { get_param: openstack_username }
1044             __openstack_password__: { get_param: openstack_api_key }
1045             __openstack_auth_method__: { get_param: openstack_auth_method }
1046             __key_name__: { get_param: key_name }
1047             __rand_str__: { get_resource: random-str }
1048             __pub_key__: { get_param: pub_key }
1049             __nexus_repo_root__: { get_param: nexus_repo_root }
1050             __openstack_region__: { get_param: openstack_region }
1051             __horizon_url__: { get_param: horizon_url }
1052             __keystone_url__: { get_param: keystone_url }
1053             __docker_version__: { get_param: docker_version }
1054             __gerrit_branch__: { get_param: gerrit_branch }
1055             __dcae_code_version__: { get_param: dcae_code_version }
1056             __cloud_env__: { get_param: cloud_env }
1057             __public_net_id__: { get_param: public_net_id }
1058             __dcae_base_environment__: { get_param: dcae_base_environment }
1059             __dcae_ip_addr__: { get_param: dcae_ip_addr }
1060             __dcae_coll_ip_addr__: { get_param: dcae_coll_ip_addr }
1061             __dcae_db_ip_addr__: { get_param: dcae_db_ip_addr }
1062             __dcae_hdp1_ip_addr__: { get_param: dcae_hdp1_ip_addr }
1063             __dcae_hdp2_ip_addr__: { get_param: dcae_hdp2_ip_addr }
1064             __dcae_hdp3_ip_addr__: { get_param: dcae_hdp3_ip_addr }
1065             __dcae_float_ip__: { get_param: dcae_float_ip }
1066             __dcae_coll_float_ip__: { get_param: dcae_coll_float_ip }
1067             __dcae_db_float_ip__: { get_param: dcae_db_float_ip }
1068             __dcae_hdp1_float_ip__: { get_param: dcae_hdp1_float_ip }
1069             __dcae_hdp2_float_ip__: { get_param: dcae_hdp2_float_ip }
1070             __dcae_hdp3_float_ip__: { get_param: dcae_hdp3_float_ip }
1071             __external_dns__: { get_param: external_dns }
1072           template: |
1073             #!/bin/bash
1074
1075             # Create configuration files
1076             mkdir -p /opt/config
1077             echo "__nexus_repo__" > /opt/config/nexus_repo.txt
1078             echo "__nexus_docker_repo__" > /opt/config/nexus_docker_repo.txt
1079             echo "__nexus_username__" > /opt/config/nexus_username.txt
1080             echo "__nexus_password__" > /opt/config/nexus_password.txt
1081             echo "__nexus_url_snapshots__" > /opt/config/nexus_url_snapshots.txt
1082             echo "__gitlab_branch__" > /opt/config/gitlab_branch.txt
1083             echo "__docker_version__" > /opt/config/docker_version.txt
1084             echo "__artifacts_version__" > /opt/config/artifacts_version.txt
1085             echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
1086             echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
1087             echo "__dcae_zone__" > /opt/config/dcae_zone.txt
1088             echo "__dcae_state__" > /opt/config/dcae_state.txt
1089             echo "__tenant_id__" > /opt/config/tenant_id.txt
1090             echo "__openstack_private_network_name__" > /opt/config/openstack_private_network_name.txt
1091             echo "__openstack_user__" > /opt/config/openstack_user.txt
1092             echo "__openstack_password__" > /opt/config/openstack_password.txt
1093             echo "__openstack_auth_method__" > /opt/config/openstack_auth_method.txt
1094             echo "__key_name__" > /opt/config/key_name.txt
1095             echo "__rand_str__" > /opt/config/rand_str.txt
1096             echo "__pub_key__" > /opt/config/pub_key.txt
1097             echo "__nexus_repo_root__" > /opt/config/nexus_repo_root.txt
1098             echo "__openstack_region__" > /opt/config/openstack_region.txt
1099             echo "__horizon_url__" > /opt/config/horizon_url.txt
1100             echo "__keystone_url__" > /opt/config/keystone_url.txt
1101             echo "__cloud_env__" > /opt/config/cloud_env.txt
1102             echo "__public_net_id__" > /opt/config/public_net_id.txt
1103             echo "__dcae_base_environment__" > /opt/config/dcae_base_environment.txt
1104             echo "__dcae_code_version__" > /opt/config/dcae_code_version.txt
1105             echo "__dcae_ip_addr__" > /opt/config/dcae_ip_addr.txt
1106             echo "__dcae_coll_ip_addr__" > /opt/config/dcae_coll_ip_addr.txt
1107             echo "__dcae_db_ip_addr__" > /opt/config/dcae_db_ip_addr.txt
1108             echo "__dcae_hdp1_ip_addr__" > /opt/config/dcae_hdp1_ip_addr.txt
1109             echo "__dcae_hdp2_ip_addr__" > /opt/config/dcae_hdp2_ip_addr.txt
1110             echo "__dcae_hdp3_ip_addr__" > /opt/config/dcae_hdp3_ip_addr.txt
1111             echo "__dcae_float_ip__" > /opt/config/dcae_float_ip.txt
1112             echo "__dcae_coll_float_ip__" > /opt/config/dcae_coll_float_ip.txt
1113             echo "__dcae_db_float_ip__" > /opt/config/dcae_db_float_ip.txt
1114             echo "__dcae_hdp1_float_ip__" > /opt/config/dcae_hdp1_float_ip.txt
1115             echo "__dcae_hdp2_float_ip__" > /opt/config/dcae_hdp2_float_ip.txt
1116             echo "__dcae_hdp3_float_ip__" > /opt/config/dcae_hdp3_float_ip.txt
1117             echo "__external_dns__" > /opt/config/external_dns.txt
1118
1119             # Download and run install script
1120             curl -k __nexus_repo__/org.openecomp.demo/boot/__artifacts_version__/dcae_install.sh -o /opt/dcae_install.sh
1121             cd /opt
1122             chmod +x dcae_install.sh
1123             ./dcae_install.sh
1124
1125
1126   # Policy Engine instantiation
1127   policy_private_port:
1128     type: OS::Neutron::Port
1129     properties:
1130       network: { get_resource: oam_ecomp }
1131       fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: policy_ip_addr }}]
1132
1133   policy_floating_ip:
1134     type: OS::Neutron::FloatingIP
1135     properties:
1136       floating_network_id: { get_param: public_net_id }
1137       port_id: { get_resource: policy_private_port }
1138       floating_ip_address: { get_param: policy_float_ip }
1139
1140   policy_vm:
1141     type: OS::Nova::Server
1142     properties:
1143       image: { get_param: ubuntu_1404_image }
1144       flavor: { get_param: flavor_xlarge }
1145       name: 
1146         str_replace: 
1147           template: base-policy
1148           params:
1149             base: { get_param: vm_base_name }
1150       key_name: { get_resource: vm_key }
1151       networks:
1152         - port: { get_resource: policy_private_port }
1153       user_data_format: RAW
1154       user_data:
1155         str_replace:
1156           params:
1157             __nexus_repo__: { get_param: nexus_repo }
1158             __nexus_docker_repo__: { get_param: nexus_docker_repo }
1159             __nexus_username__: { get_param: nexus_username }
1160             __nexus_password__: { get_param: nexus_password }
1161             __artifacts_version__: { get_param: artifacts_version }
1162             __dns_ip_addr__: { get_param: dns_ip_addr }
1163             __public_ip__: { get_attr: [policy_floating_ip, floating_ip_address] }
1164             __docker_version__: { get_param: docker_version }
1165             __gerrit_branch__: { get_param: gerrit_branch }
1166             __cloud_env__: { get_param: cloud_env }
1167             __external_dns__: { get_param: external_dns }
1168           template: |
1169             #!/bin/bash
1170
1171             # Create configuration files
1172             mkdir -p /opt/config
1173             echo "__nexus_repo__" > /opt/config/nexus_repo.txt
1174             echo "__nexus_docker_repo__" > /opt/config/nexus_docker_repo.txt
1175             echo "__nexus_username__" > /opt/config/nexus_username.txt
1176             echo "__nexus_password__" > /opt/config/nexus_password.txt
1177             echo "__artifacts_version__" > /opt/config/artifacts_version.txt
1178             echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
1179             echo "__public_ip__" > /opt/config/public_ip.txt
1180             echo "__docker_version__" > /opt/config/docker_version.txt
1181             echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
1182             echo "__cloud_env__" > /opt/config/cloud_env.txt
1183             echo "__external_dns__" > /opt/config/external_dns.txt
1184
1185             # Download and run install script
1186             curl -k __nexus_repo__/org.openecomp.demo/boot/__artifacts_version__/policy_install.sh -o /opt/policy_install.sh
1187             cd /opt
1188             chmod +x policy_install.sh
1189             ./policy_install.sh
1190
1191
1192   # APP-C instantiation
1193   appc_private_port:
1194     type: OS::Neutron::Port
1195     properties:
1196       network: { get_resource: oam_ecomp }
1197       fixed_ips: [{"subnet": { get_resource: oam_ecomp_subnet }, "ip_address": { get_param: appc_ip_addr }}]
1198
1199   appc_floating_ip:
1200     type: OS::Neutron::FloatingIP
1201     properties:
1202       floating_network_id: { get_param: public_net_id }
1203       port_id: { get_resource: appc_private_port }
1204       floating_ip_address: { get_param: appc_float_ip }
1205
1206   appc_vm:
1207     type: OS::Nova::Server
1208     properties:
1209       image: { get_param: ubuntu_1404_image }
1210       flavor: { get_param: flavor_large }
1211       name: 
1212         str_replace: 
1213           template: base-appc
1214           params:
1215             base: { get_param: vm_base_name }
1216       key_name: { get_resource: vm_key }
1217       networks:
1218         - port: { get_resource: appc_private_port }
1219       user_data_format: RAW
1220       user_data:
1221         str_replace:
1222           params:
1223             __nexus_repo__: { get_param: nexus_repo }
1224             __nexus_docker_repo__: { get_param: nexus_docker_repo }
1225             __nexus_username__: { get_param: nexus_username }
1226             __nexus_password__: { get_param: nexus_password }
1227             __dmaap_topic__: { get_param: dmaap_topic }
1228             __artifacts_version__: { get_param: artifacts_version }
1229             __dns_ip_addr__: { get_param: dns_ip_addr }
1230             __docker_version__: { get_param: docker_version }
1231             __gerrit_branch__: { get_param: gerrit_branch }
1232             __cloud_env__: { get_param: cloud_env }
1233             __external_dns__: { get_param: external_dns }
1234           template: |
1235             #!/bin/bash
1236
1237             # Create configuration files
1238             mkdir -p /opt/config
1239             echo "__nexus_repo__" > /opt/config/nexus_repo.txt
1240             echo "__nexus_docker_repo__" > /opt/config/nexus_docker_repo.txt
1241             echo "__nexus_username__" > /opt/config/nexus_username.txt
1242             echo "__nexus_password__" > /opt/config/nexus_password.txt
1243             echo "__artifacts_version__" > /opt/config/artifacts_version.txt
1244             echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
1245             echo "__dmaap_topic__" > /opt/config/dmaap_topic.txt
1246             echo "__docker_version__" > /opt/config/docker_version.txt
1247             echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
1248             echo "__cloud_env__" > /opt/config/cloud_env.txt
1249             echo "__external_dns__" > /opt/config/external_dns.txt
1250
1251             # Download and run install script
1252             curl -k __nexus_repo__/org.openecomp.demo/boot/__artifacts_version__/appc_install.sh -o /opt/appc_install.sh
1253             cd /opt
1254             chmod +x appc_install.sh
1255             ./appc_install.sh