Merge "Add job to automatically cleanup old images"
authorAnil Belur <abelur@linuxfoundation.org>
Fri, 24 Mar 2017 02:05:53 +0000 (02:05 +0000)
committerGerrit Code Review <gerrit@opendaylight.org>
Fri, 24 Mar 2017 02:05:53 +0000 (02:05 +0000)
42 files changed:
docs/cloud-images.rst
docs/jenkins.rst
jenkins-scripts/create_jenkins_user.sh
jjb/autorelease/include-raw-autorelease-maven-deploy.sh
jjb/autorelease/include-raw-autorelease-notify-build-failure.sh
jjb/groupbasedpolicy/groupbasedpolicy-csit-1node-openstack.yaml
jjb/include-raw-deploy-archives.sh
jjb/integration/distribution/distribution-check.yaml [new file with mode: 0644]
jjb/integration/distribution/distribution.yaml
jjb/integration/include-raw-integration-deploy-openstack-run-test.sh
jjb/integration/include-raw-integration-get-bundle-vars.sh
jjb/integration/include-raw-integration-install-robotframework.sh
jjb/integration/integration-macros.yaml
jjb/integration/integration-templates.yaml
jjb/iotdm/iotdm-csit-basic.yaml
jjb/netvirt/netvirt-csit-hwvtep-openstack.yaml
jjb/netvirt/netvirt-csit-multi-openstack.yaml
jjb/netvirt/netvirt-legacy-csit-multi-openstack.yaml
jjb/odlparent/odlparent.yaml
jjb/openflowplugin/openflowplugin-csit-bulk-matic-ds-daily-old.yaml [deleted file]
jjb/openflowplugin/openflowplugin-csit-bulk-matic-ds-daily.yaml [deleted file]
jjb/openflowplugin/openflowplugin-csit-bulkomatic-clustering-daily.yaml
jjb/openflowplugin/openflowplugin-csit-bulkomatic-clustering-perf-daily.yaml
jjb/openflowplugin/openflowplugin-csit-bulkomatic-perf-daily.yaml
jjb/openflowplugin/openflowplugin-csit-cbench-performance-old.yaml [deleted file]
jjb/openflowplugin/openflowplugin-csit-cbench-performance.yaml [deleted file]
jjb/openflowplugin/openflowplugin-csit-clustering.yaml
jjb/openflowplugin/openflowplugin-csit-config-performance-old.yaml [deleted file]
jjb/openflowplugin/openflowplugin-csit-config-performance.yaml [deleted file]
jjb/openflowplugin/openflowplugin-csit-flow-services.yaml
jjb/openflowplugin/openflowplugin-csit-rpc-time-measure-daily-old.yaml [deleted file]
jjb/openflowplugin/openflowplugin-csit-sanity.yaml [moved from jjb/openflowplugin/openflowplugin-csit-rpc-time-measure-daily.yaml with 54% similarity]
jjb/openflowplugin/openflowplugin-csit-scalability.yaml
jjb/openflowplugin/openflowplugin-csit-scale-stats-collection-daily.yaml
jjb/openflowplugin/openflowplugin-patch-test.yaml
jjb/ovsdb/ovsdb-csit-scalability-daily.yaml [deleted file]
jjb/packaging/packaging.yaml
jjb/releng-defaults.yaml
jjb/releng-macros.yaml
jjb/releng-templates-java.yaml
jjb/spectrometer/spectrometer-jobs.yaml
jjb/vtn/vtn-manager-csit-1node-openstack.yaml

index 781d8a17f76268e0465a019a7a8b77efc04df54c..e201cede5dc0052189e75f1a9727969833e64697 100644 (file)
@@ -8,7 +8,9 @@ Following are the list of published images available to be used with Jenkins job
 * CentOS 7 - devstack - 20170221-1719
 * CentOS 7 - devstack - newton - 20170117-0005
 * CentOS 7 - devstack-mitaka - 20170130-0523
+* CentOS 7 - devstack-mitaka - 20170314-2255
 * CentOS 7 - devstack-newton - 20170130-0426
+* CentOS 7 - devstack-newton - 20170314-2256
 * CentOS 7 - docker - 20170117-0003
 * CentOS 7 - docker - 20170120-1434
 * CentOS 7 - java-builder - 20170117-0004
index ae2fb24c7731d79083c333189a50d9f8e2c47f0c..2629946d43a34e92882b0015f44457327a148fac 100644 (file)
@@ -230,8 +230,8 @@ Pool: ODLRPC
       </tr>
 
       <tr class="warning">
-        <td><b>Jenkins Labels</b><br/> ubuntu-trusty-mininet-2c-2g</td>
-        <td><b>Minion Template names</b><br/> ubuntu-trusty-mininet-2c-2g</td>
+        <td><b>Jenkins Labels</b><br/> ubuntu1404-mininet-2c-2g</td>
+        <td><b>Minion Template names</b><br/> ubuntu1404-mininet-2c-2g</td>
         <td><b>Packer Template</b><br/>
         releng/builder/packer/teamplates/mininet.json</td>
         <td><b>Spinup Script</b><br/> releng/builder/jenkins-scripts/mininet-ubuntu.sh</td>
@@ -243,8 +243,8 @@ Pool: ODLRPC
       </tr>
 
       <tr class="warning">
-        <td><b>Jenkins Labels</b><br/> ubuntu-trusty-mininet-ovs-23-2c-2g</td>
-        <td><b>Minion Template names</b><br/> ubuntu-trusty-mininet-ovs-23-2c-2g</td>
+        <td><b>Jenkins Labels</b><br/> ubuntu1404-mininet-ovs-23-2c-2g</td>
+        <td><b>Minion Template names</b><br/> ubuntu1404-mininet-ovs-23-2c-2g</td>
         <td><b>Packer Template</b><br/> releng/builder/packer/templates/mininet-ovs-2.3.json</td>
         <td><b>Spinup Script</b><br/> releng/builder/jenkins-scripts/mininet-ubuntu.sh</td>
       </tr>
@@ -255,8 +255,8 @@ Pool: ODLRPC
       </tr>
 
       <tr class="warning">
-        <td><b>Jenkins Labels</b><br/> ubuntu-trusty-mininet-ovs-25-2c-2g</td>
-        <td><b>Minion Template names</b><br/> ubuntu-trusty-mininet-ovs-25-2c-2g</td>
+        <td><b>Jenkins Labels</b><br/> ubuntu1404-mininet-ovs-25-2c-2g</td>
+        <td><b>Minion Template names</b><br/> ubuntu1404-mininet-ovs-25-2c-2g</td>
         <td><b>Packer Template</b><br/> releng/builder/packer/templates/mininet-ovs-2.5.json</td>
         <td><b>Spinup Script</b><br/> releng/builder/jenkins-scripts/mininet-ubuntu.sh</td>
       </tr>
@@ -297,8 +297,8 @@ Pool: ODLRPC
       </tr>
 
       <tr class="warning">
-        <td><b>Jenkins Labels</b><br/> ubuntu-trusty-gbp-2c-2g</td>
-        <td><b>Minion Template names</b><br/> ubuntu-trusty-gbp-2c-2g</td>
+        <td><b>Jenkins Labels</b><br/> ubuntu1404-gbp-2c-2g</td>
+        <td><b>Minion Template names</b><br/> ubuntu1404-gbp-2c-2g</td>
         <td><b>Packer Template</b><br/> releng/builder/packer/templates/gbp.json</td>
         <td><b>Spinup Script</b><br/> releng/builder/jenkins-scripts/ubuntu-docker-ovs.sh</td>
       </tr>
index 89ffd2da62b8fa3da8f76e8357249e6f92397ec3..6af25dfecbfa2c9099083ccf7a30ac3ad43c1045 100755 (executable)
@@ -28,3 +28,4 @@ cp -r "/home/${OS}/.ssh/authorized_keys" /home/jenkins/.ssh/authorized_keys
 # Generate ssh key for use by Robot jobs
 echo -e 'y\n' | ssh-keygen -N "" -f /home/jenkins/.ssh/id_rsa -t rsa
 chown -R jenkins:jenkins /home/jenkins/.ssh /w
+chmod 700 /home/jenkins/.ssh
index 3efacf878afb88f311de94852a22d46651eb8944..89506c19145b36b37262ccf1c25b94e8db80fe61 100644 (file)
@@ -18,7 +18,7 @@ mkdir -p m2repo/org/opendaylight/
 # in cases where an internal ci system is using multiple NEXUS systems one for artifacts and another for staging,
 # we can override using ODLNEXUS_STAGING_URL to route the staging build to the 2nd server.
 # (most CI setups where a single Nexus server is used, ODLNEXUS_STAGING_URL should be left unset)
-NEXUS_STAGING_URL=${ODLNEXUS_STAGING_URL:-$ODLNEXUSPROXY}
+NEXUS_STAGING_URL=${ODLNEXUS_STAGING_URL:-"http://10.29.8.46:8081"}
 NEXUS_STAGING_PROFILE=${ODLNEXUS_STAGING_PROFILE:-425e43800fea70}
 NEXUS_STAGING_SERVER_ID=${ODLNEXUS_STAGING_SERVER_ID:-"opendaylight.staging"}
 
@@ -28,7 +28,7 @@ rsync -avz --remove-source-files \
            --exclude 'resolver-status.properties' \
            "stage/org/opendaylight" m2repo/org/
 
-"$MVN" -V -B org.sonatype.plugins:nexus-staging-maven-plugin:1.6.2:deploy-staged-repository \
+"$MVN" -V -B org.sonatype.plugins:nexus-staging-maven-plugin:1.6.8:deploy-staged-repository \
     -DrepositoryDirectory="$(pwd)/m2repo" \
     -DnexusUrl="$NEXUS_STAGING_URL" \
     -DstagingProfileId="$NEXUS_STAGING_PROFILE" \
index 597d73a3d815ba29a056b74589224956787ce12e..be274985e8564df3ecd04c7bd3a91b35e945ad11 100644 (file)
@@ -74,12 +74,21 @@ if [ ! -z "${ARTIFACTID}" ] && [[ "${BUILD_STATUS}" != "SUCCESS" ]]; then
           $CONSOLE_LOG > /tmp/error.txt
 
     if [ -n "${PROJECT}" ]; then
-        RELEASE_EMAIL="${RELEASE_EMAIL}, ${PROJECT}-dev@opendaylight.org"
+        RELEASE_EMAIL="${RELEASE_EMAIL}, ${PROJECT}-dev@lists.opendaylight.org"
     fi
 
