modify robot_vm for nbi ip
[demo.git] / heat / ONAP / onap_openstack.yaml
index 676a846..4e8f91d 100644 (file)
@@ -201,6 +201,14 @@ parameters:
     type: string
   openo_ip_addr:
     type: string
+  music_ip_addr:
+    type: string
+  oof_ip_addr:
+    type: string
+  aaf_ip_addr:
+    type: string
+  nbi_ip_addr:
+    type: string
 
   ###########################
   #                         #
@@ -208,6 +216,10 @@ parameters:
   #                         #
   ###########################
 
+  dcae_deployment_profile:
+    type: string
+    description: DCAE deployment profile.  Currently supported profiles R1, R2MVP.
+
   dnsaas_config_enabled:
     type: string
     description: whether the DNSaaS configuration section is enabled
@@ -282,6 +294,10 @@ parameters:
     type: string
   vnfsdk_repo:
     type: string
+  music_repo:
+    type: string
+  nbi_repo:
+    type: string
 
   ################################
   #                              #
@@ -307,6 +323,8 @@ parameters:
     type: string
   sdc_docker:
     type: string
+  sdc_wfd_docker:
+    type: string
   sdnc_docker:
     type: string
   vid_docker:
@@ -325,8 +343,19 @@ parameters:
     type: string
   cli_docker:
     type: string
+  music_docker:
+    type: string
+  oof_docker:
+    type: string
+  aaf_docker:
+    type: string
+  nbi_docker:
+    type: string
+
   vfc_nokia_docker:
     type: string
+  vfc_nokiav2_docker:
+    type: string
   vfc_ztevnfmdriver_docker:
     type: string
   vfc_ztesdncdriver_docker:
@@ -355,6 +384,15 @@ parameters:
     type: string
   vfc_wfengine_activiti_docker:
     type: string
+  vfc_multivimproxy_docker:
+    type: string
+
+  cbam_username:
+    type: string
+  cbam_password:
+    type: string
+  cbam_ip:
+    type: string
 
   aai_branch:
     type: string
@@ -380,7 +418,10 @@ parameters:
     type: string
   vnfsdk_branch:
     type: string
-
+  music_branch:
+    type: string
+  nbi_branch:
+    type: string
 
 #############
 #           #
@@ -522,6 +563,10 @@ resources:
             __vid_ip_addr__: { get_param: vid_ip_addr }
             __clamp_ip_addr__: { get_param: clamp_ip_addr }
             __openo_ip_addr__: { get_param: openo_ip_addr }
+            __music_ip_addr__: { get_param: music_ip_addr }
+            __oof_ip_addr__: { get_param: oof_ip_addr }
+            __aaf_ip_addr__: { get_param: aaf_ip_addr }
+            __nbi_ip_addr__: { get_param: nbi_ip_addr }
             __cloud_env__: { get_param: cloud_env }
             __external_dns__: { get_param: external_dns }
             __dns_forwarder__: { get_param: dns_forwarder }
@@ -549,6 +594,10 @@ resources:
             echo "__vid_ip_addr__" > /opt/config/vid_ip_addr.txt
             echo "__clamp_ip_addr__" > /opt/config/clamp_ip_addr.txt
             echo "__openo_ip_addr__" > /opt/config/openo_ip_addr.txt
+            echo "__music_ip_addr__" > /opt/config/music_ip_addr.txt
+            echo "__oof_ip_addr__" > /opt/config/oof_ip_addr.txt
+            echo "__aaf_ip_addr__" > /opt/config/aaf_ip_addr.txt
+            echo "__nbi_ip_addr__" > /opt/config/nbi_ip_addr.txt
             echo "__external_dns__" > /opt/config/external_dns.txt
             echo "__dns_forwarder__" > /opt/config/dns_forwarder.txt
 
@@ -906,8 +955,13 @@ resources:
             __vid_ip_addr__: { get_param: vid_ip_addr }
             __clamp_ip_addr__: { get_param: clamp_ip_addr }
             __openo_ip_addr__: { get_param: openo_ip_addr }
