+ ./clamp_install.sh
+
+
+ # OPEN-O VM instantiation
+ openo_private_port:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: oam_onap }
+ fixed_ips: [{"subnet": { get_resource: oam_onap_subnet }, "ip_address": { get_param: openo_ip_addr }}]
+
+ openo_vm:
+ type: OS::Nova::Server
+ properties:
+ image: { get_param: ubuntu_1604_image }
+ flavor: { get_param: flavor_xxlarge }
+ name:
+ str_replace:
+ template: base-openo-server
+ params:
+ base: { get_param: vm_base_name }
+ key_name: { get_resource: vm_key }
+ networks:
+ - network: { get_param: public_net_id }
+ - port: { get_resource: openo_private_port }
+ user_data_format: RAW
+ user_data:
+ str_replace:
+ params:
+ __nexus_repo__: { get_param: nexus_repo }
+ __nexus_docker_repo__: { get_param: nexus_docker_repo }
+ __nexus_username__: { get_param: nexus_username }
+ __nexus_password__: { get_param: nexus_password }
+ __artifacts_version__: { get_param: artifacts_version }
+ __dns_ip_addr__: { get_param: dns_ip_addr }
+ __oam_network_cidr__: { get_param: oam_network_cidr }
+ __aai1_ip_addr__: { get_param: aai1_ip_addr }
+ __aai2_ip_addr__: { get_param: aai2_ip_addr }
+ __appc_ip_addr__: { get_param: appc_ip_addr }
+ __dcae_ip_addr__: { get_param: dcae_ip_addr }
+ __dcae_coll_ip_addr__: { get_param: dcae_coll_ip_addr }
+ __so_ip_addr__: { get_param: so_ip_addr }
+ __mr_ip_addr__: { get_param: mr_ip_addr }
+ __policy_ip_addr__: { get_param: policy_ip_addr }
+ __portal_ip_addr__: { get_param: portal_ip_addr }
+ __robot_ip_addr__: { get_param: robot_ip_addr }
+ __sdc_ip_addr__: { get_param: sdc_ip_addr }
+ __sdnc_ip_addr__: { get_param: sdnc_ip_addr }
+ __vid_ip_addr__: { get_param: vid_ip_addr }
+ __clamp_ip_addr__: { get_param: clamp_ip_addr }
+ __openo_ip_addr__: { get_param: openo_ip_addr }
+ __cloud_env__: { get_param: cloud_env }
+ __external_dns__: { get_param: external_dns }
+ __vnfsdk_branch__: { get_param: vnfsdk_branch }
+ __msb_docker__: { get_param: msb_docker }
+ __mvim_docker__: { get_param: mvim_docker }
+ __vfc_docker__: { get_param: vfc_docker }
+ __uui_docker__: { get_param: uui_docker }
+ __vnfsdk_repo__: { get_param: vnfsdk_repo }
+ template: |
+ #!/bin/bash
+
+ # Create configuration files
+ mkdir -p /opt/config
+ echo "__nexus_repo__" > /opt/config/nexus_repo.txt
+ echo "__nexus_docker_repo__" > /opt/config/nexus_docker_repo.txt
+ echo "__nexus_username__" > /opt/config/nexus_username.txt
+ echo "__nexus_password__" > /opt/config/nexus_password.txt
+ echo "__cloud_env__" > /opt/config/cloud_env.txt
+ echo "__artifacts_version__" > /opt/config/artifacts_version.txt
+ echo "__oam_network_cidr__" > /opt/config/oam_network_cidr.txt
+ echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
+ echo "__external_dns__" > /opt/config/external_dns.txt
+ echo "__vnfsdk_branch__" > /opt/config/vnfsdk_branch.txt
+ echo "__msb_docker__" > /opt/config/msb_docker.txt
+ echo "__mvim_docker__" > /opt/config/mvim_docker.txt
+ echo "__vfc_docker__" > /opt/config/vfc_docker.txt
+ echo "__uui_docker__" > /opt/config/uui_docker.txt
+ echo "__vnfsdk_repo__" > /opt/config/vnfsdk_repo.txt
+
+ # Create env file with the IP address of all ONAP components
+ echo "export AAI_IP1=__aai1_ip_addr__" >> /opt/config/onap_ips.txt
+ echo "export AAI_IP2=__aai2_ip_addr__" >> /opt/config/onap_ips.txt
+ echo "export APPC_IP=__appc_ip_addr__" >> /opt/config/onap_ips.txt
+ echo "export DCAE_IP=__dcae_ip_addr__" >> /opt/config/onap_ips.txt
+ echo "export DCAE_COLL_IP=__dcae_coll_ip_addr__" >> /opt/config/onap_ips.txt
+ echo "export SO_IP=__so_ip_addr__" >> /opt/config/onap_ips.txt
+ echo "export MR_IP=__mr_ip_addr__" >> /opt/config/onap_ips.txt
+ echo "export POLICY_IP=__policy_ip_addr__" >> /opt/config/onap_ips.txt
+ echo "export PORTAL_IP=__portal_ip_addr__" >> /opt/config/onap_ips.txt
+ echo "export ROBOT_IP=__robot_ip_addr__" >> /opt/config/onap_ips.txt
+ echo "export SDC_IP=__sdc_ip_addr__" >> /opt/config/onap_ips.txt
+ echo "export SDNC_IP=__sdnc_ip_addr__" >> /opt/config/onap_ips.txt
+ echo "export VID_IP=__vid_ip_addr__" >> /opt/config/onap_ips.txt
+ echo "export CLAMP_IP=__clamp_ip_addr__" >> /opt/config/onap_ips.txt
+ echo "export OPENO_IP=__openo_ip_addr__" >> /opt/config/onap_ips.txt
+
+ # Download and run install script
+ curl -k __nexus_repo__/org.onap.demo/boot/__artifacts_version__/openo_install.sh -o /opt/openo_install.sh
+ cd /opt
+ chmod +x openo_install.sh
+ ./openo_install.sh
+
+
+ # DCAE GEN 2 Controller instantiation
+ dcae_c_private_port:
+ type: OS::Neutron::Port
+ properties:
+ network: { get_resource: oam_onap }
+ fixed_ips: [{"subnet": { get_resource: oam_onap_subnet }, "ip_address": { get_param: dcae_ip_addr }}]
+
+ dcae_c_floating_ip:
+ type: OS::Neutron::FloatingIP
+ properties:
+ floating_network_id: { get_param: public_net_id }
+ port_id: { get_resource: dcae_c_private_port }
+
+ dcae_c_vm:
+ type: OS::Nova::Server
+ properties:
+ image: { get_param: ubuntu_1604_image }
+ flavor: { get_param: flavor_medium }
+ name:
+ str_replace:
+ template: base-dcae-controller
+ params:
+ base: { get_param: vm_base_name }
+ key_name: { get_resource: dcae_vm_key }
+ networks:
+ - port: { get_resource: dcae_c_private_port }
+ user_data_format: RAW
+ user_data:
+ str_replace:
+ params:
+ __nexus_repo__: { get_param: nexus_repo }
+ __nexus_docker_repo__: { get_param: nexus_docker_repo }
+ __nexus_username__: { get_param: nexus_username }
+ __nexus_password__: { get_param: nexus_password }
+ __dns_ip_addr__: { get_param: dns_ip_addr }
+ __dcae_zone__: { get_param: dcae_zone }
+ __artifacts_version__: { get_param: artifacts_version }
+ __tenant_id__: { get_param: openstack_tenant_id }
+ __openstack_private_network_name__: { get_attr: [oam_onap, name] }
+ __openstack_user__: { get_param: openstack_username }
+ __openstack_password__: { get_param: openstack_api_key }
+ __key_name__: { get_param: dcae_key_name }
+ __pub_key__: { get_param: dcae_pub_key }
+ __private_key__: { get_attr: [ dcae_vm_key, private_key ] }
+ __openstack_region__: { get_param: openstack_region }
+ __keystone_url__: { get_param: keystone_url }
+ __docker_version__: { get_param: dcae_docker }
+ __dcae_repo__: { get_param: dcae_repo }
+ __gerrit_branch__: { get_param: dcae_branch }
+ __cloud_env__: { get_param: cloud_env }
+ __public_net_id__: { get_param: public_net_id }
+ __dcae_ip_addr__: { get_param: dcae_ip_addr }
+ __dcae_float_ip__: { get_attr: [dcae_c_floating_ip, floating_ip_address] }
+ __external_dns__: { get_param: external_dns }
+ __ubuntu_1604_image__: { get_param: ubuntu_1604_image }
+ __centos_7_image__: { get_param: centos_7_image }
+ __security_group__ : { get_param: security_group }
+ __flavor_medium__: { get_param: flavor_medium }
+ __mac_addr__: { get_attr: [dcae_c_private_port, mac_address] }
+ __rand_str__: { get_resource: random-str }
+
+ template: |
+ #!/bin/bash
+
+ # Create configuration files
+ mkdir -p /opt/config
+ echo "__nexus_repo__" > /opt/config/nexus_repo.txt
+ echo "__nexus_docker_repo__" > /opt/config/nexus_docker_repo.txt
+ echo "__nexus_username__" > /opt/config/nexus_username.txt
+ echo "__nexus_password__" > /opt/config/nexus_password.txt
+ echo "__docker_version__" > /opt/config/docker_version.txt
+ echo "__artifacts_version__" > /opt/config/artifacts_version.txt
+ echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
+ echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
+ echo "__dcae_zone__" > /opt/config/dcae_zone.txt
+ echo "__tenant_id__" > /opt/config/tenant_id.txt
+ echo "__openstack_private_network_name__" > /opt/config/openstack_private_network_name.txt
+ echo "__openstack_user__" > /opt/config/openstack_user.txt
+ echo "__openstack_password__" > /opt/config/openstack_password.txt
+ echo "__key_name__" > /opt/config/key_name.txt
+ echo "__pub_key__" > /opt/config/pub_key.txt
+ echo "__private_key__" > /opt/config/priv_key
+ echo "__openstack_region__" > /opt/config/openstack_region.txt
+ echo "__keystone_url__" > /opt/config/keystone_url.txt
+ echo "__cloud_env__" > /opt/config/cloud_env.txt
+ echo "__public_net_id__" > /opt/config/public_net_id.txt
+ echo "__dcae_ip_addr__" > /opt/config/dcae_ip_addr.txt
+ echo "__dcae_float_ip__" > /opt/config/dcae_float_ip.txt
+ echo "__external_dns__" > /opt/config/external_dns.txt
+ echo "__ubuntu_1604_image__" > /opt/config/ubuntu_1604_image.txt
+ echo "__centos_7_image__" > /opt/config/centos_7_image.txt
+ echo "__security_group__" > /opt/config/security_group.txt
+ echo "__flavor_medium__" > /opt/config/flavor_medium.txt
+ echo "__dcae_repo__" > /opt/config/remote_repo.txt
+ echo "__mac_addr__" > /opt/config/mac_addr.txt
+ echo "__rand_str__" > /opt/config/rand_str.txt
+
+ # Download and run install script
+ curl -k __nexus_repo__/org.onap.demo/boot/__artifacts_version__/dcae2_install.sh -o /opt/dcae2_install.sh
+ cd /opt
+ chmod +x dcae2_install.sh
+ ./dcae2_install.sh
\ No newline at end of file