-    echo "${BODY}" | mail -a /tmp/error.txt \
-        -r "Jenkins <jenkins-dontreply@opendaylight.org>" \
-        -s "${SUBJECT}" "${RELEASE_EMAIL}"
+    # Only send emails in production (releng), not testing (sandbox)
+    if [ "${SILO}" == "releng" ]; then
+        echo "${BODY}" | mail -a /tmp/error.txt \
+            -r "Jenkins <jenkins-dontreply@opendaylight.org>" \
+            -s "${SUBJECT}" "${RELEASE_EMAIL}"
+    elif [ "${SILO}" == "sandbox" ]; then
+        echo "Running in sandbox, not actually sending notification emails"
+        echo "Subject: ${SUBJECT}"
+        echo "Body: ${BODY}"
+    else
+        echo "Not sure how to notify in \"${SILO}\" Jenkins silo"
+    fi
 fi
 
 rm $CONSOLE_LOG
index 7a3c9a6e1ed15d7bd3708c490f3ad8bc16fe8438..7c7913813501d559dcd41ee59da1f8d0c3bbaa66 100644 (file)
       - mitaka:
           openstack-branch: 'stable/mitaka'
           odl-ml2-branch: 'stable/mitaka'
-          odl-ml2-driver-version: 'v1'
       - liberty:
           openstack-branch: 'stable/liberty'
           odl-ml2-branch: 'stable/liberty'
-          odl-ml2-driver-version: 'v1'
 
     schedule: 'H H * * *'
 
-    odl-enable-l3: 'yes'
-
     public-bridge: 'br-int'
 
-    public-physical-network: 'physnet1'
-
-    enable-networking-l2gw: 'no'
-
-    disable-odl-l3-service-plugin: 'no'
-
-    enable-openstack-services: 'q-svc,q-dhcp,q-meta,n-cauth,tempest'
-
-    disable-openstack-services: 'swift,cinder,n-net,q-vpn,n-cpu'
-
-    tenant-network-type: 'vxlan'
+    enable-openstack-plugins: 'networking-odl'
 
     security-group-mode: 'none'
-
-    robot-options: ''
index b0351d1e6b9d230460a5cc94906e3127ada6fa7d..5f1429f7b797d05ca3cdf34210096ecd12552a1e 100644 (file)
@@ -118,6 +118,8 @@ find "$ARCHIVES_DIR" -type f -print0 \
                 | egrep -e ':.*text.*' \
                 | cut -d: -f1 \
                 | xargs -d'\n' -r gzip
+# Compress Java heap dumps using xz
+find "$ARCHIVES_DIR" -type -f -name \*.hprof -print0 | xargs -0 xz
 
 zip -r archives.zip "$JENKINS_HOSTNAME/" > "$ARCHIVES_DIR/_archives-zip.log"
 du -sh archives.zip
diff --git a/jjb/integration/distribution/distribution-check.yaml b/jjb/integration/distribution/distribution-check.yaml
new file mode 100644 (file)
index 0000000..804c463
--- /dev/null
@@ -0,0 +1,78 @@
+---
+- job-template:
+    # Template: distribution-check-{stream}
+    # Goal: Build a patch and make sure it would not break distribution-check jobs for other projects.
+    # Operation: FIXME
+    #            This job template builds a patch, creates a distribution containing
+    #            the patch (making sure dependencies are specified),
+    #            and performs the distribution deploy test.
+
+    name: 'distribution-check-{stream}'
+    disabled: false
+
+    project-type: freestyle
+    node: '{build-node}'
+    concurrent: true
+    jdk: '{jdk}'
+
+    properties:
+      - opendaylight-infra-properties:
+          build-days-to-keep: '{build-days-to-keep}'
+
+    parameters:
+      - opendaylight-infra-parameters:
+          project: '{project}'
+          branch: '{branch}'
+          refspec: 'refs/heads/{branch}'
+          artifacts: '{archive-artifacts} **/dependency_tree.txt **/target/surefire-reports/*-output.txt'
+
+    scm:
+      - integration-gerrit-scm:
+          basedir: 'distribution'
+          refspec: '$GERRIT_REFSPEC'
+          branch: '{branch}'
+
+    wrappers:
+      - opendaylight-infra-wrappers:
+          # Distro-check jobs typically run within 10 - 30 minutes
+          # with 45 minutes being the occassional edge case.
+          # enforce a 60 minute limit to ensure stuck jobs get
+          # cleared up sooner.
+          build-timeout: '60'
+
+    triggers:
+      - gerrit-trigger-patch-submitted:
+          server: '{server-name}'
+          project: '{project}'
+          branch: '{branch}'
+          files: '**'
+
+    builders:
+      - distribution-check-wipe
+      - distribution-check-build-project:
+          pom: 'distribution/pom.xml'
+      - distribution-check-verify-groupid:
+          gerrit-project: 'integration'
+      - distribution-check-delete-snapshots
+      - distribution-check-configure-remotes
+      - distribution-check-repeat-build:
+          dist-pom: 'distribution/pom.xml'
+      - integration-distribution-check
+
+    publishers:
+      - email-notification:
+          email-recipients: '{email-recipients}'
+          email-prefix: '[{project-name}]'
+      - postbuildscript:
+          builders:
+            - shell: |
+                #!/bin/bash
+                mkdir -p $WORKSPACE/archives
+                cp karaf*.log $WORKSPACE/archives
+          script-only-if-succeeded: false
+          script-only-if-failed: false
+          mark-unstable-if-failed: true
+      - archive:
+          artifacts: '*.zip'
+      - opendaylight-infra-shiplogs:
+          maven-version: 'mvn33'
index 87112e490c4315fd96427b33ba2dd0c79fb82ae5..ec32f448579ab64d1c6ae2235f2142dec031d3cd 100644 (file)
@@ -6,6 +6,7 @@
       - '{project-name}-clm-{stream}'
       - '{project-name}-sonar'
       - '{project-name}-validate-autorelease-{stream}'
+      - distribution-check-{stream}
 
     stream:
       - carbon:
index 39f0822f0f97ff28a23e6077f2b4c87ce1b3b74b..a273ac5b317cd6c2585a84d01f0f88b1efd0735c 100644 (file)
@@ -47,13 +47,33 @@ cat >> ${local_conf_file_name} << EOF
 enable_service ${service_name}
 EOF
 done
+for plugin_name in ${ENABLE_OS_PLUGINS}
+do
+if [ "$plugin_name" == "networking-odl" ]; then
+    ENABLE_PLUGIN_ARGS="${ODL_ML2_DRIVER_REPO} ${ODL_ML2_BRANCH}"
+elif [ "$plugin_name" == "kuryr-kubernetes" ]; then
+    ENABLE_PLUGIN_ARGS="${DEVSTACK_KUBERNETES_PLUGIN_REPO} master" # note: kuryr-kubernetes only exists in master at the moment
+elif [ "$plugin_name" == "neutron-lbaas" ]; then
+    ENABLE_PLUGIN_ARGS="${DEVSTACK_LBAAS_PLUGIN_REPO} ${OPENSTACK_BRANCH}"
+else
+    echo "Error: Invalid plugin $plugin_name, unsupported"
+    continue
+fi
+cat >> ${local_conf_file_name} << EOF
+enable_plugin ${plugin_name} ${ENABLE_PLUGIN_ARGS}
+EOF
+done
 unset IFS
-
+if [ "${OPENSTACK_BRANCH}" == "master" ] || [ "${OPENSTACK_BRANCH}" == "stable/ocata" ]; then # Ocata+
+    # placement is mandatory for nova since Ocata, note that this requires computes to enable placement-client
+    # this should be moved into enabled_services for each job (but only for Ocata)
+    echo "enable_service placement-api" >> ${local_conf_file_name}
+fi
 cat >> ${local_conf_file_name} << EOF
 HOST_IP=$OPENSTACK_CONTROL_NODE_IP
 SERVICE_HOST=\$HOST_IP
 
-NEUTRON_CREATE_INITIAL_NETWORKS=False
+NEUTRON_CREATE_INITIAL_NETWORKS=${CREATE_INITIAL_NETWORKS}
 Q_PLUGIN=ml2
 Q_ML2_TENANT_NETWORK_TYPE=${TENANT_NETWORK_TYPE}
 Q_OVS_USE_VETH=True
@@ -72,12 +92,13 @@ SERVICE_TOKEN=service
 SERVICE_PASSWORD=admin
 ADMIN_PASSWORD=admin
 
-enable_plugin networking-odl ${ODL_ML2_DRIVER_REPO} ${ODL_ML2_BRANCH}
-
 ODL_PORT=8080
 ODL_MODE=externalodl
+ODL_PORT_BINDING_CONTROLLER=${ODL_ML2_PORT_BINDING}
+
 LIBVIRT_TYPE=qemu
 
+NEUTRON_LBAAS_SERVICE_PROVIDERV2=${LBAAS_SERVICE_PROVIDER} # Only relevant if neutron-lbaas plugin is enabled
 EOF
 
 if [ "${ENABLE_NETWORKING_L2GW}" == "yes" ]; then
@@ -140,8 +161,8 @@ fi
 if [ "${ODL_ENABLE_L3_FWD}" == "yes" ]; then
 cat >> ${local_conf_file_name} << EOF
 PUBLIC_BRIDGE=${PUBLIC_BRIDGE}
-PUBLIC_PHYSICAL_NETWORK=physnet1 # FIXME this should be a parameter
-ML2_VLAN_RANGES=physnet1
+PUBLIC_PHYSICAL_NETWORK=${PUBLIC_PHYSICAL_NETWORK}
+ML2_VLAN_RANGES=${PUBLIC_PHYSICAL_NETWORK}
 ODL_PROVIDER_MAPPINGS=${ODL_PROVIDER_MAPPINGS}
 
 disable_service q-l3
@@ -169,9 +190,10 @@ cat >> ${local_conf_file_name} << EOF
 minimize_polling=True
 
 [ml2]
-# Needed for VLAN provider tests - because our provider networks are always encapsulated in VXLAN (br-physnet1)
-# MTU(1440) + VXLAN(50) + VLAN(4) = 1494 < MTU eth0/br-phynset1(1500)
-physical_network_mtus = physnet1:1440
+# Needed for VLAN provider tests - because our provider networks are always encapsulated in VXLAN (br-phys1)
+# MTU(1440) + VXLAN(50) + VLAN(4) = 1494 < MTU eth0/br-phys1(1500)
+physical_network_mtus = ${PUBLIC_PHYSICAL_NETWORK}:1440
+path_mtu = 1490
 
 [[post-config|/etc/neutron/dhcp_agent.ini]]
 [DEFAULT]