+            __music_ip_addr__: { get_param: music_ip_addr }
+            __oof_ip_addr__: { get_param: oof_ip_addr }
+            __aaf_ip_addr__: { get_param: aaf_ip_addr }
+            __nbi_ip_addr__: { get_param: nbi_ip_addr }
             __external_dns__: { get_param: external_dns }
-            __vm_image_name__: { get_param: ubuntu_1404_image }
+            __ubuntu_1404_image__: { get_param: ubuntu_1404_image }
+            __ubuntu_1604_image__: { get_param: ubuntu_1604_image }
             __vm_flavor__: { get_param: flavor_medium }
             __public_net_id__: { get_param: public_net_id }
             __script_version__: { get_param: artifacts_version }
@@ -941,14 +995,21 @@ resources:
             echo "__policy_ip_addr__" > /opt/config/policy_ip_addr.txt
             echo "__portal_ip_addr__" > /opt/config/portal_ip_addr.txt
             echo "__sdc_ip_addr__" > /opt/config/sdc_ip_addr.txt
+            echo "__sdc_ip_addr__" > /opt/config/sdc_be_ip_addr.txt
+            echo "__sdc_ip_addr__" > /opt/config/sdc_fe_ip_addr.txt
             echo "__sdnc_ip_addr__" > /opt/config/sdnc_ip_addr.txt
             echo "__vid_ip_addr__" > /opt/config/vid_ip_addr.txt
             echo "__clamp_ip_addr__" > /opt/config/clamp_ip_addr.txt
             echo "__openo_ip_addr__" > /opt/config/openo_ip_addr.txt
+            echo "__music_ip_addr__" > /opt/config/music_ip_addr.txt
+            echo "__oof_ip_addr__" > /opt/config/oof_ip_addr.txt
+            echo "__aaf_ip_addr__" > /opt/config/aaf_ip_addr.txt
+            echo "__nbi_ip_addr__" > /opt/config/nbi_ip_addr.txt
             echo "__cloud_env__" > /opt/config/cloud_env.txt
             echo "__external_dns__" > /opt/config/external_dns.txt
-            echo "__vm_image_name__" > /opt/config/vm_image_name.txt
             echo "__vm_flavor__" > /opt/config/vm_flavor.txt
+            echo "__ubuntu_1404_image__" > /opt/config/ubuntu_1404_image.txt
+            echo "__ubuntu_1604_image__" > /opt/config/ubuntu_1604_image.txt
             echo "__script_version__" > /opt/config/script_version.txt
             echo "__public_net_id__" > /opt/config/public_net_id.txt
             echo "__robot_repo__" > /opt/config/remote_repo.txt
@@ -1147,6 +1208,7 @@ resources:
             __mr_ip_addr__: { get_param: mr_ip_addr }
             __private_ip__: { get_param: sdc_ip_addr }
             __docker_version__: { get_param: sdc_docker }
+            __sdc_wfd_docker__: { get_param: sdc_wfd_docker }
             __gerrit_branch__: { get_param: sdc_branch }
             __cloud_env__: { get_param: cloud_env }
             __external_dns__: { get_param: external_dns }
@@ -1166,6 +1228,7 @@ resources:
             echo "__artifacts_version__" > /opt/config/artifacts_version.txt
             echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
             echo "__docker_version__" > /opt/config/docker_version.txt
+            echo "__sdc_wfd_docker__" > /opt/config/sdc_wfd_docker.txt
             echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
             echo "__cloud_env__" > /opt/config/cloud_env.txt
             echo "__external_dns__" > /opt/config/external_dns.txt
@@ -1530,7 +1593,12 @@ resources:
             __esr_docker__: { get_param: esr_docker }
             __vnfsdk_repo__: { get_param: vnfsdk_repo }
             __vfc_nokia_docker__: { get_param: vfc_nokia_docker }
