Make distribution-check job an ODL-releng templated job
[releng/builder.git] / jjb / ovsdb / include-raw-openstack-ci.sh
index 948b5ec8bc1306ad9ab19e3e79c5343e6d9116f9..feabea0b2fc6d20315e88e4eb82eb622e8923bba 100644 (file)
@@ -16,6 +16,14 @@ sudo mkdir -p /opt/stack/new
 sudo chown -R jenkins:jenkins /opt/stack/new
 sudo bash -c 'echo "stack ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers'
 
+# We need to install some scripts from openstack/os-testr project
+cd ~
+echo "Setting up infra scripts"
+sudo mkdir -p /usr/local/jenkins/slave_scripts
+git clone https://github.com/openstack/os-testr.git
+cd os-testr/os_testr
+sudo cp subunit2html.py /usr/local/jenkins/slave_scripts
+
 # Save existing WORKSPACE
 SAVED_WORKSPACE=$WORKSPACE
 export WORKSPACE=~/workspace
@@ -63,6 +71,24 @@ DEVSTACK_LOCAL_CONFIG+="ODL_JAVA_MIN_MEM=512m;"
 DEVSTACK_LOCAL_CONFIG+="ODL_JAVA_MAX_MEM=784m;"
 DEVSTACK_LOCAL_CONFIG+="ODL_JAVA_MAX_PERM_MEM=784m;"
 
+# Set ODL_URL_PREFIX if "nexus proxy" is provided
+URL_PREFIX=${ODLNEXUSPROXY:-https://nexus.opendaylight.org}
+if [ -n "$ODLNEXUSPROXY" ] ; then
+    DEVSTACK_LOCAL_CONFIG+="ODL_URL_PREFIX=$ODLNEXUSPROXY;"
+fi
+
+## # Trim down the boot wait time
+## export ODL_BOOT_WAIT=30
+
+# Use specific build, if asked to do so
+if [ "${ODL_VERSION}" == "beryllium" ] ; then
+    DEVSTACK_LOCAL_CONFIG+="ODL_RELEASE=beryllium-snapshot-0.4.0;"
+elif [ "${ODL_VERSION}" == "lithium" ] ; then
+    DEVSTACK_LOCAL_CONFIG+="ODL_RELEASE=lithium-snapshot-0.3.1;"
+elif [ "${ODL_VERSION}" == "helium" ] ; then
+    DEVSTACK_LOCAL_CONFIG+="ODL_RELEASE=helium;"
+fi
+
 # And this runs devstack-gate
 export PYTHONUNBUFFERED=true
 export DEVSTACK_GATE_TIMEOUT=120
@@ -75,14 +101,14 @@ fi
 # Because we are testing a non standard project, add
 # our project repository. This makes zuul do the right
 # reference magic for testing changes.
-export PROJECTS="stackforge/networking-odl $PROJECTS"
+export PROJECTS="openstack/networking-odl $PROJECTS"
 # Note the actual url here is somewhat irrelevant because it
 # caches in nodepool, however make it a valid url for
 # documentation purposes.
-if [ "$GERRIT_PROJECT" == "stackforge/networking-odl" ]; then
+if [ "$GERRIT_PROJECT" == "openstack/networking-odl" ]; then
     export DEVSTACK_LOCAL_CONFIG+="enable_plugin networking-odl https://$GERRIT_HOST/$GERRIT_PROJECT $GERRIT_REFSPEC"
 else
-    export DEVSTACK_LOCAL_CONFIG+="enable_plugin networking-odl https://git.openstack.org/stackforge/networking-odl"
+    export DEVSTACK_LOCAL_CONFIG+="enable_plugin networking-odl https://git.openstack.org/openstack/networking-odl"
 fi
 
 
@@ -92,16 +118,12 @@ export KEEP_LOCALRC=1
 # Unset this because it's set by the underlying Jenkins node ...
 unset GIT_BASE
 
-# Only run certain tempest tests
-export DEVSTACK_GATE_TEMPEST_REGEX="tempest.api.network.test_networks \
-                                    tempest.api.network.test_networks_negative"
+# By default, only run certain tempest tests
+export DEVSTACK_GATE_TEMPEST_REGEX=${TEMPEST_REGEX:-"tempest.api.network.test_networks_negative tempest.api.network.test_networks.NetworksTestJSON"}
 
 # Specifically set the services we want
 #OVERRIDE_ENABLED_SERVICES=q-svc,q-dhcp,q-l3,q-meta,quantum,key,g-api,g-reg,n-api,n-crt,n-obj,n-cpu,n-cond,n-sch,n-xvnc,n-cauth,h-eng,h-api,h-api-cfn,h-api-cw,rabbit,tempest,mysql
 
-# Trim down the boot wait time
-export ODL_BOOT_WAIT=30
-
 echo "Copying devstack-vm-gate-wrap.sh"
 cp devstack-gate/devstack-vm-gate-wrap.sh ./safe-devstack-vm-gate-wrap.sh
 echo "Running safe-devstack-vm-gate-wrap.sh"
@@ -113,9 +135,11 @@ DGRET=$?
 OS_WORKSPACE=$WORKSPACE
 export WORKSPACE=$SAVED_WORKSPACE
 
-# Copy all the logs
+# Copy and display all the logs
+cat /opt/stack/new/devstacklog*
+ls /opt/stack/; ls /opt/stack/new; ls /opt/stack/new/opendaylight;
 cp -r $OS_WORKSPACE/logs $WORKSPACE
-cp -a /opt/stack/new/logs/q-odl-karaf* $WORKSPACE/logs
+cp -a /opt/stack/new/logs/screen-odl-karaf* $WORKSPACE/logs
 mkdir -p $WORKSPACE/logs/opendaylight
 cp -a /opt/stack/new/opendaylight/distribution*/etc $WORKSPACE/logs/opendaylight
 # Unzip the logs to make them easier to view