@@ -196,6 +218,13 @@ if [ "${ODL_ML2_BRANCH}" != "stable/ocata" ]; then
 else
    RECLONE=yes
 fi
+if [ "${OPENSTACK_BRANCH}" == "master" ] || [ "${OPENSTACK_BRANCH}" == "stable/ocata" ]; then # Ocata+
+    # placement is mandatory for nova since Ocata, note that this requires controller to enable placement-api
+    ENABLED_SERVICES="n-cpu,placement-client"
+else
+    ENABLED_SERVICES="n-cpu"
+fi
+
 local_conf_file_name=${WORKSPACE}/local.conf_compute_${HOSTIP}
 cat > ${local_conf_file_name} << EOF
 [[local|localrc]]
@@ -206,8 +235,7 @@ RECLONE=${RECLONE}
 
 NOVA_VNC_ENABLED=True
 MULTI_HOST=1
-ENABLED_SERVICES=n-cpu
-
+ENABLED_SERVICES=${ENABLED_SERVICES}
 HOST_IP=${HOSTIP}
 SERVICE_HOST=${OPENSTACK_CONTROL_NODE_IP}
 
@@ -228,11 +256,17 @@ SERVICE_TOKEN=service
 SERVICE_PASSWORD=admin
 ADMIN_PASSWORD=admin
 
-enable_plugin networking-odl ${ODL_ML2_DRIVER_REPO} ${ODL_ML2_BRANCH}
 ODL_MODE=compute
+ODL_PORT_BINDING_CONTROLLER=${ODL_ML2_PORT_BINDING}
 LIBVIRT_TYPE=qemu
 EOF
 
+if [[ "${ENABLE_OS_PLUGINS}" =~ networking-odl ]]; then
+cat >> ${local_conf_file_name} << EOF
+enable_plugin networking-odl ${ODL_ML2_DRIVER_REPO} ${ODL_ML2_BRANCH}
+EOF
+fi
+
 if [ "${NUM_ODL_SYSTEM}" -gt 1 ]; then
 odl_list=${ODL_SYSTEM_1_IP}
 for i in `seq 2 ${NUM_ODL_SYSTEM}`
@@ -274,7 +308,7 @@ Q_L3_ENABLED=True
 ODL_L3=${ODL_L3}
 PUBLIC_INTERFACE=br100 # FIXME do we use br100 at all?
 PUBLIC_BRIDGE=${PUBLIC_BRIDGE}
-PUBLIC_PHYSICAL_NETWORK=physnet1 # FIXME this should be a parameter
+PUBLIC_PHYSICAL_NETWORK=${PUBLIC_PHYSICAL_NETWORK}
 ODL_PROVIDER_MAPPINGS=${ODL_PROVIDER_MAPPINGS}
 EOF
 fi
@@ -398,6 +432,7 @@ OS_CTRL_FOLDER="control"
 mkdir -p ${OS_CTRL_FOLDER}
 scp ${OPENSTACK_CONTROL_NODE_IP}:/opt/stack/devstack/nohup.out ${OS_CTRL_FOLDER}/stack.log
 scp ${OPENSTACK_CONTROL_NODE_IP}:/var/log/openvswitch/ovs-vswitchd.log ${OS_CTRL_FOLDER}/ovs-vswitchd.log
+scp ${OPENSTACK_CONTROL_NODE_IP}:/etc/neutron/neutron.conf ${OS_CTRL_FOLDER}/neutron.conf
 rsync -avhe ssh ${OPENSTACK_CONTROL_NODE_IP}:/opt/stack/logs/* ${OS_CTRL_FOLDER} # rsync to prevent copying of symbolic links
 scp extra_debug.sh ${OPENSTACK_CONTROL_NODE_IP}:/tmp
 ${SSH} ${OPENSTACK_CONTROL_NODE_IP} "bash /tmp/extra_debug.sh > /tmp/extra_debug.log"
@@ -413,6 +448,7 @@ do
     mkdir -p ${OS_COMPUTE_FOLDER}
     scp ${!OSIP}:/opt/stack/devstack/nohup.out ${OS_COMPUTE_FOLDER}/stack.log
     scp ${!OSIP}:/var/log/openvswitch/ovs-vswitchd.log ${OS_COMPUTE_FOLDER}/ovs-vswitchd.log
+    scp ${!OSIP}:/etc/nova/nova.conf ${OS_COMPUTE_FOLDER}/nova.conf
     rsync -avhe ssh ${!OSIP}:/opt/stack/logs/* ${OS_COMPUTE_FOLDER} # rsync to prevent copying of symbolic links
     scp extra_debug.sh ${!OSIP}:/tmp
     ${SSH} ${!OSIP} "bash /tmp/extra_debug.sh > /tmp/extra_debug.log"
@@ -514,7 +550,6 @@ if [ "${ODL_ML2_BRANCH}" == "stable/newton" ]; then
   ssh ${OPENSTACK_CONTROL_NODE_IP} "cd /opt/stack; git clone https://git.openstack.org/openstack/requirements; cd requirements; git checkout stable/newton; sed -i /appdirs/d upper-constraints.txt"
 fi
 
-
 for i in `seq 1 $((NUM_OPENSTACK_SYSTEM - 1))`
 do
     COMPUTEIP=OPENSTACK_COMPUTE_NODE_${i}_IP
@@ -636,7 +671,9 @@ done
 
 # Control Node - PUBLIC_BRIDGE will act as the external router
 GATEWAY_IP="10.10.10.250" # FIXME this should be a parameter, also shared with integration-test
-${SSH} ${OPENSTACK_CONTROL_NODE_IP} "sudo ifconfig $PUBLIC_BRIDGE up ${GATEWAY_IP}/24"
+${SSH} ${OPENSTACK_CONTROL_NODE_IP} "sudo ip link add link ${PUBLIC_BRIDGE} name  ${PUBLIC_BRIDGE}.167 type vlan id 167"
+${SSH} ${OPENSTACK_CONTROL_NODE_IP} "sudo ifconfig  ${PUBLIC_BRIDGE} up"
+${SSH} ${OPENSTACK_CONTROL_NODE_IP} "sudo ifconfig   ${PUBLIC_BRIDGE}.167 up ${GATEWAY_IP}/24"
 compute_index=1
 for compute_ip in ${COMPUTE_IPS[*]}
 do
index 9772004f3c37f17592ea215fdc4c9ce273fde43d..6b57c40272c8262ae5a7e4d9524b41f91de19928 100644 (file)
@@ -22,6 +22,11 @@ if [ ${BUNDLEURL} == 'last' ]; then
     BUNDLEFOLDER="distribution-karaf-${BUNDLEVERSION}"
     BUNDLE="distribution-karaf-${TIMESTAMP}.zip"
     ACTUALBUNDLEURL="${NEXUSPATH}/${BUNDLEVERSION}/${BUNDLE}"
+elif [[ ${BUNDLEURL} == *"distribution-check"* ]]; then
+    ACTUALBUNDLEURL="${BUNDLEURL}"
+    BUNDLE="${BUNDLEURL##*/}"
+    BUNDLEFOLDER="${BUNDLE//.zip}"
+    BUNDLEVERSION="${BUNDLEFOLDER//distribution-karaf-}"
 else
     ACTUALBUNDLEURL="${BUNDLEURL}"
     BUNDLE="${BUNDLEURL##*/}"
index 73e7bf3d1d06446dd3a37af96c11846d2c724b3e..eb81e29fa6b1ef9aecb2e1ecfae33b0a1a4f88c8 100644 (file)
@@ -45,6 +45,9 @@ pip install isodate
 #       of client libraries only.
 pip install --upgrade tornado jsonpointer
 
+# Module for TemplatedRequests.robot library
+pip install --upgrade jmespath
+
 # Print installed versions.
 pip freeze
 
index 7ee461873ddb6ac74239699caf29f5898a65d2de..2cf8eee2efa654ffaac1a014da005c4e1457ce77 100644 (file)
           server-name: '{server}'
           trigger-on:
             - patchset-created-event:
-                exclude-drafts: 'true'
-                exclude-trivial-rebase: 'false'
-                exclude-no-code-change: 'true'
+                exclude-drafts: true
+                exclude-trivial-rebase: false
+                exclude-no-code-change: false
             - draft-published-event
             - comment-added-contains-event:
-                comment-contains-value: 'recheck'
+                comment-contains-value: recheck
           override-votes: true
           gerrit-build-unstable-verified-value: +1
           gerrit-build-unstable-codereview-value: 0
           projects:
-            - project-compare-type: 'ANT'
+            - project-compare-type: ANT
               project-pattern: '{project}'
               branches:
-                - branch-compare-type: 'ANT'
+                - branch-compare-type: ANT
                   branch-pattern: '**/{branch}'
               file-paths:
-                - compare-type: 'ANT'
+                - compare-type: ANT
                   pattern: '{files}'
 
 # Macro: integration-openstack-controller-mininet
index 8fc01a7629112721b7ae843d85eadef3bf712f9b..9e36e097c42e4ff88192970aeaf40a28913485a4 100644 (file)
           name: ODL_ML2_DRIVER_VERSION
           default: '{odl-ml2-driver-version}'
           description: 'Mode of networking-odl (v1 or v2)'
+      - string:
+          name: ODL_ML2_PORT_BINDING
+          default: '{odl-ml2-port-binding}'
+          description: 'Method of networking-odl port-binding (pseudo-agentdb-binding or legacy-port-binding or
+          network-topology)'
+      - string:
+          name: DEVSTACK_KUBERNETES_PLUGIN_REPO
+          default: '{devstack-kubernetes-plugin-repo}'
+          description: 'URL to fetch kubernetes devstack plugin'
+      - string:
+          name: DEVSTACK_LBAAS_PLUGIN_REPO
+          default: '{devstack-lbaas-plugin-repo}'
+          description: 'URL to fetch neutron-lbaas devstack plugin'
       - string:
           name: ODL_ENABLE_L3_FWD
           default: '{odl-enable-l3}'
           name: ENABLE_OS_SERVICES
           default: '{enable-openstack-services}'
           description: 'comma seperated list of services to enable'
+      - string:
+          name: ENABLE_OS_PLUGINS
+          default: '{enable-openstack-plugins}'
+          description: 'comma seperated list of plugins to enable'
       - string:
           name: DISABLE_OS_SERVICES
           default: '{disable-openstack-services}'
           name: DISABLE_ODL_L3_PLUGIN
           default: '{disable-odl-l3-service-plugin}'
           description: 'Disable odl l3 service plugin'