+            __vfc_nokiav2_docker__: { get_param: vfc_nokiav2_docker }
+            __cbam_ip__: { get_param: cbam_ip }
+            __cbam_username__: { get_param: cbam_username }
+            __cbam_password__: { get_param: cbam_password }
             __vfc_ztevnfmdriver_docker__: { get_param: vfc_ztevnfmdriver_docker }
+            __vfc_multivimproxy_docker__: { get_param: vfc_multivimproxy_docker }
             __vfc_ztesdncdriver_docker__: { get_param: vfc_ztesdncdriver_docker }
             __vfc_vnfres_docker__: { get_param: vfc_vnfres_docker }
             __vfc_vnfmgr_docker__: { get_param: vfc_vnfmgr_docker }
@@ -1564,8 +1632,13 @@ resources:
             echo "__uui_docker__" > /opt/config/uui_docker.txt
             echo "__esr_docker__" > /opt/config/esr_docker.txt
             echo "__vnfsdk_repo__" > /opt/config/vnfsdk_repo.txt
+            echo "__cbam_ip__" > /opt/config/cbam_ip.txt
+            echo "__cbam_username__" > /opt/config/cbam_username.txt
+            echo "__cbam_password__" > /opt/config/cbam_password.txt
 
             echo "export NOKIA_DOCKER_VER=__vfc_nokia_docker__" >> /opt/config/vfc_docker.txt
+            echo "export NOKIAV2_DOCKER_VER=__vfc_nokiav2_docker__" >> /opt/config/vfc_docker.txt
+            echo "export MULTIVIMPROXY_DOCKER_VER=__vfc_multivimproxy_docker__" >> /opt/config/vfc_docker.txt
             echo "export ZTEVNFMDRIVER_DOCKER_VER=__vfc_ztevnfmdriver_docker__" >> /opt/config/vfc_docker.txt
             echo "export ZTESDNCDRIVER_DOCKER_VER=__vfc_ztesdncdriver_docker__" >> /opt/config/vfc_docker.txt
             echo "export VNFRES_DOCKER_VER=__vfc_vnfres_docker__" >> /opt/config/vfc_docker.txt
@@ -1623,7 +1696,7 @@ resources:
     type: OS::Nova::Server
     properties:
       image: { get_param: ubuntu_1604_image }
-      flavor: { get_param: flavor_small }
+      flavor: { get_param: flavor_large }
       name:
         str_replace:
           template: base-dcae-bootstrap
@@ -1647,6 +1720,7 @@ resources:
             __nexus_username__: { get_param: nexus_username }
             __nexus_password__: { get_param: nexus_password }
             # conf for the ONAP environment where the DCAE bootstrap vm/conatiner runs
+            __dcae_deployment_profile__: { get_param: dcae_deployment_profile }
             __mac_addr__: { get_attr: [dcae_c_private_port, mac_address] }
             __dcae_ip_addr__: { get_param: dcae_ip_addr }
             __dcae_float_ip__: { get_attr: [dcae_c_floating_ip, floating_ip_address] }
@@ -1718,6 +1792,7 @@ resources:
             echo "__nexus_password__" > /opt/config/nexus_password.txt
             echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
             # conf for the ONAP environment where the DCAE bootstrap vm/conatiner runs
+            echo "__dcae_deployment_profile__" > /opt/config/dcae_deployment_profile.txt
             echo "__mac_addr__" > /opt/config/mac_addr.txt
             echo "__dcae_ip_addr__" > /opt/config/dcae_ip_addr.txt
             echo "__dcae_float_ip__" > /opt/config/dcae_float_ip.txt
@@ -1756,6 +1831,7 @@ resources:
             echo "__policy_ip_addr__" > /opt/config/policy_ip_addr.txt
             echo "__sdc_ip_addr__" > /opt/config/sdc_ip_addr.txt
             echo "__openo_ip_addr__" > /opt/config/openo_ip_addr.txt
