Correct path of JAR files
[demo.git] / heat / vLBMS / base_vlb.yaml
index 44602a2..e96cf62 100644 (file)
@@ -149,14 +149,6 @@ parameters:
     type: string
     label: Public key
     description: Public key to be installed on the compute instance
-  repo_url_blob:
-    type: string
-    label: Repository URL
-    description: URL of the repository that hosts the demo packages
-  repo_url_artifacts:
-    type: string
-    label: Repository URL
-    description: URL of the repository that hosts the demo packages
   demo_artifacts_version:
     type: string
     label: Artifacts version used in demo vnfs
@@ -173,6 +165,16 @@ parameters:
     type: string
     label: Cloud environment
     description: Cloud environment (e.g., openstack, rackspace)
+  nexus_artifact_repo:
+    type: string
+    description: Root URL for the Nexus repository for Maven artifacts.
+    default: "https://nexus.onap.org"
+  sec_group:
+    type: string
+    description: ONAP Security Group
+  dns_enabled:
+    type: string
+    description: Enable/disable DNS (by default use true)
 
 #############
 #           #
@@ -228,18 +230,24 @@ resources:
     properties:
       network: { get_resource: vlb_private_network }
       fixed_ips: [{"subnet": { get_resource: vlb_private_subnet }, "ip_address": { get_param: vlb_private_ip_0 }}]
+      security_groups:
+      - { get_param: sec_group }
 
   vlb_private_1_port:
     type: OS::Neutron::Port
     properties:
       network: { get_param: onap_private_net_id }
       fixed_ips: [{"subnet": { get_param: onap_private_subnet_id }, "ip_address": { get_param: vlb_private_ip_1 }}]
+      security_groups:
+      - { get_param: sec_group }
 
   vlb_private_2_port:
     type: OS::Neutron::Port
     properties:
       network: { get_resource: pktgen_private_network }
       fixed_ips: [{"subnet": { get_resource: pktgen_private_subnet }, "ip_address": { get_param: vlb_private_ip_2 }}]
+      security_groups:
+      - { get_param: sec_group }
 
   vlb_0:
     type: OS::Nova::Server
@@ -269,8 +277,6 @@ resources:
             __pktgen_ipaddr__: { get_param: vpg_private_ip_0 }
             __vdns_ipaddr__: { get_param: vdns_private_ip_0 }
             __oam_private_ipaddr__: { get_param: vlb_private_ip_1 }
-            __repo_url_blob__: { get_param: repo_url_blob }
-            __repo_url_artifacts__: { get_param: repo_url_artifacts }
             __demo_artifacts_version__: { get_param: demo_artifacts_version }
             __nb_api_version__: { get_param: nb_api_version }
             __install_script_version__: { get_param: install_script_version }
@@ -279,6 +285,7 @@ resources:
             __pktgen_private_net_cidr__: { get_param: pktgen_private_net_cidr }
             __pktgen_mac__: { get_attr: [vpg_private_0_port, mac_address] }
             __cloud_env__: { get_param: cloud_env }
+            __nexus_artifact_repo__: { get_param: nexus_artifact_repo }
           template: |
             #!/bin/bash
 
@@ -295,8 +302,6 @@ resources:
             echo "__pktgen_ipaddr__" > /opt/config/pktgen_ipaddr.txt
             echo "__vdns_ipaddr__" > /opt/config/vdns_ipaddr.txt
             echo "__oam_private_ipaddr__" > /opt/config/oam_private_ipaddr.txt
-            echo "__repo_url_blob__" > /opt/config/repo_url_blob.txt
-            echo "__repo_url_artifacts__" > /opt/config/repo_url_artifacts.txt
             echo "__demo_artifacts_version__" > /opt/config/demo_artifacts_version.txt
             echo "__nb_api_version__" > /opt/config/nb_api_version.txt
             echo "__install_script_version__" > /opt/config/install_script_version.txt
@@ -305,9 +310,14 @@ resources:
             echo "__onap_private_net_cidr__" > /opt/config/onap_private_net_cidr.txt
             echo "__pktgen_mac__" > /opt/config/pktgen_mac.txt
             echo "__cloud_env__" > /opt/config/cloud_env.txt