+      - string:
+          name: CREATE_INITIAL_NETWORKS
+          default: '{create-initial-networks}'
+          description: 'Toggles the option of letting devstack create initial networks (True/False)'
+      - string:
+          name: LBAAS_SERVICE_PROVIDER
+          default: '{lbaas-service-provider}'
+          description: 'The NEUTRON_LBAAS_SERVICE_PROVIDERV2 value to be used in local.conf - only relevant when using
+          neutron-lbaas'
     scm:
       - integration-gerrit-scm:
           basedir: 'test'
           name: ODL_ML2_DRIVER_VERSION
           default: '{odl-ml2-driver-version}'
           description: 'Mode of networking-odl (v1 or v2)'
+      - string:
+          name: ODL_ML2_PORT_BINDING
+          default: '{odl-ml2-port-binding}'
+          description: 'Method of networking-odl port-binding (pseudo-agentdb-binding or legacy-port-binding or
+          network-topology)'
+      - string:
+          name: DEVSTACK_KUBERNETES_PLUGIN_REPO
+          default: '{devstack-kubernetes-plugin-repo}'
+          description: 'URL to fetch kubernetes devstack plugin'
+      - string:
+          name: DEVSTACK_LBAAS_PLUGIN_REPO
+          default: '{devstack-lbaas-plugin-repo}'
+          description: 'URL to fetch neutron-lbaas devstack plugin'
       - string:
           name: ODL_ENABLE_L3_FWD
           default: '{odl-enable-l3}'
           name: ENABLE_OS_SERVICES
           default: '{enable-openstack-services}'
           description: 'comma seperated list of services to enable'
+      - string:
+          name: ENABLE_OS_PLUGINS
+          default: '{enable-openstack-plugins}'
+          description: 'comma seperated list of plugins to enable'
       - string:
           name: DISABLE_OS_SERVICES
           default: '{disable-openstack-services}'
           name: DISABLE_ODL_L3_PLUGIN
           default: '{disable-odl-l3-service-plugin}'
           description: 'Disable odl l3 service plugin'
-
+      - string:
+          name: CREATE_INITIAL_NETWORKS
+          default: '{create-initial-networks}'
+          description: 'Toggles the option of letting devstack create initial networks (True/False)'
+      - string:
+          name: LBAAS_SERVICE_PROVIDER
+          default: '{lbaas-service-provider}'
+          description: 'The NEUTRON_LBAAS_SERVICE_PROVIDERV2 value to be used in local.conf - only relevant when using
+          neutron-lbaas'
     scm:
       - integration-gerrit-scm:
           basedir: 'test'
           maven-version: 'mvn33'
           pom: '{project}/pom.xml'
           goals: >
-              clean install dependency:tree -V -B -Djenkins
-              -DskipTests
-              -Dcheckstyle.skip=true
-              -Dmaven.javadoc.skip=true
-              -Dmaven.site.skip=true
+              clean install dependency:tree
+              -V -B -Pq
+              -Dgitid.skip=false
+              -Djenkins
               -DgenerateReports=false
               -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r
               -Dstream={stream}
       maven-name: 'mvn33'
       root-pom: 'distribution/pom.xml'
       goals: >
-          clean install dependency:tree -V -B -Djenkins
+          clean install dependency:tree
+          -V -B -Pq
+          -Dgitid.skip=false
+          -Djenkins
           -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r
       maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
       settings: 'integration-settings'
index 53f4e54f59ac02b1c91d7be6390c7aaff37faddd..e32fc648e0730cc9092bc4b1b5fda7a47bc6b1ba 100644 (file)
@@ -34,7 +34,7 @@
           scope: 'all'
 
     # Features to install
-    install-features: 'odl-onem2mall-iotdm'
+    install-features: 'odl-iotdmcsitdist'
 
     # Robot custom options
     robot-options: ''
index d5cc49af3e937a7ad4e4d91f8e9a66d0e82a96b4..682a5836b9b077bcbb7c0ffefd09338afc27d8e1 100644 (file)
       - mitaka:
           openstack-branch: 'stable/mitaka'
           odl-ml2-branch: 'stable/mitaka'
-          odl-ml2-driver-version: 'v1'
-          openstack_system_image: 'CentOS 7 - devstack-mitaka - 20170210-1356'
+          openstack_system_image: 'CentOS 7 - devstack-mitaka - 20170314-2255'
       - newton:
           openstack-branch: 'stable/newton'
           odl-ml2-branch: 'stable/newton'
-          odl-ml2-driver-version: 'v1'
-          openstack_system_image: 'CentOS 7 - devstack-newton - 20170210-1344'
+          openstack_system_image: 'CentOS 7 - devstack-newton - 20170314-2256'
       - newton-nodl-v2:
           openstack-branch: 'stable/newton'
           odl-ml2-branch: 'stable/newton'
           odl-ml2-driver-version: 'v2'
-          openstack_system_image: 'CentOS 7 - devstack-newton - 20170210-1344'
+          openstack_system_image: 'CentOS 7 - devstack-newton - 20170314-2256'
 
     tools_system_count: 2
 
     tools_system_image: 'Ubuntu 14.04 - mininet-ovs-25 - 20170210-0300'
 
-    odl-enable-l3: 'yes'
-
     enable-networking-l2gw: 'yes'
 
     disable-odl-l3-service-plugin: 'yes'
 
-    public-bridge: 'br-physnet1'
-
-    public-physical-network: 'physnet1'
-
     enable-openstack-services: 'q-svc,q-dhcp,q-meta,n-cauth,tempest,l2gw-plugin'
 
-    disable-openstack-services: 'swift,cinder,n-net,q-vpn,n-cpu'
-
-    tenant-network-type: 'vxlan'
-
     security-group-mode: '{sg-mode}'
-
-    robot-options: ''
index a28331426c31bbf8e8b44864b345979e8c4c2b29..f24e1aaf20087aaaf5e141f20824d842fd5ce8d0 100644 (file)
       - mitaka:
           openstack-branch: 'stable/mitaka'
           odl-ml2-branch: 'stable/mitaka'
-          odl-ml2-driver-version: 'v1'
-          openstack_system_image: 'CentOS 7 - devstack-mitaka - 20170210-1356'
+          openstack_system_image: 'CentOS 7 - devstack-mitaka - 20170314-2255'
       - newton:
           openstack-branch: 'stable/newton'
           odl-ml2-branch: 'stable/newton'
-          odl-ml2-driver-version: 'v1'
-          openstack_system_image: 'CentOS 7 - devstack-newton - 20170210-1344'
+          openstack_system_image: 'CentOS 7 - devstack-newton - 20170314-2256'
       - newton-nodl-v2:
           openstack-branch: 'stable/newton'
           odl-ml2-branch: 'stable/newton'
           odl-ml2-driver-version: 'v2'
-          openstack_system_image: 'CentOS 7 - devstack-newton - 20170210-1344'
-
-    odl-enable-l3: 'yes'
-
-    public-bridge: 'br-physnet1'
-
-    public-physical-network: 'physnet1'
-
-    enable-networking-l2gw: 'no'
-
-    disable-odl-l3-service-plugin: 'no'
-
-    enable-openstack-services: 'q-svc,q-dhcp,q-meta,n-cauth,tempest'
-
-    disable-openstack-services: 'swift,cinder,n-net,q-vpn,n-cpu'
-
-    tenant-network-type: 'vxlan'
+          openstack_system_image: 'CentOS 7 - devstack-newton - 20170314-2256'
 
     security-group-mode: '{sg-mode}'
-
-    robot-options: ''
index 90ffe0e2b08792ad9e96c6ac0431d693ffeaf9d6..fdfcba380531d780d886ee9ef551881e866ae1d3 100644 (file)
       - mitaka:
           openstack-branch: 'stable/mitaka'
           odl-ml2-branch: 'stable/mitaka'
-          odl-ml2-driver-version: 'v1'
-          openstack_system_image: CentOS 7 - devstack-mitaka - 20170210-1356
+          openstack_system_image: 'CentOS 7 - devstack-mitaka - 20170314-2255'
       - newton:
           openstack-branch: 'stable/newton'
           odl-ml2-branch: 'stable/newton'
-          odl-ml2-driver-version: 'v1'
-          openstack_system_image: CentOS 7 - devstack-newton - 20170210-1344
+          openstack_system_image: 'CentOS 7 - devstack-newton - 20170314-2256'
       - newton-nodl-v2:
           openstack-branch: 'stable/newton'
           odl-ml2-branch: 'stable/newton'
           odl-ml2-driver-version: 'v2'
-          openstack_system_image: CentOS 7 - devstack-newton - 20170210-1344
-
-    odl-enable-l3: 'yes'
+          openstack_system_image: 'CentOS 7 - devstack-newton - 20170314-2256'
 
     public-bridge: 'br-ex'
-
-    public-physical-network: 'physnet1'
-
-    enable-networking-l2gw: 'no'
-
-    disable-odl-l3-service-plugin: 'no'
-
-    enable-openstack-services: 'q-svc,q-dhcp,q-meta,n-cauth,tempest'
-
-    disable-openstack-services: 'swift,cinder,n-net,q-vpn,n-cpu'
-
-    tenant-network-type: 'vxlan'
-
-    security-group-mode: 'none'
-
-    robot-options: ''
index 6c49ed8dd8b8576eea6f6810c98cc2287edcfc48..6e84bea1f63391a8bc07aa892620b3fa1a717a1f 100644 (file)
@@ -8,6 +8,7 @@
       - '{project-name}-merge-{stream}'
       - '{project-name}-validate-autorelease-{stream}'
       - '{project-name}-verify-{stream}-{maven}-{jdks}'
+      - '{project-name}-verify-tox-{stream}'
 
     stream: carbon
     project: 'odlparent'