+            echo "__openo_ip_addr__" > /opt/config/msb_ip_addr.txt
             echo "__aai1_ip_addr__" > /opt/config/aai1_ip_addr.txt
             echo "__aai2_ip_addr__" > /opt/config/aai2_ip_addr.txt
             # floating IPs
@@ -1773,3 +1849,262 @@ resources:
             cd /opt
             chmod +x dcae2_install.sh
             ./dcae2_install.sh > /tmp/dcae2_install.log 2>&1
+
+
+  # MUSIC instantiation
+  music_private_port:
+    type: OS::Neutron::Port
+    properties:
+      network: { get_resource: oam_onap }
+      fixed_ips: [{"subnet": { get_resource: oam_onap_subnet }, "ip_address": { get_param: music_ip_addr }}]
+      security_groups:
+      - { get_resource: onap_sg }
+
+  music_floating_ip:
+    type: OS::Neutron::FloatingIP
+    properties:
+      floating_network_id: { get_param: public_net_id }
+      port_id: { get_resource: music_private_port }
+
+  music_vm:
+    type: OS::Nova::Server
+    properties:
+      image: { get_param: ubuntu_1404_image }
+      flavor: { get_param: flavor_large }
+      name:
+        str_replace:
+          template: base-music
+          params:
+            base: { get_param: vm_base_name }
+      key_name: { get_resource: vm_key }
+      networks:
+        - port: { get_resource: music_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 }
+            __docker_version__: { get_param: music_docker }
+            __music_repo__: { get_param: music_repo }
+            __gerrit_branch__: { get_param: music_branch }
+            __cloud_env__: { get_param: cloud_env }
+            __external_dns__: { get_param: external_dns }
+          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 "__artifacts_version__" > /opt/config/artifacts_version.txt
+            echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
+            echo "__docker_version__" > /opt/config/docker_version.txt
+            echo "__music_repo__" > /opt/config/remote_repo.txt
+            echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
+            echo "__cloud_env__" > /opt/config/cloud_env.txt
+            echo "__external_dns__" > /opt/config/external_dns.txt
+
+            # Download and run install script
+            curl -k __nexus_repo__/org.onap.demo/boot/__artifacts_version__/music_install.sh -o /opt/music_install.sh
+            cd /opt
+            chmod +x music_install.sh
+            ./music_install.sh
+
+
+  # OOF instantiation
+  oof_private_port:
+    type: OS::Neutron::Port
+    properties:
+      network: { get_resource: oam_onap }
+      fixed_ips: [{"subnet": { get_resource: oam_onap_subnet }, "ip_address": { get_param: oof_ip_addr }}]
+      security_groups:
+      - { get_resource: onap_sg }
+
+  oof_floating_ip:
+    type: OS::Neutron::FloatingIP
+    properties:
+      floating_network_id: { get_param: public_net_id }
+      port_id: { get_resource: oof_private_port }
+
+  oof_vm:
+    type: OS::Nova::Server
+    properties:
+      image: { get_param: ubuntu_1604_image }
+      flavor: { get_param: flavor_large }
+      name:
+        str_replace:
+          template: base-oof
+          params:
+            base: { get_param: vm_base_name }
+      key_name: { get_resource: vm_key }
+      networks:
+        - port: { get_resource: oof_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 }
+            __docker_version__: { get_param: oof_docker }
+            __cloud_env__: { get_param: cloud_env }
+            __external_dns__: { get_param: external_dns }
+          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 "__artifacts_version__" > /opt/config/artifacts_version.txt
+            echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
+            echo "__docker_version__" > /opt/config/docker_version.txt
+            echo "__cloud_env__" > /opt/config/cloud_env.txt
+            echo "__external_dns__" > /opt/config/external_dns.txt
+
+            # Download and run install script
+            curl -k __nexus_repo__/org.onap.demo/boot/__artifacts_version__/oof_install.sh -o /opt/oof_install.sh
+            cd /opt
+            chmod +x oof_install.sh
+            ./oof_install.sh
+
+
+  # AAF instantiation
+  aaf_private_port:
+    type: OS::Neutron::Port
+    properties:
+      network: { get_resource: oam_onap }
+      fixed_ips: [{"subnet": { get_resource: oam_onap_subnet }, "ip_address": { get_param: aaf_ip_addr }}]
+      security_groups:
+      - { get_resource: onap_sg }
+
+  aaf_floating_ip:
+    type: OS::Neutron::FloatingIP
+    properties:
+      floating_network_id: { get_param: public_net_id }
+      port_id: { get_resource: aaf_private_port }
+
+  aaf_vm:
+    type: OS::Nova::Server
+    properties:
+      image: { get_param: ubuntu_1404_image }
+      flavor: { get_param: flavor_medium }
+      name:
+        str_replace:
+          template: base-aaf
+          params:
+            base: { get_param: vm_base_name }
+      key_name: { get_resource: vm_key }
+      networks:
+        - port: { get_resource: aaf_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 }
+            __docker_version__: { get_param: aaf_docker }
+            __cloud_env__: { get_param: cloud_env }
+            __external_dns__: { get_param: external_dns }
+          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 "__artifacts_version__" > /opt/config/artifacts_version.txt
+            echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
+            echo "__docker_version__" > /opt/config/docker_version.txt
+            echo "__cloud_env__" > /opt/config/cloud_env.txt
+            echo "__external_dns__" > /opt/config/external_dns.txt
+
+            # Download and run install script
+            curl -k __nexus_repo__/org.onap.demo/boot/__artifacts_version__/aaf_install.sh -o /opt/aaf_install.sh
+            cd /opt
+            chmod +x aaf_install.sh
+            ./aaf_install.sh
+
+  # NBI instantiation
+  nbi_private_port:
+    type: OS::Neutron::Port
+    properties:
+      network: { get_resource: oam_onap }
+      fixed_ips: [{"subnet": { get_resource: oam_onap_subnet }, "ip_address": { get_param: nbi_ip_addr }}]
+      security_groups:
+      - { get_resource: onap_sg }
+
+  nbi_floating_ip:
+    type: OS::Neutron::FloatingIP
+    properties:
+      floating_network_id: { get_param: public_net_id }
+      port_id: { get_resource: nbi_private_port }
+
+  nbi_vm:
+    type: OS::Nova::Server
+    properties:
+      image: { get_param: ubuntu_1604_image }
+      flavor: { get_param: flavor_small }
+      name:
+        str_replace:
+          template: base-nbi
+          params:
+            base: { get_param: vm_base_name }
+      key_name: { get_resource: vm_key }
+      networks:
+        - port: { get_resource: nbi_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 }
+            __docker_version__: { get_param: nbi_docker }
+            __nbi_repo__: { get_param: nbi_repo }
+            __gerrit_branch__: { get_param: nbi_branch }
+            __cloud_env__: { get_param: cloud_env }
+            __external_dns__: { get_param: external_dns }
+          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 "__artifacts_version__" > /opt/config/artifacts_version.txt
+            echo "__dns_ip_addr__" > /opt/config/dns_ip_addr.txt
+            echo "__docker_version__" > /opt/config/docker_version.txt
+            echo "__nbi_repo__" > /opt/config/remote_repo.txt
+            echo "__gerrit_branch__" > /opt/config/gerrit_branch.txt
+            echo "__cloud_env__" > /opt/config/cloud_env.txt
+            echo "__external_dns__" > /opt/config/external_dns.txt
+
+            # Download and run install script
+            curl -k __nexus_repo__/org.onap.demo/boot/__artifacts_version__/nbi_install.sh -o /opt/nbi_install.sh
+            cd /opt
+            chmod +x nbi_install.sh
+            ./nbi_install.sh