+            echo "__nexus_artifact_repo__" > /opt/config/nexus_artifact_repo.txt
 
             # Download and run install script
-            curl -k __repo_url_blob__/org.onap.demo/vnfs/vlbms/__install_script_version__/v_lb_install.sh -o /opt/v_lb_install.sh
+            apt-get update
+            apt-get -y install unzip
+            if [[ "__install_script_version__" =~ "SNAPSHOT" ]]; then REPO=snapshots; else REPO=releases; fi
+            curl -k -L "__nexus_artifact_repo__/service/local/artifact/maven/redirect?r=${REPO}&g=org.onap.demo.vnf.vlbms&a=vlbms-scripts&e=zip&v=__install_script_version__" -o /opt/vlbms-scripts-__install_script_version__.zip
+            unzip -j /opt/vlbms-scripts-__install_script_version__.zip -d /opt v_lb_install.sh
             cd /opt
             chmod +x v_lb_install.sh
             ./v_lb_install.sh
@@ -318,12 +328,16 @@ resources:
     properties:
       network: { get_resource: vlb_private_network }
       fixed_ips: [{"subnet": { get_resource: vlb_private_subnet }, "ip_address": { get_param: vdns_private_ip_0 }}]
+      security_groups:
+      - { get_param: sec_group }
 
   vdns_private_1_port:
     type: OS::Neutron::Port
     properties:
       network: { get_param: onap_private_net_id }
       fixed_ips: [{"subnet": { get_param: onap_private_subnet_id }, "ip_address": { get_param: vdns_private_ip_1 }}]
+      security_groups:
+      - { get_param: sec_group }
 
   vdns_0:
     type: OS::Nova::Server
@@ -346,13 +360,12 @@ resources:
             __lb_to_pktgen_if__: { get_param: vlb_private_ip_2}
             __local_private_ipaddr__: { get_param: vdns_private_ip_0 }
             __oam_private_ipaddr__: { get_param: vdns_private_ip_1 }
-            __repo_url_blob__: { get_param: repo_url_blob }
-            __repo_url_artifacts__: { get_param: repo_url_artifacts }
             __nb_api_version__: { get_param: nb_api_version }
             __install_script_version__: { get_param: install_script_version }
             __vlb_private_net_cidr__: { get_param: vlb_private_net_cidr }
             __onap_private_net_cidr__: { get_param: onap_private_net_cidr }
             __cloud_env__: { get_param: cloud_env }
+            __nexus_artifact_repo__: { get_param: nexus_artifact_repo }
           template: |
             #!/bin/bash
 
@@ -363,16 +376,19 @@ resources:
             echo "__lb_to_pktgen_if__" > /opt/config/lb_to_pktgen_if.txt
             echo "__local_private_ipaddr__" > /opt/config/local_private_ipaddr.txt
             echo "__oam_private_ipaddr__" > /opt/config/oam_private_ipaddr.txt
-            echo "__repo_url_blob__" > /opt/config/repo_url_blob.txt
-            echo "__repo_url_artifacts__" > /opt/config/repo_url_artifacts.txt
             echo "__nb_api_version__" > /opt/config/nb_api_version.txt
             echo "__install_script_version__" > /opt/config/install_script_version.txt
             echo "__vlb_private_net_cidr__" > /opt/config/vlb_private_net_cidr.txt
             echo "__onap_private_net_cidr__" > /opt/config/onap_private_net_cidr.txt
             echo "__cloud_env__" > /opt/config/cloud_env.txt
+            echo "__nexus_artifact_repo__" > /opt/config/nexus_artifact_repo.txt
 
             # Download and run install script