diff --git a/jjb/openflowplugin/openflowplugin-csit-bulk-matic-ds-daily-old.yaml b/jjb/openflowplugin/openflowplugin-csit-bulk-matic-ds-daily-old.yaml
deleted file mode 100644 (file)
index 249fd87..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
----
-- project:
-    name: openflowplugin-csit-bulk-matic-ds-daily-old
-    jobs:
-      - '{project}-csit-1node-periodic-{functionality}-{install}-{stream}'
-
-    # The project name
-    project: 'openflowplugin'
-
-    # The functionality under test
-    functionality: 'bulk-matic-ds-daily'
-
-    # Project branches
-    stream:
-      - beryllium:
-          branch: 'stable/beryllium'
-          jre: 'openjdk7'
-
-    install:
-      - only:
-          scope: 'only'
-
-    # Features to install
-    install-features: 'odl-openflowplugin-flow-services-ui,odl-openflowplugin-app-bulk-o-matic'
-
-    # Robot custom options
-    robot-options: '-v flnr:50000'
-
-    # Plot Info
-    01-plot-title: 'REST setup rate (for 100k flows)'
-    01-plot-yaxis: 'setup time[s], req[flows/s]'
-    01-plot-group: 'Performance Rate'
-    01-plot-data-file: 'flows_setup_time.csv'
diff --git a/jjb/openflowplugin/openflowplugin-csit-bulk-matic-ds-daily.yaml b/jjb/openflowplugin/openflowplugin-csit-bulk-matic-ds-daily.yaml
deleted file mode 100644 (file)
index 0ad609d..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
----
-- project:
-    name: openflowplugin-csit-bulk-matic-ds-daily
-    jobs:
-      - '{project}-csit-1node-periodic-{functionality}-{install}-{stream}'
-
-    # The project name
-    project: 'openflowplugin'
-
-    # The functionality under test
-    functionality: 'bulk-matic-ds-daily'
-
-    # Project branches
-    stream:
-      - carbon:
-          branch: 'master'
-          jre: 'openjdk8'
-      - boron:
-          branch: 'stable/boron'
-          jre: 'openjdk8'
-
-    install:
-      - only:
-          scope: 'only'
-
-    # Features to install
-    install-features: 'odl-openflowplugin-flow-services-ui,odl-openflowplugin-app-bulk-o-matic'
-
-    # Robot custom options
-    robot-options: '-v flnr:50000'
-
-    # Plot Info
-    01-plot-title: 'REST setup rate (for 100k flows)'
-    01-plot-yaxis: 'setup time[s], req[flows/s]'
-    01-plot-group: 'Performance Rate'
-    01-plot-data-file: 'flows_setup_time.csv'
index f152d35322022ab9768b4b0530900e1fe2cac6ad..ba8917f44c231b981c0980576de2a11c274b60eb 100644 (file)
@@ -8,7 +8,9 @@
     project: 'openflowplugin'
 
     # The functionality under test
-    functionality: 'bulkomatic-clustering-daily'
+    functionality:
+      - bulkomatic-clustering-daily
+      - gate-bulkomatic-clustering-daily
 
     # Project branches
     stream:
index 1b2fc1c5011770b32f157a14274f21138b9ec28d..e3a4ca1522b90860e6bd2e76c0d2e38bd694708f 100644 (file)
@@ -8,7 +8,9 @@
     project: 'openflowplugin'
 
     # The functionality under test
-    functionality: 'bulkomatic-clustering-perf-daily'
+    functionality:
+      - bulkomatic-clustering-perf-daily
+      - gate-bulkomatic-clustering-perf-daily
 
     # Project branches
     stream:
index d332074735e39d86aab48508d88896becbeb48b9..eb0dea272cc2e10a1a4f9f91fc2c80365352ff2a 100644 (file)
@@ -8,7 +8,9 @@
     project: 'openflowplugin'
 
     # The functionality under test
-    functionality: 'bulkomatic-perf-daily'
+    functionality:
+      - bulkomatic-perf-daily
+      - gate-bulkomatic-perf-daily
 
     # Project branches
     stream:
diff --git a/jjb/openflowplugin/openflowplugin-csit-cbench-performance-old.yaml b/jjb/openflowplugin/openflowplugin-csit-cbench-performance-old.yaml
deleted file mode 100644 (file)
index 87f90c4..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
----
-- project:
-    name: openflowplugin-csit-cbench-performance-old
-    jobs:
-      - '{project}-csit-1node-{functionality}-{install}-{stream}'
-
-    # The project name
-    project: 'openflowplugin'
-
-    # The functionality under test
-    functionality: 'cbench-performance'
-
-    # Project branches
-    stream:
-      - beryllium:
-          branch: 'stable/beryllium'
-          jre: 'openjdk7'
-
-    install:
-      - only:
-          scope: 'only'
-
-    # Features to install
-    install-features: 'odl-openflowplugin-flow-services-ui,odl-openflowplugin-drop-test'
-
-    # Robot custom options
-    robot-options: '-v throughput_threshold:20000 -v latency_threshold:5000'
-
-    # Plot Info
-    01-plot-title: 'Throughput Mode'
-    01-plot-yaxis: 'flow_mods/sec'
-    01-plot-group: 'Cbench Performance'
-    01-plot-data-file: 'throughput.csv'
-    02-plot-title: 'Latency Mode'
-    02-plot-yaxis: 'flow_mods/sec'
-    02-plot-group: 'Cbench Performance'
-    02-plot-data-file: 'latency.csv'
diff --git a/jjb/openflowplugin/openflowplugin-csit-cbench-performance.yaml b/jjb/openflowplugin/openflowplugin-csit-cbench-performance.yaml
deleted file mode 100644 (file)
index 0a8e2f8..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
----
-- project:
-    name: openflowplugin-csit-cbench-performance
-    jobs:
-      - '{project}-csit-1node-{functionality}-{install}-{stream}'
-
-    # The project name
-    project: 'openflowplugin'
-
-    # The functionality under test
-    functionality: 'cbench-performance'
-
-    # Project branches
-    stream:
-      - carbon:
-          branch: 'master'
-          jre: 'openjdk8'
-      - boron:
-          branch: 'stable/boron'
-          jre: 'openjdk8'
-
-    install:
-      - only:
-          scope: 'only'
-
-    # Features to install
-    install-features: 'odl-openflowplugin-flow-services-ui,odl-openflowplugin-drop-test'
-
-    # Robot custom options
-    robot-options: '-v throughput_threshold:20000 -v latency_threshold:5000'
-
-    # Plot Info
-    01-plot-title: 'Throughput Mode'
-    01-plot-yaxis: 'flow_mods/sec'
-    01-plot-group: 'Cbench Performance'
-    01-plot-data-file: 'throughput.csv'
-    02-plot-title: 'Latency Mode'
-    02-plot-yaxis: 'flow_mods/sec'
-    02-plot-group: 'Cbench Performance'
-    02-plot-data-file: 'latency.csv'
index 3b48b14088182f16536dd9d0d573b69667edea58..ee61b31bdd81b4dd12738d44898a9baea1c3555c 100644 (file)
@@ -3,13 +3,14 @@
     name: openflowplugin-csit-clustering
     jobs:
       - '{project}-csit-3node-{functionality}-{install}-{stream}'
-      - '{project}-csit-verify-3node-{functionality}'
 
     # The project name
     project: 'openflowplugin'
 
     # The functionality under test
-    functionality: 'clustering'
+    functionality:
+      - clustering
+      - gate-clustering
 
     # Project branches
     stream:
diff --git a/jjb/openflowplugin/openflowplugin-csit-config-performance-old.yaml b/jjb/openflowplugin/openflowplugin-csit-config-performance-old.yaml
deleted file mode 100644 (file)
index 2e0e61a..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
----
-- project:
-    name: openflowplugin-csit-config-performance-old
-    jobs:
-      - '{project}-csit-1node-{functionality}-{install}-{stream}'
-
-    # The project name
-    project: 'openflowplugin'
-
-    # The functionality under test
-    functionality: 'config-performance'
-
-    # Project branches
-    stream:
-      - beryllium:
-          branch: 'stable/beryllium'
-          jre: 'openjdk7'
-
-    install:
-      - only:
-          scope: 'only'
-
-    # Features to install
-    install-features: 'odl-openflowplugin-flow-services-ui'
-
-    # Robot custom options
-    robot-options: ''
-
-    # Plot Info
-    01-plot-title: 'Flow REST API Rate'
-    01-plot-yaxis: 'http_req/sec'
-    01-plot-group: 'Flow Config Performance'
-    01-plot-data-file: 'rates.csv'
-    02-plot-title: 'Flow Stats Collect Time'
-    02-plot-yaxis: 'seconds'
-    02-plot-group: 'Stats Collect Performance'
-    02-plot-data-file: 'times.csv'
diff --git a/jjb/openflowplugin/openflowplugin-csit-config-performance.yaml b/jjb/openflowplugin/openflowplugin-csit-config-performance.yaml
deleted file mode 100644 (file)
index 3202b9f..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
----
-- project:
-    name: openflowplugin-csit-config-performance
-    jobs:
-      - '{project}-csit-1node-{functionality}-{install}-{stream}'
-
-    # The project name
-    project: 'openflowplugin'
-
-    # The functionality under test
-    functionality: 'config-performance'
-
-    # Project branches
-    stream:
-      - carbon:
-          branch: 'master'
-          jre: 'openjdk8'
-      - boron:
-          branch: 'stable/boron'
-          jre: 'openjdk8'
-
-    install:
-      - only:
-          scope: 'only'
-
-    # Features to install
-    install-features: 'odl-openflowplugin-flow-services-ui'
-
-    # Robot custom options
-    robot-options: ''
-
-    # Plot Info
-    01-plot-title: 'Flow REST API Rate'
-    01-plot-yaxis: 'http_req/sec'
-    01-plot-group: 'Flow Config Performance'
-    01-plot-data-file: 'rates.csv'
-    02-plot-title: 'Flow Stats Collect Time'
-    02-plot-yaxis: 'seconds'
-    02-plot-group: 'Stats Collect Performance'
-    02-plot-data-file: 'times.csv'
index 8f5a5f895d204e4a3bf39e444b6905bc15c17b0d..45e0c6b3d9f5c64365e5bad3ee0dfb6430cb7765 100644 (file)
@@ -3,13 +3,14 @@
     name: openflowplugin-csit-flow-services
     jobs:
       - '{project}-csit-1node-{functionality}-{install}-{stream}'
-      - '{project}-csit-verify-1node-{functionality}'
 
     # The project name
     project: 'openflowplugin'
 
     # The functionality under test
-    functionality: 'flow-services'
+    functionality:
+      - flow-services
+      - gate-flow-services
 
     # Project branches
     stream:
diff --git a/jjb/openflowplugin/openflowplugin-csit-rpc-time-measure-daily-old.yaml b/jjb/openflowplugin/openflowplugin-csit-rpc-time-measure-daily-old.yaml
deleted file mode 100644 (file)
index 7fdca01..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
----
-- project:
-    name: openflowplugin-csit-rpc-time-measure-daily-old
-    jobs:
-      - '{project}-csit-1node-periodic-{functionality}-{install}-{stream}'
-
-    # The project name
-    project: 'openflowplugin'
-
-    # The functionality under test
-    functionality: 'rpc-time-measure-daily'
-
-    # Project branches
-    stream:
-      - beryllium:
-          branch: 'stable/beryllium'
-          jre: 'openjdk7'
-
-    install:
-      - only:
-          scope: 'only'
-
-    # Features to install
-    install-features: 'odl-openflowplugin-flow-services-ui,odl-openflowplugin-app-bulk-o-matic'
-
-    # Robot custom options
-    robot-options: ''
-
-    # Plot Info
-    01-plot-title: 'REST setup rate (for 100k flows)'
-    01-plot-yaxis: 'setup time[s], req[flows/s]'
-    01-plot-group: 'Performance Rate'
-    01-plot-data-file: 'flows_setup_time.csv'
similarity index 54%
rename from jjb/openflowplugin/openflowplugin-csit-rpc-time-measure-daily.yaml
rename to jjb/openflowplugin/openflowplugin-csit-sanity.yaml
index 1e2c52a67a9e31939bddeded5a75ea0a972b93e8..78e76ad51ea59b4a8c0adfb85b665641fac51fd8 100644 (file)
@@ -1,14 +1,15 @@
 ---
 - project:
-    name: openflowplugin-csit-rpc-time-measure-daily
+    name: openflowplugin-csit-sanity
     jobs:
-      - '{project}-csit-1node-periodic-{functionality}-{install}-{stream}'
+      - '{project}-csit-1node-{functionality}-{install}-{stream}'
+      - '{project}-csit-verify-1node-{functionality}'
 
     # The project name
     project: 'openflowplugin'
 
     # The functionality under test
-    functionality: 'rpc-time-measure-daily'
+    functionality: 'sanity'
 
     # Project branches
     stream:
           scope: 'only'
 
     # Features to install
-    install-features: 'odl-openflowplugin-flow-services-ui,odl-openflowplugin-app-bulk-o-matic'
+    install-features: 'odl-openflowplugin-flow-services-ui,odl-openflowplugin-app-table-miss-enforcer'
 
     # Robot custom options
     robot-options: ''
 
-    # Plot Info
-    01-plot-title: 'REST setup rate (for 100k flows)'
-    01-plot-yaxis: 'setup time[s], req[flows/s]'
-    01-plot-group: 'Performance Rate'
-    01-plot-data-file: 'flows_setup_time.csv'
+    # mininet image
+    tools_system_image: Ubuntu 14.04 - mininet-ovs-25 - 20170210-0300
index f794fe09b0bde2bddda3d9ec85f2e3e8b3d9576f..2e7c2a625af63e8798b9361debdb8b79028a079a 100644 (file)
@@ -8,7 +8,9 @@
     project: 'openflowplugin'
 
     # The functionality under test
-    functionality: 'scalability'
+    functionality:
+      - scalability
+      - gate-scalability
 
     # Project branches
     stream:
index 5143cec8dabb73604fe84d51b081f41accec4b65..a6697cd1423a4036d954d4b7c1124f766bb0ae95 100644 (file)
@@ -8,7 +8,9 @@
     project: 'openflowplugin'
 
     # The functionality under test
-    functionality: 'scale-stats-collection-daily'
+    functionality:
+      - scale-stats-collection-daily
+      - gate-scale-stats-collection-daily
 
     # Project branches
     stream:
index 215914b9dde6a9c6fe2fb4b22f51db023525f67d..034eced4f5067de3f1ea9327ee42a46b2f8f81bd 100644 (file)
     feature:
       - core:
           csit-list: >
-              openflowplugin-csit-1node-flow-services-only-{stream},
-              openflowplugin-csit-1node-flow-services-all-{stream},
-              openflowplugin-csit-1node-scalability-only-{stream},
-              openflowplugin-csit-1node-cbench-performance-only-{stream},
-              openflowplugin-csit-1node-config-performance-only-{stream},
-              openflowplugin-csit-3node-clustering-only-{stream}
+              openflowplugin-csit-1node-gate-flow-services-only-{stream},
+              openflowplugin-csit-1node-gate-flow-services-all-{stream},
+              openflowplugin-csit-1node-gate-scalability-only-{stream},
+              openflowplugin-csit-1node-periodic-gate-scale-stats-collection-daily-only-{stream},
+              openflowplugin-csit-1node-periodic-gate-bulkomatic-perf-daily-only-{stream},
+              openflowplugin-csit-3node-gate-clustering-only-{stream},
+              openflowplugin-csit-3node-periodic-gate-bulkomatic-clustering-daily-only-{stream},
+              openflowplugin-csit-3node-periodic-gate-bulkomatic-clustering-perf-daily-only-{stream}
 
       - netvirt:
           csit-list: >
diff --git a/jjb/ovsdb/ovsdb-csit-scalability-daily.yaml b/jjb/ovsdb/ovsdb-csit-scalability-daily.yaml
deleted file mode 100644 (file)
index 6e5bb0a..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
----
-- project:
-    name: ovsdb-csit-scalability-daily
-    jobs:
-      - '{project}-csit-1node-periodic-{functionality}-{install}-{stream}'
-
-    # The project name
-    project: 'ovsdb'
-
-    # The functionality under test
-    functionality: 'scalability-daily'
-
-    # Project branches
-    stream:
-      - carbon:
-          branch: 'master'
-          jre: 'openjdk8'
-      - boron:
-          branch: 'stable/boron'
-          jre: 'openjdk8'
-      - beryllium:
-          branch: 'stable/beryllium'
-          jre: 'openjdk7'
-
-    install:
-      - only:
-          scope: 'only'
-
-    # Features to install
-    install-features: 'odl-ovsdb-openstack'
-
-    # Robot custom options
-    robot-options: '-v MIN_SWITCHES:100 -v MAX_SWITCHES:500 -v STEP_SWITCHES:100'
-
-    # Plot Info
-    01-plot-title: 'Max number of Switches'
-    01-plot-yaxis: 'OpenFlow Switches'
-    01-plot-group: 'Inventory Scalability'
-    01-plot-data-file: 'switches.csv'
index e67731271b6d3c7bcfe0c6ebf1f71942b9aaedfd..fb6f1d651791ba6b75f2330379a5b30e735ed97d 100644 (file)
 - job-template:
     name: 'packaging-build-deb-{stream}'
 
-    node: ubuntu-trusty-mininet-2c-2g
+    node: ubuntu1404-mininet-2c-2g
 
     project-type: freestyle
 
 - job-template:
     name: 'packaging-test-ansible-deb-{stream}'
 
-    node: ubuntu-xenial-mininet-ovs-25-2c-4g
+    node: ubuntu1604-mininet-ovs-25-2c-4g
 
     project-type: freestyle
 
index 503657f3db19fe3af491d8a46b9a1b4b65bd81d7..843129a33e57bc038c29a1b524949dd4056b51e1 100644 (file)
     email-recipients: 'jenkins@lists.opendaylight.org'
     odl-ml2-driver-repo: 'https://github.com/openstack/networking-odl'
     networking-l2gw-repo: 'http://git.openstack.org/openstack/networking-l2gw'
+    devstack-kubernetes-plugin-repo: 'https://github.com/openstack/kuryr-kubernetes'
+    devstack-lbaas-plugin-repo: 'https://github.com/openstack/neutron-lbaas'
     server-name: 'OpenDaylight'
     git-url: 'ssh://jenkins-$SILO@git.opendaylight.org:29418'
 
+    public-bridge: 'br-physnet1'
+    public-physical-network: 'physnet1'
+    odl-enable-l3: 'yes'
+    disable-odl-l3-service-plugin: 'no'
+    odl-ml2-driver-version: 'v1'
+    odl-ml2-port-binding: 'network-topology'
+    enable-openstack-plugins: 'networking-odl'
+    enable-openstack-services: 'q-svc,q-dhcp,q-meta,n-cauth,tempest'
+    disable-openstack-services: 'swift,cinder,n-net,q-vpn,n-cpu'
+    enable-networking-l2gw: 'no'
+    lbaas-service-provider: ''
+    create-initial-networks: 'False'
+    tenant-network-type: 'vxlan'
+    security-group-mode: 'none'
+
     # openstack-infra-parameters defaults
     archive-artifacts: ''
     branch: master
         ocpplugin-csit-1node-scalability-only-carbon,
         of-config-csit-1node-basic-all-carbon,
         of-config-csit-1node-basic-only-carbon,
-        openflowplugin-csit-1node-cbench-performance-only-carbon,
-        openflowplugin-csit-1node-config-performance-only-carbon,
         openflowplugin-csit-1node-flow-services-all-carbon,
         openflowplugin-csit-1node-flow-services-frs-only-carbon,
         openflowplugin-csit-1node-flow-services-only-carbon,
-        openflowplugin-csit-1node-periodic-bulk-matic-ds-daily-only-carbon,
         openflowplugin-csit-1node-periodic-bulkomatic-perf-daily-only-carbon,
         openflowplugin-csit-1node-periodic-cbench-daily-only-carbon,
         openflowplugin-csit-1node-periodic-link-scalability-daily-only-carbon,
         openflowplugin-csit-1node-periodic-restconf-perf-daily-only-carbon,
-        openflowplugin-csit-1node-periodic-rpc-time-measure-daily-only-carbon,
         openflowplugin-csit-1node-periodic-scale-stats-collection-daily-frs-only-carbon,
         openflowplugin-csit-1node-periodic-scale-stats-collection-daily-only-carbon,
         openflowplugin-csit-1node-periodic-sw-scalability-daily-only-carbon,
+        openflowplugin-csit-1node-sanity-only-carbon,
         openflowplugin-csit-1node-scalability-only-carbon,
         openflowplugin-csit-3node-clustering-only-carbon,
         openflowplugin-csit-3node-periodic-bulkomatic-clustering-daily-only-carbon,
         openflowplugin-csit-3node-periodic-bulkomatic-clustering-perf-daily-only-carbon,
         openflowplugin-csit-3node-periodic-restconf-clustering-perf-daily-only-carbon,
-        ovsdb-csit-1node-periodic-scalability-daily-only-carbon,
         ovsdb-csit-1node-upstream-southbound-all-carbon,
         ovsdb-csit-1node-upstream-southbound-only-carbon,
         ovsdb-csit-3node-upstream-clustering-only-carbon,
         ocpplugin-csit-1node-scalability-only-boron,
         of-config-csit-1node-basic-all-boron,
         of-config-csit-1node-basic-only-boron,