-            curl -k __repo_url_blob__/org.onap.demo/vnfs/vlbms/__install_script_version__/v_dns_install.sh -o /opt/v_dns_install.sh
+            apt-get update
+            apt-get -y install unzip
+            if [[ "__install_script_version__" =~ "SNAPSHOT" ]]; then REPO=snapshots; else REPO=releases; fi
+            curl -k -L "__nexus_artifact_repo__/service/local/artifact/maven/redirect?r=${REPO}&g=org.onap.demo.vnf.vlbms&a=vlbms-scripts&e=zip&v=__install_script_version__" -o /opt/vlbms-scripts-__install_script_version__.zip
+            unzip -j /opt/vlbms-scripts-__install_script_version__.zip -d /opt v_dns_install.sh
             cd /opt
             chmod +x v_dns_install.sh
             ./v_dns_install.sh
@@ -383,12 +399,16 @@ resources:
     properties:
       network: { get_resource: pktgen_private_network }
       fixed_ips: [{"subnet": { get_resource: pktgen_private_subnet }, "ip_address": { get_param: vpg_private_ip_0 }}]
+      security_groups:
+      - { get_param: sec_group }
 
   vpg_private_1_port:
     type: OS::Neutron::Port
     properties:
       network: { get_param: onap_private_net_id }
       fixed_ips: [{"subnet": { get_param: onap_private_subnet_id }, "ip_address": { get_param: vpg_private_ip_1 }}]
+      security_groups:
+      - { get_param: sec_group }
 
   vpg_0:
     type: OS::Nova::Server
@@ -405,8 +425,6 @@ resources:
       user_data:
         str_replace:
           params:
-            __repo_url_blob__: { get_param: repo_url_blob }
-            __repo_url_artifacts__: { get_param: repo_url_artifacts }
             __local_private_ipaddr__: { get_param: vpg_private_ip_0 }
             __oam_private_ipaddr__: { get_param: vpg_private_ip_1 }
             __onap_private_net_cidr__: { get_param: onap_private_net_cidr }
@@ -418,6 +436,7 @@ resources:
             __pg_int__: { get_param: pg_int }
             __vlb_mac__: { get_attr: [vlb_private_2_port, mac_address] }
             __cloud_env__: { get_param: cloud_env }
+            __nexus_artifact_repo__: { get_param: nexus_artifact_repo }
           template: |
             #!/bin/bash
 
@@ -428,17 +447,20 @@ resources:
             echo "__local_private_ipaddr__" > /opt/config/local_private_ipaddr.txt
             echo "__pktgen_private_net_cidr__" > /opt/config/pktgen_private_net_cidr.txt
             echo "__vlb_ipaddr__" > /opt/config/vlb_ipaddr.txt
-            echo "__repo_url_blob__" > /opt/config/repo_url_blob.txt
-            echo "__repo_url_artifacts__" > /opt/config/repo_url_artifacts.txt
             echo "__demo_artifacts_version__" > /opt/config/demo_artifacts_version.txt
             echo "__nb_api_version__" > /opt/config/nb_api_version.txt
             echo "__install_script_version__" > /opt/config/install_script_version.txt
             echo "__pg_int__" > /opt/config/pg_int.txt
             echo "__vlb_mac__" > /opt/config/vlb_mac.txt
             echo "__cloud_env__" > /opt/config/cloud_env.txt
+            echo "__nexus_artifact_repo__" > /opt/config/nexus_artifact_repo.txt
 
             # Download and run install script
-            curl -k __repo_url_blob__/org.onap.demo/vnfs/vlbms/__install_script_version__/v_packetgen_install.sh -o /opt/v_packetgen_install.sh
+            apt-get update
+            apt-get -y install unzip
+            if [[ "__install_script_version__" =~ "SNAPSHOT" ]]; then REPO=snapshots; else REPO=releases; fi
+            curl -k -L "__nexus_artifact_repo__/service/local/artifact/maven/redirect?r=${REPO}&g=org.onap.demo.vnf.vlbms&a=vlbms-scripts&e=zip&v=__install_script_version__" -o /opt/vlbms-scripts-__install_script_version__.zip
+            unzip -j /opt/vlbms-scripts-__install_script_version__.zip -d /opt v_packetgen_install.sh
             cd /opt
             chmod +x v_packetgen_install.sh
             ./v_packetgen_install.sh
\ No newline at end of file