-        openflowplugin-csit-1node-cbench-performance-only-boron,
-        openflowplugin-csit-1node-config-performance-only-boron,
         openflowplugin-csit-1node-flow-services-all-boron,
         openflowplugin-csit-1node-flow-services-frs-only-boron,
         openflowplugin-csit-1node-flow-services-only-boron,
-        openflowplugin-csit-1node-periodic-bulk-matic-ds-daily-only-boron,
         openflowplugin-csit-1node-periodic-bulkomatic-perf-daily-only-boron,
         openflowplugin-csit-1node-periodic-cbench-daily-only-boron,
         openflowplugin-csit-1node-periodic-link-scalability-daily-only-boron,
         openflowplugin-csit-1node-periodic-restconf-perf-daily-only-boron,
-        openflowplugin-csit-1node-periodic-rpc-time-measure-daily-only-boron,
         openflowplugin-csit-1node-periodic-scale-stats-collection-daily-frs-only-boron,
         openflowplugin-csit-1node-periodic-scale-stats-collection-daily-only-boron,
         openflowplugin-csit-1node-periodic-sw-scalability-daily-only-boron,
+        openflowplugin-csit-1node-sanity-only-boron,
         openflowplugin-csit-1node-scalability-only-boron,
         openflowplugin-csit-3node-clustering-only-boron,
         openflowplugin-csit-3node-periodic-bulkomatic-clustering-daily-only-boron,
         openflowplugin-csit-3node-periodic-bulkomatic-clustering-perf-daily-only-boron,
         openflowplugin-csit-3node-periodic-restconf-clustering-perf-daily-only-boron,
-        ovsdb-csit-1node-periodic-scalability-daily-only-boron,
         ovsdb-csit-1node-upstream-southbound-all-boron,
         ovsdb-csit-1node-upstream-southbound-only-boron,
         ovsdb-csit-3node-upstream-clustering-only-boron,
         nic-csit-1node-vtnrenderer-only-beryllium,
         of-config-csit-1node-basic-all-beryllium,
         of-config-csit-1node-basic-only-beryllium,
-        openflowplugin-csit-1node-cbench-performance-only-beryllium,
-        openflowplugin-csit-1node-config-performance-only-beryllium,
         openflowplugin-csit-1node-flow-services-all-beryllium,
         openflowplugin-csit-1node-flow-services-only-beryllium,
-        openflowplugin-csit-1node-periodic-bulk-matic-ds-daily-only-beryllium,
         openflowplugin-csit-1node-periodic-bulkomatic-perf-daily-only-beryllium,
         openflowplugin-csit-1node-periodic-cbench-daily-only-beryllium,
         openflowplugin-csit-1node-periodic-link-scalability-daily-only-beryllium,
         openflowplugin-csit-1node-periodic-restconf-perf-daily-only-beryllium,
-        openflowplugin-csit-1node-periodic-rpc-time-measure-daily-only-beryllium,
         openflowplugin-csit-1node-periodic-scale-stats-collection-daily-only-beryllium,
         openflowplugin-csit-1node-periodic-sw-scalability-daily-only-beryllium,
         openflowplugin-csit-1node-scalability-only-beryllium,
         openflowplugin-csit-3node-periodic-bulkomatic-clustering-daily-only-beryllium,
         openflowplugin-csit-3node-periodic-bulkomatic-clustering-perf-daily-only-beryllium,
         openflowplugin-csit-3node-periodic-restconf-clustering-perf-daily-only-beryllium,
-        ovsdb-csit-1node-periodic-scalability-daily-only-beryllium,
         ovsdb-csit-1node-upstream-southbound-all-beryllium,
         ovsdb-csit-1node-upstream-southbound-only-beryllium,
         ovsdb-csit-3node-upstream-clustering-only-beryllium,
index b8a62a0a5351ea4d18d31d7a6e3df74bd07eda25..5be34b1f2bb2441e2ce5eb8e300e421ca77fc2be 100644 (file)
           server-name: '{server}'
           trigger-on:
             - patchset-created-event:
-                exclude-drafts: 'true'
-                exclude-trivial-rebase: 'false'
-                exclude-no-code-change: 'true'
+                exclude-drafts: true
+                exclude-trivial-rebase: false
+                exclude-no-code-change: false
             - draft-published-event
             - comment-added-contains-event:
-                comment-contains-value: 'recheck'
+                comment-contains-value: recheck
           projects:
-            - project-compare-type: 'ANT'
+            - project-compare-type: ANT
               project-pattern: '{project}'
               branches:
-                - branch-compare-type: 'ANT'
+                - branch-compare-type: ANT
                   branch-pattern: '**/{branch}'
               file-paths:
-                - compare-type: 'ANT'
+                - compare-type: ANT
                   pattern: '{files}'
 
 # TODO: Unify argument names across gerrit-trigger-* macros.
           files:
             - file-id: 'jjbini'
               target: '$HOME/.config/jenkins_jobs/jenkins_jobs.ini'
+
+- builder:
+    name: distribution-check-wipe
+    # Step zero: Wipe file repositories up front.
+    builders:
+      - shell: |
+          echo "wipe r: the local Maven repository"
+          rm -rfv /tmp/r
+          echo "wipe n: the fake remote (Nexus) repository"
+          rm -rfv /tmp/n
+          echo "wipe t: the transient repository used in some manipulations"
+          rm -rfv /tmp/t
+
+- builder:
+    name: distribution-check-build-project
+    # Step one: Online build of the project, using local repository /tmp/r/ and deploying artifacts to /tmp/n/.
+    # Ordinary SingleFeatureTest failures are detected in the verify job, so we can use "q" profile here.
+    # Arguments:
+    #   pom: Relative path to pom file to use. Typically '$GERRIT_PROJECT/pom.xml'.
+    builders:
+      - maven-target:
+          maven-version: 'mvn33'
+          pom: '{pom}'
+          goals: >
+              clean deploy dependency:tree
+              -DoutputFile=dependency_tree.txt
+              -V -B -Pq
+              -Djenkins
+              -DaltDeploymentRepository=fake-nexus::default::file:///tmp/n/
+              -Dmaven.repo.local=/tmp/r
+              -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r
+          java-opts:
+            - '-Xmx4096m -XX:MaxPermSize=1024m -Dmaven.compile.fork=true'
+          settings: 'integration-settings'
+          settings-type: cfp
+          global-settings: 'odl-global-settings'
+          global-settings-type: cfp
+
+- builder:
+    name: distribution-check-verify-groupid
+    # Step two: Verify all deployed artifacts belong to the project's groupId.
+    # This is done by moving the allowed directories out of /tmp/n and checking no files remained there.
+    # The correct directory is derived from $GERRIT_PROJECT.
+    # TODO: Verify all deployed artifacts are snapshots.
+    # Arguments:
+    #   gerrit-project: Project name as nexus URI part. Typically '$GERRIT_PROJECT'.
+    builders:
+      - shell: |
+          mkdir -p /tmp/t/org/opendaylight/{gerrit-project}
+          mv /tmp/n/org/opendaylight/{gerrit-project}/* /tmp/t/org/opendaylight/{gerrit-project}/
+          test -z "`find /tmp/n/ -type f`" || ( echo "ERROR: Mismatched groupId detected (see above)." && false )
+          rm -rf /tmp/n
+          mv /tmp/t /tmp/n
+
+- builder:
+    name: distribution-check-download-deps
+    # Step three: Online build of integration distribution.
+    # This step is mainly used for downloading other project artifacts.
+    # Running SingleFeaturesTest here does not seem to be required, so -Pq is used again.
+    # Arguments:
+    #   dist-pom: Relative path to pom file to use. 'distribution/pom.xml' is recommended.
+    builders:
+      - maven-target:
+          maven-version: 'mvn33'
+          pom: '{dist-pom}'
+          goals: >
+              clean install dependency:tree
+              -DoutputFile=dependency_tree.txt
+              -V -B -Pq
+              -Djenkins
+              -Dmaven.repo.local=/tmp/r
+              -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r
+          java-opts:
+            - '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
+          settings: 'integration-settings'
+          settings-type: cfp
+          global-settings: 'odl-global-settings'
+          global-settings-type: cfp
+
+- builder:
+    name: distribution-check-delete-snapshots
+    # Step four: Delete snapshot artifacts from the local repository.
+    # This is critical to detect orphaned artifacts or missing project-internal dependency declarations.
+    # Also other files related to maven repository resolution are removed,
+    # and then empty directories are removed, in order to simplify debugging.
+    builders:
+      - shell: !include-raw-escape: integration-distribution-delete-snaphot-artifacts.sh
+
+- builder:
+    name: distribution-check-configure-remotes
+    # Now the ugly part. It seems that the only way to tell Maven 2+
+    # which remote repositories to use is via settings.xml file.
+    # So we create such a file here, but it needs most of odlparent:settings.xml
+    builders:
+      - shell: |
+          echo '
+          <settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
+            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+            xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
+            https://maven.apache.org/xsd/settings-1.0.0.xsd">
+            <profiles>
+              <profile>
+                <id>opendaylight-release</id>
+                <repositories>
+                  <repository>
+                    <id>opendaylight-mirror</id>
+                    <name>opendaylight</name>
+                    <url>https://nexus.opendaylight.org/content/repositories/public/</url>
+                    <releases><updatePolicy>never</updatePolicy></releases>
+                    <snapshots><enabled>false</enabled></snapshots>
+                  </repository>
+                </repositories>
+                <pluginRepositories>
+                  <pluginRepository>
+                    <id>opendaylight-plugin-mirror</id>
+                    <name>opendaylight-plugin</name>
+                    <url>https://nexus.opendaylight.org/content/repositories/public/</url>
+                    <releases><updatePolicy>never</updatePolicy></releases>
+                    <snapshots><enabled>false</enabled></snapshots>
+                  </pluginRepository>
+                </pluginRepositories>
+              </profile>
+              <profile>
+                <id>file-snapshots</id>
+                <repositories>
+                  <repository>
+                    <id>file-snapshots</id>
+                    <name>file</name>
+                    <url>file:///tmp/n/</url>
+                    <releases><enabled>false</enabled></releases>
+                  </repository>
+                </repositories>
+                <pluginRepositories>
+                  <pluginRepository>
+                    <id>file-plugin-snapshots</id>
+                    <name>file-plugin</name>
+                    <url>file:///tmp/n/</url>
+                    <releases><enabled>false</enabled></releases>
+                  </pluginRepository>
+                </pluginRepositories>
+              </profile>
+            </profiles>
+            <activeProfiles>
+              <activeProfile>file-snapshots</activeProfile>
+              <activeProfile>opendaylight-release</activeProfile>
+            </activeProfiles>
+          </settings>
+          ' > fake_remotes.xml
+          # Notes: The settings are minimal in order to detect breakage scenarios,
+          # while allowing for the following quirks:
+          # * Some plugins seem to have hardcoded repos, for example check-license looks at repository.apache.org
+          # * Some plugin artifacts (related to surefire) are not downloaded when tests are skipped.
+          # * populate-local-repo looks at oss.sonatype.org and does not store things (like guava) to /tmp/r
+
+- builder:
+    name: distribution-check-repeat-build
+    # Step five: Repeat the distribution build but with the new settings.
+    # Here, only the project snapshot artifacts deployed to /tmp/n are available,
+    # which faithfully reproduces conditions in later verify-like job runs.
+    # We cannot use --offline, because: "Cannot access file (file:///tmp/n) in offline mode"
+    # This is where SingleFeatureTest is not skipped.
+    # Arguments:
+    #   dist-pom: Relative path to pom file to use. 'distribution/pom.xml' is recommended.
+    builders:
+      - maven-target:
+          maven-version: 'mvn33'
+          pom: '{dist-pom}'
+          goals: >
+              clean install dependency:tree
+              -DoutputFile=dependency_tree.txt -s fake_remotes.xml
+              -V -B -Pq
+              -DskipTests=false
+              -Djenkins
+              -Dmaven.repo.local=/tmp/r
+              -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r
+          java-opts:
+            - '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
index 08b29ee7fa5a50b3866f0cfc0719fcffcfe6bb0f..f6b172c03365602631ef202eab832245766b80ca 100644 (file)
           files: '**'
 
     builders:
-      # Step zero: Wipe file repositories up front.
-      - shell: |
-          echo "wipe r: the local Maven repository"
-          rm -rfv /tmp/r
-          echo "wipe n: the fake remote (Nexus) repository"
-          rm -rfv /tmp/n
-          echo "wipe t: the transient repository used in some manipulations"
-          rm -rfv /tmp/t
-      # Step one: Online build of the project, using local repository /tmp/r/ and deploying artifacts to /tmp/n/.
-      # Ordinary SingleFeatureTest failures are detected in the verify job, so we can use "q" profile here.
-      - maven-target:
-          maven-version: 'mvn33'
+      - distribution-check-wipe
+      - distribution-check-build-project:
           pom: '$GERRIT_PROJECT/pom.xml'
-          goals: >
-              clean deploy dependency:tree
-              -DoutputFile=dependency_tree.txt
-              -V -B -Pq
-              -Djenkins
-              -Dstream={stream}
-              -DaltDeploymentRepository=fake-nexus::default::file:///tmp/n/
-              -Dmaven.repo.local=/tmp/r
-              -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r
-          java-opts:
-            - '-Xmx4096m -XX:MaxPermSize=1024m -Dmaven.compile.fork=true'
-          settings: '{mvn-settings}'
-          settings-type: cfp
-          global-settings: 'odl-global-settings'
-          global-settings-type: cfp
-      # Step two: Verify all deployed artifacts belong to the project's groupId.
-      # This is done by moving the allowed directories out of /tmp/n and checking no files remained there.
-      # The correct directory is derived from $GERRIT_PROJECT.
-      - shell: |
-          mkdir -p /tmp/t/org/opendaylight/$GERRIT_PROJECT
-          mv /tmp/n/org/opendaylight/$GERRIT_PROJECT/* /tmp/t/org/opendaylight/$GERRIT_PROJECT/
-          test -z "`find /tmp/n/ -type f`" || ( echo "ERROR: Mismatched groupId detected (see above)." && false )
-          rm -rf /tmp/n
-          mv /tmp/t /tmp/n
-      # Step three: Online build of integration distribution.
-      # This step is mainly used for downloading other project artifacts.
-      # Running SingleFeaturesTest here does not seem to be required, so -Pq is used again.
-      - maven-target:
-          maven-version: 'mvn33'
-          pom: 'distribution/pom.xml'
-          goals: >
-              clean install dependency:tree
-              -DoutputFile=dependency_tree.txt
-              -V -B -Pq
-              -Djenkins
-              -Dstream={stream}
-              -Dmaven.repo.local=/tmp/r
-              -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r
-          java-opts:
-            - '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
-          settings: '{mvn-settings}'
-          settings-type: cfp
-          global-settings: 'odl-global-settings'
-          global-settings-type: cfp
-      # Step four: Delete snapshot artifacts from the local repository.
-      # This is critical to detect orphaned artifacts or missing project-internal dependency declarations.
-      # Also other files related to maven repository resolution are removed,
-      # and then empty directories are removed, in order to simplify debugging.
-      - shell: !include-raw-escape: integration-distribution-delete-snaphot-artifacts.sh
-      # Now the ugly part. It seems that the only way to tell Maven 2+
-      # which remote repositories to use is via settings.xml file.
-      # So we create such a file here, but it needs most of odlparent:settings.xml
-      - shell: |
-          echo '
-          <settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
-            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-            xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
-            https://maven.apache.org/xsd/settings-1.0.0.xsd">
-            <profiles>
-              <profile>
-                <id>opendaylight-release</id>
-                <repositories>
-                  <repository>
-                    <id>opendaylight-mirror</id>
-                    <name>opendaylight</name>
-                    <url>https://nexus.opendaylight.org/content/repositories/public/</url>
-                    <releases><updatePolicy>never</updatePolicy></releases>
-                    <snapshots><enabled>false</enabled></snapshots>
-                  </repository>
-                </repositories>
-                <pluginRepositories>
-                  <pluginRepository>
-                    <id>opendaylight-plugin-mirror</id>
-                    <name>opendaylight-plugin</name>
-                    <url>https://nexus.opendaylight.org/content/repositories/public/</url>
-                    <releases><updatePolicy>never</updatePolicy></releases>
-                    <snapshots><enabled>false</enabled></snapshots>
-                  </pluginRepository>
-                </pluginRepositories>
-              </profile>
-              <profile>
-                <id>file-snapshots</id>
-                <repositories>
-                  <repository>
-                    <id>file-snapshots</id>
-                    <name>file</name>
-                    <url>file:///tmp/n/</url>
-                    <releases><enabled>false</enabled></releases>
-                  </repository>
-                </repositories>
-                <pluginRepositories>
-                  <pluginRepository>
-                    <id>file-plugin-snapshots</id>
-                    <name>file-plugin</name>
-                    <url>file:///tmp/n/</url>
-                    <releases><enabled>false</enabled></releases>
-                  </pluginRepository>
-                </pluginRepositories>
-              </profile>
-            </profiles>
-            <activeProfiles>
-              <activeProfile>file-snapshots</activeProfile>
-              <activeProfile>opendaylight-release</activeProfile>
-            </activeProfiles>
-          </settings>
-          ' > fake_remotes.xml
-      # # Notes: The settings are minimal in order to detect breakage scenarios while allowing for the following quirks:
-      # # * Some plugins seem to have hardcoded repos, for example check-license looks at repository.apache.org
-      # # * Some plugin artifacts (related to surefire) are not downloaded when tests are skipped.
-      # # * populate-local-repo looks at oss.sonatype.org and does not store things (like guava) to /tmp/r
-      # Step five: Repeat the distribution build but with the new settings.
-      # Here, only the project snapshot artifacts deployed to /tmp/n are available,
-      # which faithfully reproduces conditions in later verify-like job runs.
-      # We cannot use --offline, because: "Cannot access file (file:///tmp/n) in offline mode"
-      # This is where SingleFeatureTest is not skipped.
-      - maven-target:
-          maven-version: 'mvn33'
-          pom: 'distribution/pom.xml'
-          goals: >
-              clean install dependency:tree
-              -DoutputFile=dependency_tree.txt -s fake_remotes.xml
-              -V -B -Pq
-              -DskipTests=false
-              -Djenkins
-              -Dstream={stream}
-              -Dmaven.repo.local=/tmp/r
-              -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r
-          java-opts:
-            - '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
-      # Step six: Run Karaf and verify no critical failures are present.
+      - distribution-check-verify-groupid:
+          gerrit-project: '$GERRIT_PROJECT'
+      - distribution-check-download-deps:
+          dist-pom: 'distribution/pom.xml'
+      - distribution-check-delete-snapshots
+      - distribution-check-configure-remotes
+      - distribution-check-repeat-build:
+          dist-pom: 'distribution/pom.xml'
       - integration-distribution-check
 
     publishers:
index a5532fbe7641520d7068f2ddd543e57c7de00a0b..b1bf0c530c95993144f08b94f076691c17a8602a 100644 (file)
@@ -86,6 +86,7 @@
           echo "---> Restart spectrometer-api"
           pkill gunicorn
           sleep 5  # Sleep 5 seconds for cooldown
+          spectrometer server sync
           nohup gunicorn -b 0.0.0.0:5000 'spectrometer:run_app()' --timeout 600 -k gevent >> ~/gunicorn.out &
           sleep 120  # Sleep 2 minutes to allow Spectrometer to initialize
 
index 78eb46f0af469630509e23ae88bf40c6767dce64..960e64f6d68bce1771212395b8939358a2836331 100644 (file)
       - mitaka:
           openstack-branch: 'stable/mitaka'
           odl-ml2-branch: 'stable/mitaka'
-          odl-ml2-driver-version: 'v1'
-          openstack_system_image: 'CentOS 7 - devstack-mitaka - 20170210-1356'
+          openstack_system_image: 'CentOS 7 - devstack-mitaka - 20170314-2255'
       - newton:
           openstack-branch: 'stable/newton'
           odl-ml2-branch: 'stable/newton'
-          odl-ml2-driver-version: 'v1'
-          openstack_system_image: 'CentOS 7 - devstack-newton - 20170210-1344'
+          openstack_system_image: 'CentOS 7 - devstack-newton - 20170314-2256'
 
     schedule: ''
 
     disable-openstack-services: 'n-net,q-l3'
 
     tenant-network-type: 'local'
-
-    public-physical-network: 'physnet1'
-
-    enable-networking-l2gw: 'no'
-
-    disable-odl-l3-service-plugin: 'no'
-
-    security-group-mode: 'none'
-
-    robot-options: ''