Merge "Job for testing the ODL user configuration"
authorDaniel Farrell <dfarrell@redhat.com>
Wed, 18 Jul 2018 21:11:55 +0000 (21:11 +0000)
committerGerrit Code Review <gerrit@opendaylight.org>
Wed, 18 Jul 2018 21:11:55 +0000 (21:11 +0000)
125 files changed:
check_prefix.py [new file with mode: 0755]
check_robot.py [new file with mode: 0755]
check_robot.sh [deleted file]
docs/jenkins.rst
jenkins-config/clouds/openstack/odlvex/cloud.cfg
jenkins-init-scripts/builder.sh [new file with mode: 0755]
jenkins-init-scripts/devstack.sh [new file with mode: 0755]
jenkins-init-scripts/docker.sh [new file with mode: 0755]
jenkins-init-scripts/local-init.sh [moved from check_prefix.sh with 55% similarity]
jenkins-init-scripts/mininet-ubuntu.sh [new file with mode: 0755]
jenkins-init-scripts/robot.sh [new file with mode: 0755]
jenkins-init-scripts/system_type.sh [new file with mode: 0755]
jenkins-init-scripts/ubuntu-docker-ovs.sh [new file with mode: 0755]
jjb/aaa/aaa.yaml
jjb/alto/alto.yaml
jjb/archetypes/archetypes.yaml
jjb/atrium/atrium.yaml
jjb/autorelease/autorelease-projects.yaml
jjb/autorelease/validate-autorelease-fluorine.yaml
jjb/autorelease/view-autorelease-fluorine.yaml
jjb/bgpcep/bgpcep.yaml
jjb/bier/bier.yaml
jjb/capwap/capwap.yaml
jjb/cardinal/cardinal.yaml
jjb/centinel/centinel.yaml
jjb/coe/coe.yaml
jjb/controller/controller-csit-clustering.yaml
jjb/controller/controller.yaml
jjb/coretutorials/coretutorials.yaml
jjb/daexim/daexim.yaml
jjb/defaults.yaml
jjb/didm/didm.yaml
jjb/dlux/dlux.yaml
jjb/dluxapps/dluxapps.yaml
jjb/docs/docs-rtd.yaml
jjb/eman/eman.yaml
jjb/faas/faas.yaml
jjb/federation/federation.yaml
jjb/genius/genius-patch-test.yaml
jjb/genius/genius.yaml
jjb/global-jjb
jjb/groupbasedpolicy/groupbasedpolicy-csit-1node-openstack.yaml
jjb/groupbasedpolicy/groupbasedpolicy.yaml
jjb/honeycomb/vbd/vbd.yaml
jjb/infrautils/infrautils.yaml
jjb/integration/common-functions.sh
jjb/integration/csit-jobs-fluorine.lst
jjb/integration/csit-jobs-oxygen.lst
jjb/integration/distribution/distribution-jobs.yaml
jjb/integration/integration-configure-clustering.sh
jjb/integration/integration-deploy-controller-run-test.sh
jjb/integration/integration-deploy-openstack-run-test.sh
jjb/integration/integration-macros.yaml
jjb/integration/integration-start-cluster-run-test.sh
jjb/integration/integration-templates.yaml
jjb/integration/integration-test-jobs.yaml
jjb/integration/multipatch-distribution.sh
jjb/iotdm/iotdm.yaml
jjb/jsonrpc/jsonrpc.yaml
jjb/l2switch/l2switch.yaml
jjb/lacp/lacp.yaml
jjb/lf-infra/lf-infra-jobs.yaml
jjb/lfn/lfn.yaml
jjb/lispflowmapping/lispflowmapping.yaml
jjb/mdsal/mdsal.yaml
jjb/messaging4transport/messaging4transport.yaml
jjb/natapp/natapp.yaml
jjb/nemo/nemo.yaml
jjb/netconf/netconf.yaml
jjb/netide/netide.yaml
jjb/netvirt/netvirt-csit-hwvtep-openstack.yaml
jjb/netvirt/netvirt-csit-multi-openstack-upgrade.yaml
jjb/netvirt/netvirt-csit-multi-openstack.yaml
jjb/netvirt/netvirt-patch-test.yaml
jjb/netvirt/netvirt.yaml
jjb/neutron/neutron.yaml
jjb/next/next.yaml
jjb/nic/nic.yaml
jjb/ocpplugin/ocpplugin.yaml
jjb/odlparent/odlparent.yaml
jjb/of-config/of-config.yaml
jjb/ofextensions/circuitsw/circuitsw.yaml
jjb/openci/openci-odl-daily-jobs.yaml
jjb/opendaylight-infra-stack.sh
jjb/openflowplugin/openflowplugin.yaml
jjb/opflex/opflex.yaml
jjb/ovil/ovil.yaml
jjb/ovsdb/ovsdb.yaml
jjb/p4plugin/p4plugin.yaml
jjb/packaging/build-rpm.sh
jjb/packaging/packaging.yaml
jjb/packetcable/packetcable.yaml
jjb/persistence/persistence.yaml
jjb/releng-macros.yaml
jjb/releng-packer-jobs.yaml
jjb/releng-views.yaml
jjb/reservation/reservation.yaml
jjb/sdninterfaceapp/sdninterfaceapp.yaml
jjb/sfc/sfc-patch-test.yaml
jjb/sfc/sfc.yaml
jjb/snbi/snbi.yaml
jjb/snmp/snmp.yaml
jjb/snmp4sdn/snmp4sdn.yaml
jjb/sxp/sxp.yaml
jjb/systemmetrics/systemmetrics.yaml
jjb/telemetry/telemetry.yaml
jjb/topoprocessing/topoprocessing.yaml
jjb/transportpce/transportpce.yaml
jjb/tsdr/tsdr.yaml
jjb/ttp/ttp.yaml
jjb/unimgr/unimgr.yaml
jjb/usc/usc.yaml
jjb/usecplugin/usecplugin.yaml
jjb/yang-push/yang-push.yaml
jjb/yangide/yangide.yaml
jjb/yangtools/yangtools.yaml
packer/provision/devstack-pre-pip.sh
packer/provision/local-builder.yaml
packer/provision/mininet-ovs-2.5.sh
packer/provision/mininet-ovs-2.6.sh
packer/provision/mininet-ovs-2.8.yaml
packer/templates/devstack-pre-pip-ocata.json [deleted file]
packer/templates/mininet-ovs-2.8.json
packer/templates/robot.json
tox.ini

diff --git a/check_prefix.py b/check_prefix.py
new file mode 100755 (executable)
index 0000000..d4adcbc
--- /dev/null
@@ -0,0 +1,37 @@
+# SPDX-License-Identifier: EPL-1.0
+##############################################################################
+# Copyright (c) 2018 The Linux Foundation and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+##############################################################################
+"""Ensures that the prefix MUST be set to blank.
+
+The production prefix MUST always be a blank string.
+"""
+
+__author__ = 'Thanh Ha'
+
+
+import os
+import re
+import sys
+
+
+def check_prefix(filename):
+    with open(filename, 'r') as _file:
+        for num, line in enumerate(_file, 1):
+            if re.search('prefix:', line):
+                if "''" not in line:
+                    print(
+                        'ERROR: A non-blank prefix is defined in '
+                        'jjb/defaults.yaml. The prefix MUST be set to blank '
+                        '\'\' in production!'
+                    )
+                    sys.exit(1)
+
+
+if __name__ == "__main__":
+    check_prefix(os.path.join('jjb', 'defaults.yaml'))
diff --git a/check_robot.py b/check_robot.py
new file mode 100755 (executable)
index 0000000..89e2512
--- /dev/null
@@ -0,0 +1,50 @@
+# SPDX-License-Identifier: EPL-1.0
+##############################################################################
+# Copyright (c) 2018 The Linux Foundation and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+##############################################################################
+# Ensures that we are only ever using one robot system
+#
+# Due to the way the Jenkins OpenStack Cloud plugin works we can only limit
+# max parallel robot systems by the VM. So having multiple VM types makes it
+# very difficult for us to properly limit the amount of parallel robot runs.
+
+__author__ = 'Thanh Ha'
+
+
+import fnmatch
+import os
+import re
+import sys
+
+
+def get_robot_systems(filename):
+    """Scan for robot vms.
+
+    Returns a list of Robot systems found in file.
+    """
+    robots = set()
+
+    with open(filename, 'r') as _file:
+        for num, line in enumerate(_file, 1):
+            if re.search('centos7-robot', line):
+                robots.add(line.rsplit(maxsplit=1)[1])
+
+    return robots
+
+
+if __name__ == "__main__":
+    robots = []
+    for root, dirnames, filenames in os.walk('jjb'):
+        for filename in fnmatch.filter(filenames, '*.yaml'):
+            robots += get_robot_systems(os.path.join(root, filename))
+
+    if len(robots) > 1:
+        print("ERROR: More than one robot system type definition detected.")
+        print("Please ensure that ALL templates use the same robot nodes.")
+        print("Infra does not support more than 1 robot node type in use.")
+        sys.exit(1)
diff --git a/check_robot.sh b/check_robot.sh
deleted file mode 100755 (executable)
index b6ab703..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-#!/bin/bash
-# SPDX-License-Identifier: EPL-1.0
-##############################################################################
-# Copyright (c) 2018 The Linux Foundation and others.
-#
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-##############################################################################
-# Ensures that we are only ever using one robot system
-#
-# Due to the way the Jenkins OpenStack Cloud plugin works we can only limit
-# max parallel robot systems by the VM. So having multiple VM types makes it
-# very difficult for us to properly limit the amount of parallel robot runs.
-
-robots=$(find . -name "*.yaml" -print0 \
-    | xargs -0 grep centos7-robot | awk '{print $NF}' \
-    | sort | uniq | wc -l)
-
-if [ "$robots" -gt 1 ]; then
-    echo "ERROR: More than one robot system type definition detected."
-    echo "Please ensure that ALL templates use the same robot nodes."
-    echo "Infra does not support more than 1 robot node type in use."
-    exit 1
-fi
index 25e5370f922310a886152e8906f3009194590286..812f29b3412c85a1af62b30881f810b4d072824c 100644 (file)
@@ -880,6 +880,9 @@ example is provided by releng/builder at `example-jenkins.ini`_.
     # Edit jenkins.ini with your username, API token and ODL's sandbox URL
     $ cat jenkins.ini
     <snip>
+    [job_builder]
+    retain_anchors=True
+
     [jenkins]
     user=<your ODL username>
     password=<your ODL Jenkins sandbox API token>
@@ -937,6 +940,9 @@ Once you've `configured your \`jenkins.ini\` <Configuration_>`_ and `verified yo
 JJB jobs <Testing Jobs_>`_ produce valid XML descriptions of Jenkins jobs you
 can push them to the Jenkins sandbox.
 
+Add the --jobs-only (-j) option to push only jobs to Jenkins sandbox. Pushing
+views to Jenkins sandbox requires admin access.
+
 .. important::
 
     When pushing with `jenkins-jobs`, a log message with the number
@@ -956,7 +962,7 @@ can push them to the Jenkins sandbox.
     .. code-block:: bash
 
         # Don't push all jobs by omitting the final param! (ctrl+c to abort)
-        jenkins-jobs --conf jenkins.ini update jjb/ <job-name>
+        jenkins-jobs --conf jenkins.ini update -j jjb/ <job-name>
 
 Alternatively, you can push a job to the Jenkins sandbox with a special comment in a
 releng/builder gerrit patch. The job will be based off of the code your patch is
index b53023b6258c9ebb6c3950f4083ea5da2044bb2c..2627fc375f7136ed735fd1d262f4dbb5eb3374b9 100644 (file)
@@ -10,7 +10,7 @@ HARDWARE_ID=v1-standard-1
 NETWORK_ID=b5fcd86e-efac-4997-b8bc-dbe0d35bc229
 USER_DATA_ID=jenkins-init-script
 INSTANCE_CAP=75
-SANDBOX_CAP=6
+SANDBOX_CAP=8
 FLOATING_IP_POOL=
 SECURITY_GROUPS=default
 AVAILABILITY_ZONE=ca-ymq-2
diff --git a/jenkins-init-scripts/builder.sh b/jenkins-init-scripts/builder.sh
new file mode 100755 (executable)
index 0000000..367451f
--- /dev/null
@@ -0,0 +1,12 @@
+#!/bin/bash
+# vim: sw=2 ts=2 sts=2 et :
+
+yum clean all
+
+# disable the firewall
+/bin/bash ./disable_firewall.sh
+
+cat <<EOF >/etc/sudoers.d/89-jenkins-user-defaults
+Defaults:jenkins !requiretty
+jenkins     ALL = NOPASSWD: ALL
+EOF
diff --git a/jenkins-init-scripts/devstack.sh b/jenkins-init-scripts/devstack.sh
new file mode 100755 (executable)
index 0000000..d8a8732
--- /dev/null
@@ -0,0 +1,21 @@
+#!/bin/bash
+
+# It looks like the devstack gate is stomping on our dnsmasq setup which
+# therefore kills our ability to do proper lookups of some resources.
+# Let's capture the 3 nexus IPs into /etc/hosts
+cat <<EOHOSTS >> /etc/hosts
+# the internal address for nexus
+$(dig +short nexus.opendaylight.org) nexus.opendaylight.org
+# all the nexus proxies
+$(dig +short nexus01.dfw.opendaylight.org) nexus01.dfw.opendaylight.org
+$(dig +short nexus02.dfw.opendaylight.org) nexus02.dfw.opendaylight.org
+$(dig +short nexus03.ord.opendaylight.org) nexus03.ord.opendaylight.org
+EOHOSTS
+
+# make sure we don't require tty for sudo operations
+cat <<EOF >/etc/sudoers.d/89-jenkins-user-defaults
+Defaults:jenkins !requiretty
+jenkins     ALL = NOPASSWD: ALL
+EOF
+
+# vim: sw=2 ts=2 sts=2 et :
diff --git a/jenkins-init-scripts/docker.sh b/jenkins-init-scripts/docker.sh
new file mode 100755 (executable)
index 0000000..d896318
--- /dev/null
@@ -0,0 +1,17 @@
+#!/bin/bash
+
+# make sure we don't require tty for sudo operations
+cat <<EOF >/etc/sudoers.d/89-jenkins-user-defaults
+Defaults:jenkins !requiretty
+jenkins     ALL = NOPASSWD: ALL
+EOF
+
+# make sure jenkins is part of the docker only if jenkins has already been
+# created
+
+if grep -q jenkins /etc/passwd
+then
+  /usr/sbin/usermod -a -G docker jenkins
+fi
+
+# vim: sw=2 ts=2 sts=2 et :
similarity index 55%
rename from check_prefix.sh
rename to jenkins-init-scripts/local-init.sh
index 5b62ac4e3d43f05b914b277d8a0489fc193b9866..d55974cae491e060aedf2156cb01708dd9ea541e 100755 (executable)
@@ -1,19 +1,16 @@
 #!/bin/bash
 # SPDX-License-Identifier: EPL-1.0
 ##############################################################################
-# Copyright (c) 2018 The Linux Foundation and others.
+# Copyright (c) 2016 The Linux Foundation and others.
 #
 # All rights reserved. This program and the accompanying materials
 # are made available under the terms of the Eclipse Public License v1.0
 # which accompanies this distribution, and is available at
 # http://www.eclipse.org/legal/epl-v10.html
 ##############################################################################
-# Ensures that the prefix MUST be set to blank
-#
-# The production prefix MUST always be a blank string.
 
-if grep 'prefix:' jjb/defaults.yaml | grep -v "''"; then
-    echo "ERROR: A non-blank prefix is defined in jjb/defaults.yaml"
-    echo "The prefix MUST be set to blank '' in production!"
-    exit 1
-fi
+INIT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null && pwd )"
+"${INIT_DIR}/system_type.sh"
+# shellcheck disable=SC1091
+source /tmp/system_type.sh
+"${INIT_DIR}/${SYSTEM_TYPE}.sh"
diff --git a/jenkins-init-scripts/mininet-ubuntu.sh b/jenkins-init-scripts/mininet-ubuntu.sh
new file mode 100755 (executable)
index 0000000..7f0cd56
--- /dev/null
@@ -0,0 +1,16 @@
+#!/bin/bash
+
+# make sure we don't require tty for sudo operations
+cat <<EOF >/etc/sudoers.d/89-jenkins-user-defaults
+Defaults:jenkins !requiretty
+jenkins     ALL = NOPASSWD: ALL
+EOF
+
+# disable the firewall
+/bin/bash ./disable_firewall.sh
+
+# Add 'hostname' into /etc/hosts during node spinup time to avoid sudo returning
+# an 'unable to resolve host' message or some Java API's returning an unknown
+# host exception. The workaround on adding "myhostname" into /etc/nss-switch.conf
+# does not work on Ubuntu flavours.
+sed -i "/127.0.0.1/s/$/\t$(hostname)/" /etc/hosts
diff --git a/jenkins-init-scripts/robot.sh b/jenkins-init-scripts/robot.sh
new file mode 100755 (executable)
index 0000000..5fc0579
--- /dev/null
@@ -0,0 +1,12 @@
+#!/bin/bash
+
+# make sure we don't require tty for sudo operations
+cat <<EOF >/etc/sudoers.d/89-jenkins-user-defaults
+Defaults:jenkins !requiretty
+jenkins     ALL = NOPASSWD: ALL
+EOF
+
+# make sure the firewall is stopped
+service iptables stop
+
+# vim: sw=2 ts=2 sts=2 et :
diff --git a/jenkins-init-scripts/system_type.sh b/jenkins-init-scripts/system_type.sh
new file mode 100755 (executable)
index 0000000..c5b141a
--- /dev/null
@@ -0,0 +1,34 @@
+#!/bin/bash
+# SPDX-License-Identifier: EPL-1.0
+##############################################################################
+# Copyright (c) 2016 The Linux Foundation and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+##############################################################################
+
+HOST=$(/bin/hostname)
+SYSTEM_TYPE=''
+
+IFS=','
+for i in "java-builder,builder" \
+         "builder,builder" \
+         "devstack,devstack" \
+         "docker,docker" \
+         "gbp,ubuntu-docker-ovs" \
+         "kubernetes,mininet-ubuntu" \
+         "robot,robot" \
+         "mininet,mininet-ubuntu"
+do set -- $i
+    if [[ $HOST == *"$1"* ]]; then
+        SYSTEM_TYPE="$2"
+        break
+    fi
+done
+
+# Write out the system type to an environment file to then be sourced
+echo "SYSTEM_TYPE=${SYSTEM_TYPE}" > /tmp/system_type.sh
+
+# vim: sw=4 ts=4 sts=4 et :
diff --git a/jenkins-init-scripts/ubuntu-docker-ovs.sh b/jenkins-init-scripts/ubuntu-docker-ovs.sh
new file mode 100755 (executable)
index 0000000..743255b
--- /dev/null
@@ -0,0 +1,26 @@
+#!/bin/bash
+
+# make sure we don't require tty for sudo operations
+cat <<EOF >/etc/sudoers.d/89-jenkins-user-defaults
+Defaults:jenkins !requiretty
+jenkins     ALL = NOPASSWD: ALL
+EOF
+
+# Add 'hostname' into /etc/hosts during node spinup time to avoid sudo returning
+# an 'unable to resolve host' message or some Java API's returning an unknown
+# host exception. The workaround on adding "myhostname" into /etc/nss-switch.conf
+# does not work on Ubuntu flavours.
+sed -i "/127.0.0.1/s/$/\t$(hostname)/" /etc/hosts
+
+# Do the final install of OVS that the has to be done at boot time for
+# some reason due to how the snapshots keep behaving.
+dpkg --install /root/openvswitch-datapath-dkms* && \
+dpkg --install /root/openvswitch-{common,switch}*
+
+# add user jenkins to docker group
+/usr/sbin/usermod -a -G docker jenkins
+
+# pull docker images
+docker pull alagalah/odlpoc_ovs230
+
+# vim: sw=2 ts=2 sts=2 et :
index 1a60b2883dd0ccef8647c31a4ebb540d7e25235c..10bcf36044f9897140cb90c2b31b9c160bb86365 100644 (file)
@@ -45,3 +45,9 @@
     branch: 'master'
     mvn-settings: 'aaa-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: aaa
+    description: 'List of aaa jobs'
+    regex: '^aaa-.*'
+    <<: *releng_view_common
index e1ad649ae12aafe1d69ad9f17ab18723be7e5663..52ace6034d55997b2f6d6f1a7e999aec08975dc2 100644 (file)
@@ -47,3 +47,9 @@
     build-node: centos7-builder-2c-8g
     mvn-settings: 'alto-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: alto
+    description: 'List of alto jobs'
+    regex: '^alto-.*'
+    <<: *releng_view_common
index c31164de36367af6aeafc2bea8b240a682197917..111686ce4eede3328c6fbd326c994031494c67e5 100644 (file)
@@ -32,3 +32,9 @@
     project-name: 'archetypes'
     branch: 'master'
     mvn-settings: 'archetypes-settings'
+
+- view:
+    name: archetypes
+    regex: '^archetypes-.*'
+    description: 'List of archetypes jobs'
+    <<: *releng_view_common
index ca443e740106afd1c9b7267dc4e69f763684f0aa..be3daede0bc27386c72139caeccd67b9128d83ae 100644 (file)
@@ -43,3 +43,9 @@
     branch: 'master'
     mvn-settings: 'atrium-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: atrium
+    description: 'List of atrium jobs'
+    regex: '^atrium-.*'
+    <<: *releng_view_common
index 8194f2a2ebd191cde37cf57c1a4f48211ca618c2..994802131e6df6d6a44d46c59544ae1aa36b3bfd 100644 (file)
@@ -36,3 +36,9 @@
         **/hs_err_*.log
         **/target/feature/feature.xml
     # TODO: **/*.hprof is too large, compress with xz first
+
+- view:
+    name: autorelease
+    description: 'List of autorelease jobs'
+    regex: '^autorelease-.*'
+    <<: *releng_view_common
index 17c565b68eb220a92bc1b3e1a92d8a292a0a76c3..7f2d8dab45565473b982b3496481022facd70634 100644 (file)
@@ -37,5 +37,7 @@
           project: openflowplugin
       - ovsdb:
           project: ovsdb
+      - serviceutils:
+          project: serviceutils
       - sfc:
           project: sfc
index 252ec6b60cba80a0396b49576b5eadaca2954807..b552a01e0fcab591f949b97786d0b47234223e85 100644 (file)
@@ -37,5 +37,6 @@
       - 'neutron-maven-merge-fluorine'
       - 'openflowplugin-maven-merge-fluorine'
       - 'ovsdb-maven-merge-fluorine'
+      - 'serviceutils-maven-merge-fluorine'
       - 'sfc-maven-merge-fluorine'
     <<: *releng_autorelease_view_common_fluorine
index bc4f4e1eac4d99ebfb131108e58e178217d70084..11f560f5b32a590554391dec3c8928aad298b499 100644 (file)
@@ -62,3 +62,9 @@
     branch: 'master'
     mvn-settings: 'bgpcep-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: bgpcep
+    description: 'List of bgpcep jobs'
+    regex: '^bgpcep-.*'
+    <<: *releng_view_common
index c3e51500a83b48b37e2f6b83e822a133a5e55bbe..943205bdfb3ba6d24c1a432502976bf6f4e91f66 100644 (file)
@@ -49,3 +49,9 @@
     build-node: centos7-builder-2c-8g
     mvn-settings: 'bier-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: bier
+    description: 'List of bier jobs'
+    regex: '^bier-.*'
+    <<: *releng_view_common
index ed7c55974acef74738f032722437f1bf343b9b03..95c26f5048430817793a0bd6b52ab23070cecd5a 100644 (file)
@@ -44,3 +44,9 @@
     branch: master
     mvn-settings: 'capwap-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: capwap
+    description: 'List of capwap jobs'
+    regex: '^capwap-.*'
+    <<: *releng_view_common
index 00397abdd293d204287d751c2974609b5094d64d..ba42c4da8822306b345e327768a313f9b2ddb344 100644 (file)
@@ -44,3 +44,9 @@
     branch: 'master'
     mvn-settings: 'cardinal-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: cardinal
+    description: 'List of cardinal jobs'
+    regex: '^cardinal-.*'
+    <<: *releng_view_common
index 53da8f640598a7f992351be65969dd3d7f59273f..efc2054ff5528ceb9d0a4cc92f8fc876e199fd6e 100644 (file)
@@ -44,3 +44,9 @@
     branch: master
     mvn-settings: 'centinel-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: centinel
+    description: 'List of centinel jobs'
+    regex: '^centinel-.*'
+    <<: *releng_view_common
index e4ddeea1c631a7469812490974ad169457eab0cf..5c0a5f5dbc9e6c1b186c30c3d9b81520d72daac7 100644 (file)
@@ -57,3 +57,9 @@
     branch: 'master'
     mvn-settings: 'coe-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: coe
+    description: 'List of coe jobs'
+    regex: '^coe-.*'
+    <<: *releng_view_common
index 56ab3272c4899897af5c4c6482a0cf64e987a123..36beac1219ae0e030beb5706778d4b79732d31b4 100644 (file)
@@ -5,13 +5,9 @@
       - inttest-csit-3node
       - inttest-csit-verify-3node
 
-    # The project name
     project: 'controller'
-
-    # The functionality under test
     functionality: 'clustering'
 
-    # Project branches
     stream:
       - fluorine:
           branch: 'master'
       - all:
           scope: 'all'
 
-    # No tools system VMs needed in JCloud configuration
     tools_system_count: 0
 
-    # Features to install
     install-features: >
-        odl-restconf-noauth,
+        odl-restconf,
         odl-clustering-test-app
-
-    # Robot custom options
-    robot-options: ''
index d6fc7143a79a70a258aa63d039db632f62af3043..c6b7b4c13c0e6b63b4d8c056ba7a94bbbaa88c94 100644 (file)
@@ -55,3 +55,9 @@
     mvn-settings: 'controller-settings'
     mvn-goals: 'clean deploy -Pintegrationtests,docs'
     mvn-opts: '-Xmx4096m -XX:MaxPermSize=1024m -Dmaven.compile.fork=true'
+
+- view:
+    name: controller
+    description: 'List of controller jobs'
+    regex: '^controller-.*'
+    <<: *releng_view_common
index 7c6b907174b3739480c57ee4ea890859b39d160b..824580b2cdd63e571bfb4889910067735f10420f 100644 (file)
@@ -46,3 +46,9 @@
     mvn-settings: 'coretutorials-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
     build-timeout: 120
+
+- view:
+    name: coretutorials
+    description: 'List of coretutorials jobs'
+    regex: '^coretutorials-.*'
+    <<: *releng_view_common
index cb3eec201424acf9b0a46d121903f26eed3d597e..af0cb15599e7fa84650d99f678f14d2ca347f9fc 100644 (file)
@@ -45,3 +45,9 @@
     branch: 'master'
     mvn-settings: 'daexim-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: daexim
+    description: 'List of daexim jobs'
+    regex: '^daexim-.*'
+    <<: *releng_view_common
index 1200269dad8ec12bf95d4275571154f9d4161442..2f3bc4087eb3615993b88274b07807acf7885db8 100644 (file)
@@ -3,8 +3,14 @@
 
 - defaults:
     name: global
+    functionality: global
+    stream: global
     prefix: ''  # A prefix for job names sandbox for example: user-
 
+    scriptplan: '{project}.txt'
+    configplan: '{project}.txt'
+    testplan: '{project}-{functionality}.txt'
+    streamtestplan: '{project}-{functionality}-{stream}.txt'
     karaf-version: karaf4
     build-days-to-keep: 30
     use-features-boot: 'True'
     odl-snat-mode: 'controller'
     enable-itm-direct-tunnels: 'false'
     openstack_legacy_default_network_services: 'q-dhcp,q-meta,q-svc'
+    os-cmb-cnt: 1
+    os-ctl-cnt: 0
+    os-cmp-cnt: 0
+    os-std-topo: '0cmb-1ctl-2cmp'
 
     # openstack-infra-parameters defaults
     archive-artifacts: ''
@@ -75,7 +85,7 @@
     sm-features: ''
 
     # CSIT images configuration
-    openstack_system_image_ocata: ZZCI - CentOS 7 - devstack-ocata - 20171208-1649
+    openstack_system_image_queens: ZZCI - CentOS 7 - devstack-pike - 20171208-1649
     openstack_system_image_pike: ZZCI - CentOS 7 - devstack-pike - 20171208-1649
     stack-template: csit-2-instance-type.yaml
     docker_system_count: 1
 
     # Manual CSIT job lists used by sanity or periodic in nature.
     csit-high-frequency-list-fluorine: >
-        netvirt-csit-1node-openstack-queens-upstream-stateful-fluorine
+        netvirt-csit-1node-0cmb-1ctl-2cmp-openstack-queens-upstream-stateful-fluorine
     csit-high-frequency-list-oxygen: >
-        netvirt-csit-1node-openstack-queens-upstream-stateful-oxygen
+        netvirt-csit-1node-0cmb-1ctl-2cmp-openstack-queens-upstream-stateful-oxygen
     csit-sanity-list-fluorine: >
         openflowplugin-csit-1node-sanity-only-fluorine,
         distribution-sanity-fluorine
index ff620ae1fe478ee3d760f0eb301c1787a2d5030f..b7a6e8704ac5d45cff68fe1b94e39cc6d5465174 100644 (file)
@@ -43,3 +43,9 @@
     branch: 'master'
     mvn-settings: 'didm-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: didm
+    description: 'List of didm jobs'
+    regex: '^didm-.*'
+    <<: *releng_view_common
index 7c799b44a7a0b22daa45a348e54307dc0a7fc4b0..5cf48822e7a6a3d2ca6cd89a7beaac3af7f755b3 100644 (file)
@@ -43,3 +43,9 @@
     branch: 'master'
     mvn-settings: 'dlux-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: dlux
+    description: 'List of dlux jobs'
+    regex: '^dlux-.*'
+    <<: *releng_view_common
index ca850310b6221f86969c6fbf4cf8205a670cef8f..d006b15402ca639645ace06a62c50346b18314b9 100644 (file)
@@ -47,3 +47,9 @@
     build-node: centos7-builder-2c-8g
     mvn-settings: 'dluxapps-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: dluxapps
+    description: 'List of dluxapps jobs'
+    regex: '^dluxapps-.*'
+    <<: *releng_view_common
index ac14197063a0523b4a5466bc3e2f2418f1c63a15..f445b322716007e629fa40138fff3c2862c0daa6 100644 (file)
@@ -17,3 +17,9 @@
     build-timeout: 60
     rtd-build-url: https://readthedocs.org/api/v2/webhook/opendaylight/32322/
     rtd-token: 86e54dd38c651e2164ea63c183ae601d19cd1f3c
+
+- view:
+    name: docs
+    description: 'List of docs jobs'
+    regex: '^docs-.*'
+    <<: *releng_view_common
index 3a3271a10c085e0335daacae148807b4b8626996..82b6c628a5bb51c2e987099f22f8836466c6daa7 100644 (file)
@@ -47,3 +47,9 @@
     branch: 'master'
     mvn-settings: 'eman-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: eman
+    description: 'List of eman jobs'
+    regex: '^eman-.*'
+    <<: *releng_view_common
index ea767f6e9ffeac6f7ba38acb4c1e6bbd1ee405c7..9c6292c5a0d35e59f13855c527dbd61bf4e931b4 100644 (file)
@@ -43,3 +43,9 @@
     branch: 'master'
     mvn-settings: 'faas-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: faas
+    description: 'List of faas jobs'
+    regex: '^faas-.*'
+    <<: *releng_view_common
index d08bc6a4610996b65ef7e48f20c09453d9fea00e..1cb290d7650ce8f0445bc02137e6fde154a3af59 100644 (file)
@@ -46,3 +46,9 @@
     branch: 'master'
     mvn-settings: 'federation-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: federation
+    description: 'List of federation jobs'
+    regex: '^federation-.*'
+    <<: *releng_view_common
index b9f22ec4c11938b8bd41152152f8b5b3a28bbc95..354b441520103bfb5da521edad4e620a70151d12 100644 (file)
     feature:
       - netvirt:
           csit-list: >
-              netvirt-csit-1node-openstack-{os-branch}-gate-stateful-{stream}
+              netvirt-csit-1node-{os-std-topo}-openstack-{os-branch}-gate-stateful-{stream}
 
       - cluster-netvirt:
           csit-list: >
-              netvirt-csit-3node-openstack-{os-branch}-gate-stateful-{stream}
+              netvirt-csit-3node-{os-std-topo}-openstack-{os-branch}-gate-stateful-{stream}
+
+      - netvirt-itm-direct-tunnels:
+          csit-list: >
+              netvirt-csit-1node-{os-std-topo}-openstack-{os-branch}-gate-stateful-itm-direct-tunnels-{stream}
 
       - genius:
           csit-list: >
index db5cc0958e999fa89410fc918eb0c4b61b51675a..ba9fcf5fe7c98600776c20ec8e01b269c4581353 100644 (file)
@@ -71,3 +71,9 @@
     build-node: centos7-builder-2c-8g
     mvn-settings: 'genius-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: genius
+    description: 'List of genius jobs'
+    regex: '^genius-.*'
+    <<: *releng_view_common
index f58aa56acc44a8eb7498af10e5d229e1690e58b0..5ca1149a99351cc571d21b315e4acecae6b109b5 160000 (submodule)
@@ -1 +1 @@
-Subproject commit f58aa56acc44a8eb7498af10e5d229e1690e58b0
+Subproject commit 5ca1149a99351cc571d21b315e4acecae6b109b5
index 8b4b546395cc569bebb29ec70a0b8894a9cb5cd8..57d8b73a6ba6a0dea9985ec61a38a28f1e820b66 100644 (file)
@@ -27,9 +27,9 @@
           install-features: 'odl-groupbasedpolicy-neutron-and-ofoverlay,odl-restconf'
 
     openstack:
-      - ocata:
-          openstack-branch: 'stable/ocata'
-          odl-ml2-branch: 'stable/ocata'
+      - pike:
+          openstack-branch: 'stable/pike'
+          odl-ml2-branch: 'stable/pike'
 
     public-bridge: 'br-int'
 
index 93534339a40e1275a161677344699b46b726a3bc..aff6ca8dae27ab7ecaa99ef2b0aec7f086cda13f 100644 (file)
@@ -61,3 +61,9 @@
     mvn-settings: 'groupbasedpolicy-settings'
     mvn-goals: '-U clean deploy findbugs:findbugs'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: groupbasedpolicy
+    description: 'List of groupbasedpolicy jobs'
+    regex: '^groupbasedpolicy-.*'
+    <<: *releng_view_common
index 936c72b1e6f7aee0bfdca8028ef6ee99b616fece..ef481385fa9db2a3f56e903805c1a5cef837a340 100644 (file)
@@ -43,3 +43,9 @@
     branch: 'master'
     mvn-settings: 'honeycomb-vbd-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: vbd
+    description: 'List of vbd jobs'
+    regex: '^vbd-.*'
+    <<: *releng_view_common
index 2a865fc9c4b4b1aeaafe675e708da40f21779f10..dc6294200695fa84e2b8d77d733f16ff93a5d162 100644 (file)
@@ -58,3 +58,9 @@
     branch: 'master'
     mvn-settings: 'infrautils-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: infrautils
+    description: 'List of infrautils jobs'
+    regex: '^infrautils-.*'
+    <<: *releng_view_common
index 051377f03d4412f4b518f820c79df9119fd3a6e4..1f1d2c59ddc87e737dfd4f53ccfe18f113ce7738 100644 (file)
@@ -55,6 +55,7 @@ function set_java_vars() {
 
     echo "Set JAVA_HOME"
     export JAVA_HOME="${java_home}"
+
     # shellcheck disable=SC2037
     JAVA_RESOLVED=$(readlink -e "${java_home}/bin/java")
     echo "Java binary pointed at by JAVA_HOME: ${JAVA_RESOLVED}"
@@ -116,6 +117,41 @@ function configure_karaf_log() {
     cat ${LOGCONF}
 } # function configure_karaf_log()
 
+function run_plan() {
+    local -r type=$1
+
+    case ${type} in
+    script)
+        plan=$SCRIPTPLAN
+        ;;
+    config|*)
+        plan=$CONFIGPLAN
+        ;;
+    esac
+
+    printf "Locating ${type} plan to use...\n"
+    plan_filepath="${WORKSPACE}/test/csit/${type}plans/$plan"
+    if [ ! -f "${plan_filepath}" ]; then
+        plan_filepath="${WORKSPACE}/test/csit/${type}plans/${STREAMTESTPLAN}"
+        if [ ! -f "${plan_filepath}" ]; then
+            plan_filepath="${WORKSPACE}/test/csit/${type}plans/${TESTPLAN}"
+        fi
+    fi
+
+    if [ -f "${plan_filepath}" ]; then
+        printf "${type} plan exists!!!\n"
+        printf "Changing the ${type} plan path...\n"
+        cat ${plan_filepath} | sed "s:integration:${WORKSPACE}:" > ${type}plan.txt
+        cat ${type}plan.txt
+        for line in $( egrep -v '(^[[:space:]]*#|^[[:space:]]*$)' ${type}plan.txt ); do
+            printf "Executing ${line}...\n"
+            # shellcheck source=${line} disable=SC1091
+            source ${line}
+        done
+    fi
+    printf "Finished running ${type} plans\n"
+} # function run_plan()
+
 # convert commas in csv strings to spaces (ssv)
 function csv2ssv() {
     local csv=$1
@@ -275,7 +311,7 @@ EOF
         ssh ${!CONTROLLERIP} "sudo ps aux" > ${WORKSPACE}/ps_after.log
         pid=$(grep org.apache.karaf.main.Main ${WORKSPACE}/ps_after.log | grep -v grep | tr -s ' ' | cut -f2 -d' ')
         echo "karaf main: org.apache.karaf.main.Main, pid:${pid}"
-        ssh ${!CONTROLLERIP} "jstack ${pid}" > ${WORKSPACE}/karaf_${i}_${pid}_threads_after.log || true
+        ssh ${!CONTROLLERIP} "${JAVA_HOME}/bin/jstack -l ${pid}" > ${WORKSPACE}/karaf_${i}_${pid}_threads_after.log || true
         echo "killing karaf process..."
         ${SSH} "${!CONTROLLERIP}" bash -c 'ps axf | grep karaf | grep -v grep | awk '"'"'{print "kill -9 " $1}'"'"' | sh'
         ${SSH} ${!CONTROLLERIP} "sudo journalctl > /tmp/journalctl.log"
index 766f3897773fe1a9155668fcd9c2de64072bc1f3..3df4b69a38955935adc425f94a74c86c08efa7fa 100644 (file)
@@ -29,21 +29,21 @@ netconf-csit-1node-userfeatures-all-fluorine,
 netconf-csit-3node-cluster-stress-all-fluorine,
 netconf-csit-3node-clustering-all-fluorine,
 netconf-csit-3node-clustering-scale-all-fluorine,
-netvirt-csit-1node-openstack-pike-upstream-stateful-fluorine,
-netvirt-csit-1node-openstack-pike-upstream-stateful-itm-direct-tunnels-fluorine,
-netvirt-csit-1node-openstack-pike-upstream-stateful-snat-conntrack-fluorine,
-netvirt-csit-1node-openstack-queens-sfc-fluorine,
-netvirt-csit-1node-openstack-queens-upgrade-fluorine,
-netvirt-csit-1node-openstack-queens-upgrade-snat-conntrack-fluorine,
-netvirt-csit-1node-openstack-queens-upstream-stateful-fluorine,
-netvirt-csit-1node-openstack-queens-upstream-stateful-itm-direct-tunnels-fluorine,
-netvirt-csit-1node-openstack-queens-upstream-stateful-snat-conntrack-fluorine,
-netvirt-csit-3node-openstack-pike-upstream-stateful-fluorine,
-netvirt-csit-3node-openstack-pike-upstream-stateful-itm-direct-tunnels-fluorine,
-netvirt-csit-3node-openstack-pike-upstream-stateful-snat-conntrack-fluorine,
-netvirt-csit-3node-openstack-queens-upstream-stateful-fluorine,
-netvirt-csit-3node-openstack-queens-upstream-stateful-itm-direct-tunnels-fluorine,
-netvirt-csit-3node-openstack-queens-upstream-stateful-snat-conntrack-fluorine,
+netvirt-csit-1node-0cmb-1ctl-2cmp-openstack-pike-upstream-stateful-fluorine,
+netvirt-csit-1node-0cmb-1ctl-2cmp-openstack-pike-upstream-stateful-itm-direct-tunnels-fluorine,
+netvirt-csit-1node-0cmb-1ctl-2cmp-openstack-pike-upstream-stateful-snat-conntrack-fluorine,
+netvirt-csit-1node-0cmb-1ctl-2cmp-openstack-queens-sfc-fluorine,
+netvirt-csit-1node-0cmb-1ctl-2cmp-openstack-queens-upgrade-fluorine,
+netvirt-csit-1node-0cmb-1ctl-2cmp-openstack-queens-upgrade-snat-conntrack-fluorine,
+netvirt-csit-1node-0cmb-1ctl-2cmp-openstack-queens-upstream-stateful-fluorine,
+netvirt-csit-1node-0cmb-1ctl-2cmp-openstack-queens-upstream-stateful-itm-direct-tunnels-fluorine,
+netvirt-csit-1node-0cmb-1ctl-2cmp-openstack-queens-upstream-stateful-snat-conntrack-fluorine,
+netvirt-csit-3node-0cmb-1ctl-2cmp-openstack-pike-upstream-stateful-fluorine,
+netvirt-csit-3node-0cmb-1ctl-2cmp-openstack-pike-upstream-stateful-itm-direct-tunnels-fluorine,
+netvirt-csit-3node-0cmb-1ctl-2cmp-openstack-pike-upstream-stateful-snat-conntrack-fluorine,
+netvirt-csit-3node-0cmb-1ctl-2cmp-openstack-queens-upstream-stateful-fluorine,
+netvirt-csit-3node-0cmb-1ctl-2cmp-openstack-queens-upstream-stateful-itm-direct-tunnels-fluorine,
+netvirt-csit-3node-0cmb-1ctl-2cmp-openstack-queens-upstream-stateful-snat-conntrack-fluorine,
 netvirt-csit-hwvtep-1node-openstack-pike-upstream-stateful-fluorine,
 netvirt-csit-hwvtep-1node-openstack-queens-upstream-stateful-fluorine,
 netvirt-csit-hwvtep-3node-openstack-pike-upstream-stateful-fluorine,
index 532b3dc9660c942b510fc8e7bb4f6aea6b9d3d92..b5f4a9b32713e8a9e76d4b3192a88cad91e5ac21 100644 (file)
@@ -22,9 +22,9 @@ distribution-csit-1node-userfeatures-all-oxygen,
 dluxapps-csit-1node-yangman-all-oxygen,
 genius-csit-1node-upstream-all-oxygen,
 genius-csit-3node-upstream-all-oxygen,
+groupbasedpolicy-csit-1node-1cmb-0ctl-0cmp-openstack-pike-openstack-oxygen,
 groupbasedpolicy-csit-1node-3-node-all-oxygen,
 groupbasedpolicy-csit-1node-6node-all-oxygen,
-groupbasedpolicy-csit-1node-openstack-ocata-openstack-oxygen,
 groupbasedpolicy-csit-1node-sxp-only-oxygen,
 groupbasedpolicy-csit-3node-clustering-all-oxygen,
 l2switch-csit-1node-host-scalability-daily-only-oxygen,
@@ -41,19 +41,19 @@ netconf-csit-1node-userfeatures-all-oxygen,
 netconf-csit-3node-cluster-stress-all-oxygen,
 netconf-csit-3node-clustering-all-oxygen,
 netconf-csit-3node-clustering-scale-all-oxygen,
-netvirt-csit-1node-openstack-pike-upstream-stateful-itm-direct-tunnels-oxygen,
-netvirt-csit-1node-openstack-pike-upstream-stateful-oxygen,
-netvirt-csit-1node-openstack-pike-upstream-stateful-snat-conntrack-oxygen,
-netvirt-csit-1node-openstack-queens-sfc-oxygen,
-netvirt-csit-1node-openstack-queens-upstream-stateful-itm-direct-tunnels-oxygen,
-netvirt-csit-1node-openstack-queens-upstream-stateful-oxygen,
-netvirt-csit-1node-openstack-queens-upstream-stateful-snat-conntrack-oxygen,
-netvirt-csit-3node-openstack-pike-upstream-stateful-itm-direct-tunnels-oxygen,
-netvirt-csit-3node-openstack-pike-upstream-stateful-oxygen,
-netvirt-csit-3node-openstack-pike-upstream-stateful-snat-conntrack-oxygen,
-netvirt-csit-3node-openstack-queens-upstream-stateful-itm-direct-tunnels-oxygen,
-netvirt-csit-3node-openstack-queens-upstream-stateful-oxygen,
-netvirt-csit-3node-openstack-queens-upstream-stateful-snat-conntrack-oxygen,
+netvirt-csit-1node-0cmb-1ctl-2cmp-openstack-pike-upstream-stateful-itm-direct-tunnels-oxygen,
+netvirt-csit-1node-0cmb-1ctl-2cmp-openstack-pike-upstream-stateful-oxygen,
+netvirt-csit-1node-0cmb-1ctl-2cmp-openstack-pike-upstream-stateful-snat-conntrack-oxygen,
+netvirt-csit-1node-0cmb-1ctl-2cmp-openstack-queens-sfc-oxygen,
+netvirt-csit-1node-0cmb-1ctl-2cmp-openstack-queens-upstream-stateful-itm-direct-tunnels-oxygen,
+netvirt-csit-1node-0cmb-1ctl-2cmp-openstack-queens-upstream-stateful-oxygen,
+netvirt-csit-1node-0cmb-1ctl-2cmp-openstack-queens-upstream-stateful-snat-conntrack-oxygen,
+netvirt-csit-3node-0cmb-1ctl-2cmp-openstack-pike-upstream-stateful-itm-direct-tunnels-oxygen,
+netvirt-csit-3node-0cmb-1ctl-2cmp-openstack-pike-upstream-stateful-oxygen,
+netvirt-csit-3node-0cmb-1ctl-2cmp-openstack-pike-upstream-stateful-snat-conntrack-oxygen,
+netvirt-csit-3node-0cmb-1ctl-2cmp-openstack-queens-upstream-stateful-itm-direct-tunnels-oxygen,
+netvirt-csit-3node-0cmb-1ctl-2cmp-openstack-queens-upstream-stateful-oxygen,
+netvirt-csit-3node-0cmb-1ctl-2cmp-openstack-queens-upstream-stateful-snat-conntrack-oxygen,
 netvirt-csit-hwvtep-1node-openstack-pike-upstream-stateful-oxygen,
 netvirt-csit-hwvtep-1node-openstack-queens-upstream-stateful-oxygen,
 netvirt-csit-hwvtep-3node-openstack-pike-upstream-stateful-oxygen,
index af7327a60a13af9f80fcc7d8efd18e00b1a2f6d1..ce35b2fa0ca3fac0d99debf0db17b0653e8ee4a1 100644 (file)
@@ -30,7 +30,7 @@
           karaf-version: odl
           # Self-Managed projects repos and features:
           sm-repos: mvn:org.opendaylight.sxp/features-sxp//xml/features
-          sm-features: odl-sxp-controller
+          sm-features: odl-sxp-routing
       - oxygen:
           branch: 'stable/oxygen'
           karaf-version: karaf4
       - integration-csit-archive-build
       - lf-infra-publish
 
+- view:
+    name: distribution
+    description: 'List of distribution jobs'
+    regex: '^(integration-)?distribution-.*'
+    <<: *releng_view_common
index 42a2d8696633655f6e63c6db275f771967fae490..c6e567b8970e337c17d756c36067395c34cdedae 100644 (file)
@@ -42,17 +42,7 @@ nodes_list=$(join "${nodes[@]}")
 
 echo ${nodes_list}
 
-# Run script plan in case it exists
-if [ -f ${WORKSPACE}/test/csit/scriptplans/${TESTPLAN} ]; then
-    echo "scriptplan exists!!!"
-    echo "Reading the scriptplan:"
-    cat ${WORKSPACE}/test/csit/scriptplans/${TESTPLAN} | sed "s:integration:${WORKSPACE}:" > scriptplan.txt
-    cat scriptplan.txt
-    for line in $( egrep -v '(^[[:space:]]*#|^[[:space:]]*$)' scriptplan.txt ); do
-        echo "Executing ${line}..."
-        source ${line}
-    done
-fi
+run_plan "script"
 
 # Create the configuration script to be run on controllers.
 cat > ${WORKSPACE}/configuration-script.sh <<EOF
@@ -139,22 +129,7 @@ do
     ssh ${!CONTROLLERIP} "bash /tmp/configuration-script.sh ${i}"
 done
 
-# Run config plan in case it exists
-configplan_filepath="${WORKSPACE}/test/csit/configplans/${STREAMTESTPLAN}"
-if [ ! -f "${configplan_filepath}" ]; then
-    configplan_filepath="${WORKSPACE}/test/csit/configplans/${TESTPLAN}"
-fi
-
-if [ -f ${configplan_filepath} ]; then
-    echo "configplan exists!!!"
-    echo "Reading the configplan:"
-    cat ${configplan_filepath} | sed "s:integration:${WORKSPACE}:" > configplan.txt
-    cat configplan.txt
-    for line in $( egrep -v '(^[[:space:]]*#|^[[:space:]]*$)' configplan.txt ); do
-        echo "Executing ${line}..."
-        source ${line}
-    done
-fi
+run_plan "config"
 
 # Copy over the startup script to each controller and execute it.
 for i in `seq 1 ${NUM_ODL_SYSTEM}`
index 021161e61d6a10646aaf01618dba9d0eae810bc1..6f43a35e5a1d57aa5650441c3457921030f7a5d9 100644 (file)
@@ -30,17 +30,7 @@ echo "ACTUALFEATURES: ${ACTUALFEATURES}"
 SPACE_SEPARATED_FEATURES=$(echo "${ACTUALFEATURES}" | tr ',' ' ')
 echo "SPACE_SEPARATED_FEATURES: ${SPACE_SEPARATED_FEATURES}"
 
-if [ -f "${WORKSPACE}/test/csit/scriptplans/${TESTPLAN}" ]; then
-    echo "scriptplan exists!!!"
-    echo "Changing the scriptplan path..."
-    cat ${WORKSPACE}/test/csit/scriptplans/${TESTPLAN} | sed "s:integration:${WORKSPACE}:" > scriptplan.txt
-    cat scriptplan.txt
-    for line in $( egrep -v '(^[[:space:]]*#|^[[:space:]]*$)' scriptplan.txt ); do
-        echo "Executing ${line}..."
-        # shellcheck source=${line} disable=SC1091
-        source ${line}
-    done
-fi
+run_plan "script"
 
 cat > ${WORKSPACE}/configuration-script.sh <<EOF
 set -x
@@ -223,23 +213,7 @@ do
     done
 done
 
-echo "Locating config plan to use..."
-configplan_filepath="${WORKSPACE}/test/csit/configplans/${STREAMTESTPLAN}"
-if [ ! -f "${configplan_filepath}" ]; then
-    configplan_filepath="${WORKSPACE}/test/csit/configplans/${TESTPLAN}"
-fi
-
-if [ -f "${configplan_filepath}" ]; then
-    echo "configplan exists!!!"
-    echo "Changing the configplan path..."
-    cat ${configplan_filepath} | sed "s:integration:${WORKSPACE}:" > configplan.txt
-    cat configplan.txt
-    for line in $( egrep -v '(^[[:space:]]*#|^[[:space:]]*$)' configplan.txt ); do
-        echo "Executing ${line}..."
-        # shellcheck source=${line} disable=SC1091
-        source ${line}
-    done
-fi
+run_plan "config"
 
 # Copy over the startup script to controller and execute it.
 for i in `seq 1 ${NUM_ODL_SYSTEM}`
@@ -271,7 +245,7 @@ do
     ssh ${!CONTROLLERIP} "sudo ps aux" > ${WORKSPACE}/ps_before.log
     pid=$(grep org.apache.karaf.main.Main ${WORKSPACE}/ps_before.log | grep -v grep | tr -s ' ' | cut -f2 -d' ')
     echo "karaf main: org.apache.karaf.main.Main, pid:${pid}"
-    ssh ${!CONTROLLERIP} "jstack ${pid}" > ${WORKSPACE}/karaf_${i}_${pid}_threads_before.log || true
+    ssh ${!CONTROLLERIP} "${JAVA_HOME}/bin/jstack -l ${pid}" > ${WORKSPACE}/karaf_${i}_${pid}_threads_before.log || true
 done
 
 if [ ${NUM_OPENSTACK_SYSTEM} -gt 0 ]; then
@@ -360,7 +334,7 @@ do
     ssh ${!CONTROLLERIP} "sudo ps aux" > ${WORKSPACE}/ps_after.log
     pid=$(grep org.apache.karaf.main.Main ${WORKSPACE}/ps_after.log | grep -v grep | tr -s ' ' | cut -f2 -d' ')
     echo "karaf main: org.apache.karaf.main.Main, pid:${pid}"
-    ssh ${!CONTROLLERIP} "jstack ${pid}" > ${WORKSPACE}/karaf_${i}_${pid}_threads_after.log || true
+    ssh ${!CONTROLLERIP} "${JAVA_HOME}/bin/jstack -l ${pid}" > ${WORKSPACE}/karaf_${i}_${pid}_threads_after.log || true
     echo "Killing ODL"
     set +e  # We do not want to create red dot just because something went wrong while fetching logs.
     ssh "${!CONTROLLERIP}" bash -c 'ps axf | grep karaf | grep -v grep | awk '"'"'{print "kill -9 " $1}'"'"' | sh'
index 2b6f7fde741071053a94a1f3508835e04973331f..fbc577c2c7b6e8c4812bd628d5f16873bfa15029 100644 (file)
@@ -57,6 +57,9 @@ DISTROSTREAM: ${DISTROSTREAM}
 BUNDLE_URL: ${BUNDLE_URL}
 CONTROLLERFEATURES: ${CONTROLLERFEATURES}
 CONTROLLERDEBUGMAP: ${CONTROLLERDEBUGMAP}
+SCRIPTPLAN: ${SCRIPTPLAN}
+CONFIGPLAN: ${CONFIGPLAN}
+STREAMTESTPLAN: ${STREAMTESTPLAN}
 TESTPLAN: ${TESTPLAN}
 SUITES: ${SUITES}
 PATCHREFSPEC: ${PATCHREFSPEC}
@@ -141,7 +144,7 @@ function install_openstack_clients_in_robot_vm() {
     done
 
     if [ "${ENABLE_NETWORKING_L2GW}" == "yes" ]; then
-        #networking-l2gw is not officially available in any release yet. Gettting the latest stable version.
+        #networking-l2gw is not officially available in any release yet. Getting the latest stable version.
         $PYTHON -m pip install networking-l2gw==11.0.0
     fi
 }
@@ -158,17 +161,6 @@ function is_openstack_feature_enabled() {
     echo 0
 }
 
-function fix_libvirt_version_n_cpu_pike() {
-    local ip=$1
-    ${SSH} ${ip} "
-        cd /opt/stack;
-        git clone https://git.openstack.org/openstack/requirements;
-        cd requirements;
-        git checkout stable/pike;
-        sed -i s/libvirt-python===3.5.0/libvirt-python===4.2.0/ upper-constraints.txt
-   "
-}
-
 #Function to install rdo release
 # This will help avoiding installing wrong version of packages which causes
 # functionality failures
@@ -686,25 +678,8 @@ function retry() {
     return ${rc}
 }
 
-# if we are using the new netvirt impl, as determined by the feature name
-# odl-netvirt-openstack (note: old impl is odl-ovsdb-openstack) then we
-# want PROVIDER_MAPPINGS to be used -- this should be fixed if we want to support
-# external networks in legacy netvirt
-if [[ ${CONTROLLERFEATURES} == *"odl-netvirt-openstack"* ]]; then
-  ODL_PROVIDER_MAPPINGS="\${PUBLIC_PHYSICAL_NETWORK}:${PUBLIC_BRIDGE}"
-else
-  ODL_PROVIDER_MAPPINGS=
-fi
-
-# if we are using the old netvirt impl, as determined by the feature name
-# odl-ovsdb-openstack (note: new impl is odl-netvirt-openstack) then we
-# want ODL_L3 to be True.  New impl wants it False
-if [[ ${CONTROLLERFEATURES} == *"odl-ovsdb-openstack"* ]]; then
-    ODL_L3=True
-else
-    ODL_L3=False
-fi
-
+ODL_PROVIDER_MAPPINGS="\${PUBLIC_PHYSICAL_NETWORK}:${PUBLIC_BRIDGE}"
+ODL_L3=False
 RECLONE=False
 ODL_PORT=8181
 
@@ -826,8 +801,10 @@ for i in `seq 1 ${NUM_OPENSTACK_CONTROL_NODES}`; do
     scp ${WORKSPACE}/get_devstack.sh ${!CONTROLIP}:/tmp
     # devstack Master is yet to migrate fully to lib/neutron, there are some ugly hacks that is
     # affecting the stacking.
-    #Workaround For Queens, Make the physical Network as physnet1 in lib/neutron
-    #Workaround Comment out creating initial Networks in lib/neutron
+    # Workaround For Queens, Make the physical Network as physnet1 in lib/neutron
+    # In Queens the neutron new libs are used and do not have the following options from Pike and earlier:
+    # Q_ML2_PLUGIN_FLAT_TYPE_OPTIONS could be used for the flat_networks
+    # and Q_ML2_PLUGIN_VLAN_TYPE_OPTIONS could be used for the ml2_type_vlan
     ${SSH} ${!CONTROLIP} "bash /tmp/get_devstack.sh > /tmp/get_devstack.sh.txt 2>&1"
     if [ "${ODL_ML2_BRANCH}" == "stable/queens" ]; then
        ssh ${!CONTROLIP} "sed -i 's/flat_networks public/flat_networks public,physnet1/' /opt/stack/devstack/lib/neutron"
@@ -884,12 +861,6 @@ for i in `seq 1 ${NUM_OPENSTACK_COMPUTE_NODES}`; do
     scp ${WORKSPACE}/hosts_file ${!COMPUTEIP}:/tmp/hosts
     scp ${WORKSPACE}/get_devstack.sh  ${!COMPUTEIP}:/tmp
     ${SSH} ${!COMPUTEIP} "bash /tmp/get_devstack.sh > /tmp/get_devstack.sh.txt 2>&1"
-    if [ "${ODL_ML2_BRANCH}" == "stable/pike" ]; then
-        echo "Updating requirements for ${ODL_ML2_BRANCH}"
-        echo "Workaround for libvirt-python failing installation"
-        echo "Modify upper-constraints to use libvirt-python 4.2.0"
-        fix_libvirt_version_n_cpu_pike ${!COMPUTEIP}
-    fi
     create_compute_node_local_conf ${!COMPUTEIP} ${!CONTROLIP} ${ODLMGRIP[$SITE_INDEX]} "${ODL_OVS_MGRS[$SITE_INDEX]}"
     scp ${WORKSPACE}/local.conf_compute_${!COMPUTEIP} ${!COMPUTEIP}:/opt/stack/devstack/local.conf
     echo "Install rdo release to avoid incompatible Package versions"
index 36479f2fdeaf6ebc63048ed3ec9db8e6838d074d..2ab9bb4fc9aa28687f0ebfa9ebfff99cd2c3e6e5 100644 (file)
           default: '{stream}'
           description: 'Distribution stream string, for suites to know which behavior to expect'
 
+- parameter:
+    name: integration-script-plan
+    parameters:
+      - string:
+          name: SCRIPTPLAN
+          default: '{script-plan}'
+          description: 'Script plan we will run before downloading and un-archiving am ODL distribution'
+
+- parameter:
+    name: integration-config-plan
+    parameters:
+      - string:
+          name: CONFIGPLAN
+          default: '{config-plan}'
+          description: 'Config plan we will run after un-archiving and starting an ODL distribution'
+
 - parameter:
     name: integration-stream-test-plan
     parameters:
           description: |
               List of space-separated suites. Useful when running specific suites within a testplan.
               Do not include ${{WORKSPACE}}/test/csit/suites/ in the values:
-              (ex. openstack/connectivity/l2.robot openstack/tempest/tempest.robot
-              integration/test/csit/suites/netvirt/ElanService/).
+              (ex. openstack/connectivity/l2.robot openstack/clustering/ha_l2.robot
+               openstack/tempest/tempest.robot netvirt/elan/elan.robot).
 
 - parameter:
     name: integration-test-options
                 exclude-no-code-change: false
             - draft-published-event
             - comment-added-contains-event:
-                comment-contains-value: 'recheck$'
+                comment-contains-value: '^Patch Set[ ]+[0-9]+:([ ]+|[\n]+)(recheck|reverify)$'
           override-votes: true
           gerrit-build-unstable-verified-value: +1
           gerrit-build-unstable-codereview-value: 0
                     #!/bin/bash
                     cd $WORKSPACE
                     mkdir -p ./archives
+                    for i in `seq 1 ${NUM_ODL_SYSTEM}`; do
+                        NODE_FOLDER="./archives/odl_${i}"
+                        mkdir -p ${NODE_FOLDER}
+                        mv odl${i}_karaf* ${NODE_FOLDER} || true
+                        mv karaf_${i}_*_threads* ${NODE_FOLDER} || true
+                        mv *_${i}.png ${NODE_FOLDER} || true
+                    done
                     curl --output robot-plugin.zip "$BUILD_URL/robot/report/*zip*/robot-plugin.zip"
                     unzip -d ./archives robot-plugin.zip
                     mv *.log *.log.gz *.csv *.png ./archives || true  # Don't fail if file missing
index 8a548b938df0ffd7f8982873f0f36ccf6e6464ed..e11908bb618150350189b2a421b7f7f4c1f229d5 100644 (file)
@@ -92,7 +92,7 @@ do
     ssh ${!CONTROLLERIP} "sudo ps aux" > ${WORKSPACE}/ps_before.log
     pid=$(grep org.apache.karaf.main.Main ${WORKSPACE}/ps_before.log | grep -v grep | tr -s ' ' | cut -f2 -d' ')
     echo "karaf main: org.apache.karaf.main.Main, pid:${pid}"
-    ssh ${!CONTROLLERIP} "jstack ${pid}" > ${WORKSPACE}/karaf_${i}_${pid}_threads_before.log || true
+    ssh ${!CONTROLLERIP} "${JAVA_HOME}/bin/jstack -l ${pid}" > ${WORKSPACE}/karaf_${i}_${pid}_threads_before.log || true
 done
 
 echo "Generating mininet variables..."
@@ -175,7 +175,7 @@ do
     ssh ${!CONTROLLERIP} "sudo ps aux" > ${WORKSPACE}/ps_after.log
     pid=$(grep org.apache.karaf.main.Main ${WORKSPACE}/ps_after.log | grep -v grep | tr -s ' ' | cut -f2 -d' ')
     echo "karaf main: org.apache.karaf.main.Main, pid:${pid}"
-    ssh ${!CONTROLLERIP} "jstack ${pid}" > ${WORKSPACE}/karaf_${i}_${pid}_threads_after.log || true
+    ssh ${!CONTROLLERIP} "${JAVA_HOME}/bin/jstack -l ${pid}" > ${WORKSPACE}/karaf_${i}_${pid}_threads_after.log || true
     echo "killing karaf process..."
     ssh "${!CONTROLLERIP}" bash -c 'ps axf | grep karaf | grep -v grep | awk '"'"'{print "kill -9 " $1}'"'"' | sh'
 done
index c7634c551af5b3387f3bc04f5021be784a4f0d68..b69e962ace437ee233fa1445a6256c19eef1a710 100644 (file)
           controller-features: '{install-features}'
       - integration-test-options:
           test-options: '{robot-options}'
+      - integration-script-plan:
+          script-plan: '{scriptplan}'
+      - integration-config-plan:
+          config-plan: '{configplan}'
       - integration-stream-test-plan:
           stream-test-plan: '{project}-{functionality}-{verify-stream}.txt'
       - integration-test-plan:
           controller-debug-map: '{debug-map}'
       - integration-test-options:
           test-options: '{robot-options}'
+      - integration-script-plan:
+          script-plan: '{scriptplan}'
+      - integration-config-plan:
+          config-plan: '{configplan}'
       - integration-stream-test-plan:
-          stream-test-plan: '{project}-{functionality}-{stream}.txt'
+          stream-test-plan: '{streamtestplan}'
       - integration-test-plan:
-          test-plan: '{project}-{functionality}.txt'
+          test-plan: '{testplan}'
       - integration-test-suites:
           test-suites: '{test-suites}'
       - integration-patch-refspec:
           controller-features: 'odl-jolokia,{install-features}'
       - integration-test-options:
           test-options: '{robot-options}'
+      - integration-script-plan:
+          script-plan: '{scriptplan}'
+      - integration-config-plan:
+          config-plan: '{configplan}'
       - integration-stream-test-plan:
           stream-test-plan: '{project}-{functionality}-{verify-stream}.txt'
       - integration-test-plan:
           controller-debug-map: '{debug-map}'
       - integration-test-options:
           test-options: '{robot-options}'
+      - integration-script-plan:
+          script-plan: '{scriptplan}'
+      - integration-config-plan:
+          config-plan: '{configplan}'
       - integration-stream-test-plan:
-          stream-test-plan: '{project}-{functionality}-{stream}.txt'
+          stream-test-plan: '{streamtestplan}'
       - integration-test-plan:
-          test-plan: '{project}-{functionality}.txt'
+          test-plan: '{testplan}'
       - integration-test-suites:
           test-suites: '{test-suites}'
       - integration-patch-refspec:
           controller-features: 'odl-jolokia,{install-features}'
       - integration-test-options:
           test-options: '{robot-options}'
+      - integration-script-plan:
+          script-plan: '{scriptplan}'
+      - integration-config-plan:
+          config-plan: '{configplan}'
       - integration-stream-test-plan:
           stream-test-plan: '{project}-{functionality}-{stream}.txt'
       - integration-test-plan:
           controller-debug-map: '{debug-map}'
       - integration-test-options:
           test-options: '{robot-options}'
+      - integration-script-plan:
+          script-plan: '{scriptplan}'
+      - integration-config-plan:
+          config-plan: '{configplan}'
       - integration-test-plan:
           test-plan: '{testplan}'
       - integration-test-suites:
       - lf-infra-publish
 
 - job-template:
-    name: '{prefix}{project}-csit-{topology}-openstack-{openstack}-{functionality}-{stream}'
+    # yamllint disable-line rule:line-length
+    name: '{prefix}{project}-csit-{topology}-{os-cmb-cnt}cmb-{os-ctl-cnt}ctl-{os-cmp-cnt}cmp-openstack-{openstack}-{functionality}-{stream}'
     id: inttest-csit-openstack
     disabled: false
 
           controller-debug-map: '{debug-map}'
       - integration-test-options:
           test-options: '{robot-options}'
+      - integration-script-plan:
+          script-plan: '{scriptplan}'
+      - integration-config-plan:
+          config-plan: '{configplan}'
       - integration-test-plan:
           test-plan: '{testplan}'
       - integration-test-suites:
index cfde9c0501a6f10d58bd92170efda939b0313e7a..da4fb8f3dffaa01135a6681d84e3b2b5b382dd50 100644 (file)
           mvn-version: 'mvn35'
           csit-list: !include: csit-jobs-fluorine.lst
           build-order: >
-              infrautils mdsal controller aaa netconf daexim bgpcep ovsdb neutron
-              lispflowmapping openflowplugin coe genius sfc netvirt
+              odlparent yangtools infrautils mdsal controller aaa netconf daexim bgpcep
+              ovsdb neutron lispflowmapping openflowplugin coe genius sfc netvirt
 
       - oxygen:
           branch: 'stable/oxygen'
           mvn-version: 'mvn35'
           csit-list: !include: csit-jobs-oxygen.lst
           build-order: >
-              infrautils mdsal controller aaa netconf daexim bgpcep ovsdb neutron
-              lispflowmapping openflowplugin coe genius sfc netvirt
+              odlparent yangtools infrautils mdsal controller aaa netconf daexim bgpcep
+              ovsdb neutron lispflowmapping openflowplugin coe genius sfc netvirt
 
 - project:
     name: integration-distribution
@@ -50,7 +50,7 @@
           csit-blacklist: >
               alto bier capwap centinel didm dluxapps groupbasedpolicy iotdm jsonrpc lacp
               l2switch messaging4transport nemo netide nic ocpplugin of-config p4plugin packetcable
-              sdninterfaceapp sxp tsdr unimgr usc usecplugin vtn gate longevity sanity tdd wip
+              sdninterfaceapp sxp tsdr unimgr usc usecplugin vtn gate longevity sanity tdd tempest wip
           csit-list: !include: csit-jobs-fluorine.lst
           csit-weekly-list: '{csit-weekly-list-fluorine}'
           csit-high-frequency-list: '{csit-high-frequency-list-fluorine}'
@@ -58,7 +58,7 @@
           branch: 'stable/oxygen'
           csit-blacklist: >
               capwap centinel didm iotdm jsonrpc lacp messaging4transport netide nic
-              ocpplugin sdninterfaceapp unimgr usecplugin gate longevity sanity tdd wip
+              ocpplugin sdninterfaceapp unimgr usecplugin gate longevity sanity tdd tempest wip
           csit-list: !include: csit-jobs-oxygen.lst
           csit-weekly-list: '{csit-weekly-list-oxygen}'
           csit-high-frequency-list: '{csit-high-frequency-list-oxygen}'
 
     publishers:
       - lf-infra-publish
+
+- view:
+    name: integration
+    description: 'List of integration jobs'
+    regex: '^integration-.*'
+    <<: *releng_view_common
index cd7fbbeb62bc6b3bbec44f89b0594578aa867a0b..eb61446ec9a3e4829ceff6dd1a7a36c7ecf6e250 100755 (executable)
@@ -2,14 +2,6 @@
 
 set -e
 
-# TODO: 1) clean up inline todo's below :)
-# TODO: 2) Use just a topic branch to create a distribution.  see this email:
-#          https://lists.opendaylight.org/pipermail/discuss/2015-December/006040.html
-# TODO: 3) Bubble up CSIT jobs that are triggered by the multipatch job to a jenkins
-#          parameter.  the default can be distribution-test which calls all CSIT jobs
-#          but being able to easily override it to a smaller subset (or none) will be
-#          helpful
-
 # create a fresh empty place to build this custom distribution
 BUILD_DIR=${WORKSPACE}/patch_tester
 DISTRIBUTION_BRANCH_TO_BUILD=$DISTROBRANCH  #renaming variable for clarity
@@ -29,8 +21,6 @@ export EMAIL="sandbox@jenkins.opendaylight.org"
 export GIT_COMMITTER_NAME="Multipatch Job"
 
 # Extract a list of patches per project from an comment trigger. An example is:
-# Patch Set 1:
-#
 # multipatch-build:openflowplugin:45/69445/1,genius:46/69446/1,netvirt:47/69447/1
 if [ -n "$GERRIT_EVENT_COMMENT_TEXT" ]; then
     if [[ "$GERRIT_EVENT_COMMENT_TEXT" == *fast* ]]; then
@@ -57,15 +47,18 @@ if [[ "${PATCHES_TO_BUILD}" == *topic* ]]; then
         # get all patches number for a topic for a given project
         IFS=$'\n' read -rd '' -a GERRIT_PATCH_LIST <<< "$(ssh -p 29418 jenkins-$SILO@git.opendaylight.org gerrit query status:open topic:${TOPIC} project:${PROJECT} \
         | grep 'number:' | awk '{{ print $2 }}')" || true
-        echo "Add ${PROJECT}:${GERRIT_PATCH_LIST[*]}"
         # add project if it is the first with patches or it is not the first
         if [[ -z "${PATCHES_TO_BUILD}" && ! -z "${GERRIT_PATCH_LIST[*]}" ]]; then
             PATCHES_TO_BUILD="${PROJECT}"
         elif [[ ! -z "${PATCHES_TO_BUILD}" ]]; then
+            if [[ ! -z "${GERRIT_PATCH_LIST[*]}" ]]; then
+                echo "Add ${PROJECT}:${DISTRIBUTION_BRANCH_TO_BUILD}"
+            fi
             PATCHES_TO_BUILD="${PATCHES_TO_BUILD},${PROJECT}"
         fi
         # sort project patches
         if [[ ! -z "${GERRIT_PATCH_LIST[*]}" ]]; then
+            echo "Add ${PROJECT}:${GERRIT_PATCH_LIST[*]}"
             REF_LIST=()
             # create reference list with patch number-refspec
             for PATCH in "${GERRIT_PATCH_LIST[@]}"; do
@@ -92,32 +85,28 @@ IFS=',' read -ra PATCHES <<< "${PATCHES_TO_BUILD}"
 declare -a PROJECTS
 
 # For each patch:
-# * Clone the project.
-# * Optionally, checkout a specific (typically unmerged) Gerrit patch. If none,
+# 1. Clone the project.
+# 2. Optionally, checkout a specific (typically unmerged) Gerrit patch. If none,
 #   default to Integration/Distribution branch via {branch} JJB param.
-# * Also optionally, cherry-pick series of patches on top of the checkout.
-# * Final option: perform a 'release' by removing "-SNAPSHOT" everywhere within the project.
+# 3. Also optionally, cherry-pick series of patches on top of the checkout.
 #
 # Each patch is found in the ${PATCHES_TO_BUILD} variable as a comma separated
-# list of project[=checkout][:cherry-pick]* values.
+# list of project[=checkout][:cherry-pick]* values. Examples:
 #
 # Checkout a (typically unmerged) Gerrit patch on top of odlparent's git clone:
-#
 # PATCHES_TO_BUILD='odlparent=45/30045/2'
 #
 # Checkout patches for both odlparent and yangtools:
-#
 # PATCHES_TO_BUILD='odlparent=45/30045/2,yangtools:53/26853/25'
 #
 # Checkout a patch for controller, cherry-pick another patch on top of it:
-#
 # PATCHES_TO_BUILD='controller=61/29761/5:45/29645/6'
 distribution_status="not_included"
-for proto_patch in "${PATCHES[@]}"
+for patch in "${PATCHES[@]}"
 do
-    echo "working on ${proto_patch}"
+    echo "working on ${patch}"
     # For patch=controller=61/29761/5:45/29645/6, this gives controller
-    PROJECT="$(echo ${proto_patch} | cut -d\: -f 1 | cut -d\= -f 1)"
+    PROJECT="$(echo ${patch} | cut -d\: -f 1 | cut -d\= -f 1)"
     if [ "${PROJECT}" == "integration/distribution" ]; then
         distribution_status="included"
     fi
@@ -126,24 +115,27 @@ do
     echo "cloning project ${PROJECT}"
     git clone "https://git.opendaylight.org/gerrit/p/${PROJECT}"
     cd ${PROJECT_SHORTNAME}
-    if [ "$(echo -n ${proto_patch} | tail -c 1)" == 'r' ]; then
-        pure_patch="$(echo -n $proto_patch | head -c -1)"
-    else
-        pure_patch="$proto_patch"
-    fi
     # For patch = controller=61/29761/5:45/29645/6, this gives 61/29761/5
-    CHECKOUT="$(echo ${pure_patch} | cut -d\= -s -f 2 | cut -d\: -f 1)"
+    CHECKOUT="$(echo ${patch} | cut -d\= -s -f 2 | cut -d\: -f 1)"
+    # If project has a patch, checkout patch, otherwise use distribution branch
     if [ "x${CHECKOUT}" != "x" ]; then
         echo "checking out ${CHECKOUT}"
         # TODO: Make this script accept "29645/6" as a shorthand for "45/29645/6".
         git fetch "https://git.opendaylight.org/gerrit/${PROJECT}" "refs/changes/$CHECKOUT"
         git checkout FETCH_HEAD
+
     else
-        echo "checking out ${DISTRIBUTION_BRANCH_TO_BUILD}"
-        git checkout "${DISTRIBUTION_BRANCH_TO_BUILD}"
+        # If project with no patch = yangtools, download master branch
+        if [ "${PROJECT}" == "yangtools" ]; then
+            echo "checking out master"
+            git checkout master
+        else
+            echo "checking out ${DISTRIBUTION_BRANCH_TO_BUILD}"
+            git checkout "${DISTRIBUTION_BRANCH_TO_BUILD}"
+        fi
     fi
     # For patch=controller=61/29761/5:45/29645/6, this gives 45/29645/6
-    PICK_SEGMENT="$(echo "${pure_patch}" | cut -d\: -s -f 2-)"
+    PICK_SEGMENT="$(echo "${patch}" | cut -d\: -s -f 2-)"
     IFS=':' read -ra PICKS <<< "${PICK_SEGMENT}"
     for pick in "${PICKS[@]}"
     do
@@ -151,15 +143,10 @@ do
         git fetch "https://git.opendaylight.org/gerrit/${PROJECT}" "refs/changes/${pick}"
         git cherry-pick --ff --keep-redundant-commits FETCH_HEAD
     done
-    # Check whether the patch ends with 'r', and the patch isn't the project
-    # (to avoid releasing controller...)
-    if [ "${proto_patch: -1}" = "r" ] && [ "${proto_patch}" != "${PROJECT}" ]; then
-        # Here 'r' means release. Useful for testing Nitrogen Odlparent changes.
-        find . -name "*.xml" -print0 | xargs -0 sed -i 's/-SNAPSHOT//g'
-    fi
     cd "${BUILD_DIR}"
 done
 
+# Finally add distribution if there is no int/dist patch
 if [ "${distribution_status}" == "not_included" ]; then
     echo "adding integration/distribution"
     PROJECTS+=(distribution)
@@ -170,6 +157,36 @@ if [ "${distribution_status}" == "not_included" ]; then
     cd "${BUILD_DIR}"
 fi
 
+# If there is a patch for odlparent or yangtools (MRI projects), adjust version to mdsal project:
+# 1. Extract project version in patch
+# 2. Extract project MSI version from mdsal project
+# 3. Replace version in patch by MSI version
+# Otherwise release the MRI project
+if [[ -d "odlparent" ]]; then
+    if [[ -d "mdsal" ]]; then
+        # Extract patch and MSI used version
+        patch_version="$(xpath ./odlparent/odlparent-lite/pom.xml '/project/version/text()' 2> /dev/null)"
+        msi_version="$(xpath ./mdsal/pom.xml '/project/parent/version/text()' 2> /dev/null)"
+        # Replace version
+        find ./odlparent -name "*.xml" -print0 | xargs -0 sed -i "s/${patch_version}/${msi_version}/g"
+    else
+        # Release project
+        find ./odlparent -name "*.xml" -print0 | xargs -0 sed -i 's/-SNAPSHOT//g'
+    fi
+fi
+if [[ -d "yangtools" ]]; then
+        if [[ -d "mdsal" ]]; then
+        # Extract patch and MSI used version
+        patch_version="$(xpath ./yangtools/pom.xml '/project/version/text()' 2> /dev/null)"
+        msi_version="$(xpath ./mdsal/binding/yang-binding/pom.xml '/project/dependencyManagement/dependencies/dependency/version/text()' 2> /dev/null)"
+        # Replace version
+        find ./yangtools -name "*.xml" -print0 | xargs -0 sed -i "s/${patch_version}/${msi_version}/g"
+    else
+        # Release project
+        find ./yangtools -name "*.xml" -print0 | xargs -0 sed -i 's/-SNAPSHOT//g'
+    fi
+fi
+
 # Second phase: build everything
 
 for PROJECT_SHORTNAME in "${PROJECTS[@]}"; do
index fd58902819db0203602a16f910e6e54b55f07335..0d903164ee99320a28b198fb2ddebc2533ef8489 100644 (file)
@@ -46,3 +46,9 @@
     build-node: centos7-builder-2c-8g
     mvn-settings: 'iotdm-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: iotdm
+    description: 'List of iotdm jobs'
+    regex: '^iotdm-.*'
+    <<: *releng_view_common
index 4b0311c705e2044a3197e8efc3fe2e7f03d3ee2b..109d7e9194142e11acaa2485a7bb95cb7ee6c9bf 100644 (file)
@@ -44,3 +44,9 @@
     branch: 'master'
     mvn-settings: 'jsonrpc-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: jsonrpc
+    description: 'List of jsonrpc jobs'
+    regex: '^jsonrpc-.*'
+    <<: *releng_view_common
index ab0fc666c97f585c050c179cb3b784301a3f1a74..57205f112c8b70961abf8ab939e39f2e9a3320a8 100644 (file)
@@ -53,3 +53,9 @@
     branch: 'master'
     mvn-settings: 'l2switch-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
+
+- view:
+    name: l2switch
+    description: 'List of l2switch jobs'
+    regex: '^l2switch-.*'
+    <<: *releng_view_common
index cdeed106f7d379aa7c5032ebb09d929ad00528f5..aa257c0ffa0e5d1b4814f6c8fca685d98ef47104 100644 (file)
@@ -43,3 +43,9 @@
     branch: 'master'
     mvn-settings: 'lacp-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: lacp
+    description: 'List of lacp jobs'
+    regex: '^lacp-.*'
+    <<: *releng_view_common
index 82641eef30c49d2b9f14c8046a45df1cb4718b83..65482ff29b024d3fc7656ed58ddef7b9ca55fdf6 100644 (file)
 
     git-url: https://gerrit.linuxfoundation.org/infra/$GERRIT_PROJECT
     gerrit-server-name: LinuxFoundation
+
+- view:
+    name: lf-infra
+    description: 'List of lf-infra jobs'
+    regex: '^lf-infra-.*'
+    <<: *releng_view_common
index d43a06778ffc32549f7a74dd78951c41557adb10..74b9a140f99d1f4e23b733978fb673b4c0ba555c 100644 (file)
@@ -1,11 +1,11 @@
 ---
 - project:
-    name: lf-infra-lfn-process
+    name: lfn-process
     jobs:
       - '{project-name}-rtd-jobs'
       - gerrit-tox-verify
 
-    project-name: lf-infra-lfn-process
+    project-name: lfn-process
     project: lfn/process
     project-pattern: lfn/process
     build-node: centos7-builder-2c-1g
@@ -17,3 +17,8 @@
     git-url: https://gerrit.linuxfoundation.org/infra/$GERRIT_PROJECT
     gerrit-server-name: LinuxFoundation
 
+- view:
+    name: lfn
+    description: 'List of LF Networking jobs'
+    regex: '^lfn-.*'
+    <<: *releng_view_common
index a14c7ffc8fec72427f6e5a5c303b2f18b65af5e9..a927ee0b89ad242ed52d8ff73887df4623d086ea 100644 (file)
@@ -59,3 +59,9 @@
     mvn-settings: 'lispflowmapping-settings'
     mvn-goals: 'clean deploy findbugs:findbugs javadoc:aggregate -DrepoBuild'
     mvn-opts: '-Xmx2048m -XX:MaxPermSize=512m -Dmaven.compile.fork=true'
+
+- view:
+    name: lispflowmapping
+    description: 'List of lispflowmapping jobs'
+    regex: '^lispflowmapping-.*'
+    <<: *releng_view_common
index ac1afdd5fd142013b1527222dbb94b6f980283d2..dcd3470860d3a1936c7094969df54fc21c5d87ff 100644 (file)
@@ -58,3 +58,9 @@
     mvn-settings: 'mdsal-settings'
     mvn-goals: '-Dmaven.compile.fork=true clean deploy -Dintegrationtests'
     mvn-opts: '-Xmx2048m -XX:MaxPermSize=1024m'
+
+- view:
+    name: mdsal
+    description: 'List of mdsal jobs'
+    regex: '^mdsal-.*'
+    <<: *releng_view_common
index f1cc04467fe9e61b91b043f3c796f3bad8dafc7d..484a0368fab04e696ba9589b8400625093d4c9ef 100644 (file)
@@ -45,3 +45,9 @@
     branch: 'master'
     mvn-settings: 'messaging4transport-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: messaging4transport
+    description: 'List of messaging4transport jobs'
+    regex: '^messaging4transport-.*'
+    <<: *releng_view_common
index f42bc0c8a1dcb255eb2539a09f00b47056aa5fab..c37bcce61334647bf9839f91c10485421e278643 100644 (file)
@@ -45,3 +45,9 @@
     branch: 'master'
     mvn-settings: 'natapp-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: natapp
+    description: 'List of natapp jobs'
+    regex: '^natapp-.*'
+    <<: *releng_view_common
index 97c35cdbe55a06440c55f7cc900999477b6dc530..890cdea8fc734f640773e4a7a3f6046810e86189 100644 (file)
@@ -43,3 +43,9 @@
     branch: 'master'
     mvn-settings: 'nemo-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: nemo
+    description: 'List of nemo jobs'
+    regex: '^nemo-.*'
+    <<: *releng_view_common
index 67246a2fddd4d280e9ade05a0288b0393a008aaf..54d9cbd21c063843dbd8e60bd8694ba4c0e36b67 100644 (file)
@@ -52,3 +52,9 @@
     mvn-settings: 'netconf-settings'
     mvn-goals: 'clean deploy -Pintegrationtests'
     mvn-opts: '-Xmx2048m -XX:MaxPermSize=1024m -Dmaven.compile.fork=true'
+
+- view:
+    name: netconf
+    description: 'List of netconf jobs'
+    regex: '^netconf-.*'
+    <<: *releng_view_common
index 8fbfacff1c6f9ee15c814ffd510f0d5e5e5ae597..24439555db4e0795c5cdfbac907cf5cddb1b1a0d 100644 (file)
@@ -43,3 +43,9 @@
     branch: 'master'
     mvn-settings: 'netide-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: netide
+    description: 'List of netide jobs'
+    regex: '^netide-.*'
+    <<: *releng_view_common
index 86cf45cc6f52daa7c682883fe56a599e9248139c..3346fe470f8c1f15294e30c56b25226de563ea55 100644 (file)
@@ -12,9 +12,9 @@
     enable-openstack-services: 'placement-api,l2gw-plugin'
     enable-openstack-compute-services: 'placement-client'
     security-group-mode: 'stateful'
-    odl_system_flavor: odl-standard-8
-    openstack_system_flavor: odl-standard-8
-    openstack_system2_flavor: odl-standard-4
+    odl_system_flavor: odl-highcpu-8
+    openstack_system_flavor: odl-highcpu-8
+    openstack_system2_flavor: odl-highcpu-4
     tools_system_count: 2
     tools_system_image: ZZCI - Ubuntu 16.04 - mininet-ovs-26 - 20171208-1847
 
           openstack_system2_count: 2
           odl_system_count: 1
           enable-haproxy: 'no'
-          install-features: 'odl-netvirt-openstack'
+          install-features: 'odl-netvirt-openstack,decanter-collector-jmx,decanter-appender-elasticsearch'
       - 3node:
           openstack_system2_count: 2
           odl_system_count: 3
           enable-haproxy: 'yes'
-          install-features: 'odl-jolokia,odl-netvirt-openstack'
+          install-features: 'odl-jolokia,odl-netvirt-openstack,decanter-collector-jmx,decanter-appender-elasticsearch'
 
     functionality:
       - upstream-stateful
@@ -49,8 +49,8 @@
           openstack-branch: 'stable/queens'
           odl-ml2-branch: 'stable/queens'
           odl-ml2-port-binding: 'pseudo-agentdb-binding'
-          openstack_system_image: '{openstack_system_image_pike}'
-          openstack_system2_image: '{openstack_system_image_pike}'
+          openstack_system_image: '{openstack_system_image_queens}'
+          openstack_system2_image: '{openstack_system_image_queens}'
 
 - project:
     name: netvirt-csit-hwvtep-openstack-integration-oxygen
@@ -65,9 +65,9 @@
     enable-openstack-services: 'placement-api,l2gw-plugin'
     enable-openstack-compute-services: 'placement-client'
     security-group-mode: 'stateful'
-    odl_system_flavor: odl-standard-8
-    openstack_system_flavor: odl-standard-8
-    openstack_system2_flavor: odl-standard-4
+    odl_system_flavor: odl-highcpu-8
+    openstack_system_flavor: odl-highcpu-8
+    openstack_system2_flavor: odl-highcpu-4
     tools_system_count: 2
     tools_system_image: ZZCI - Ubuntu 16.04 - mininet-ovs-26 - 20171208-1847
 
           openstack_system2_count: 2
           odl_system_count: 1
           enable-haproxy: 'no'
-          install-features: 'odl-netvirt-openstack'
+          install-features: 'odl-netvirt-openstack,decanter-collector-jmx,decanter-appender-elasticsearch'
       - 3node:
           openstack_system2_count: 2
           odl_system_count: 3
           enable-haproxy: 'yes'
-          install-features: 'odl-jolokia,odl-netvirt-openstack'
+          install-features: 'odl-jolokia,odl-netvirt-openstack,decanter-collector-jmx,decanter-appender-elasticsearch'
 
     functionality:
       - upstream-stateful
           openstack-branch: 'stable/queens'
           odl-ml2-branch: 'stable/queens'
           odl-ml2-port-binding: 'pseudo-agentdb-binding'
-          openstack_system_image: '{openstack_system_image_pike}'
-          openstack_system2_image: '{openstack_system_image_pike}'
+          openstack_system_image: '{openstack_system_image_queens}'
+          openstack_system2_image: '{openstack_system_image_queens}'
index 565bd6f18f19ae7420a51efeab1c1cfbd1f6bc75..6d41808236660568610c6fc7b18baad5c2662c9d 100644 (file)
     enable-openstack-services: 'placement-api,l2gw-plugin'
     enable-openstack-compute-services: 'placement-client'
     security-group-mode: 'stateful'
-    odl_system_flavor: odl-standard-8
-    openstack_system_flavor: odl-standard-8
-    openstack_system2_flavor: odl-standard-4
+    odl_system_flavor: odl-highcpu-8
+    openstack_system_flavor: odl-highcpu-8
+    openstack_system2_flavor: odl-highcpu-4
+    os-cmb-cnt: 0
+    os-ctl-cnt: 1
+    os-cmp-cnt: 2
 
     topology:
       - 1node:
           openstack_system2_count: 2
           odl_system_count: 1
           enable-haproxy: 'no'
-          install-features: 'odl-netvirt-openstack'
+          install-features: 'odl-netvirt-openstack,decanter-collector-jmx,decanter-appender-elasticsearch'
 
     functionality:
       - upgrade
@@ -33,5 +36,5 @@
           openstack-branch: 'stable/queens'
           odl-ml2-branch: 'stable/queens'
           odl-ml2-port-binding: 'pseudo-agentdb-binding'
-          openstack_system_image: '{openstack_system_image_pike}'
-          openstack_system2_image: '{openstack_system_image_pike}'
+          openstack_system_image: '{openstack_system_image_queens}'
+          openstack_system2_image: '{openstack_system_image_queens}'
index a4e3c96e8ee9f6f9b320ef3a5febcb8a0e3b3c93..3ec9cb268d0236f96d467a3244b4ef69578f1679 100644 (file)
     enable-openstack-services: 'placement-api,tempest'
     enable-openstack-compute-services: 'placement-client'
     security-group-mode: 'stateful'
-    odl_system_flavor: odl-standard-8
-    openstack_system_flavor: odl-standard-8
-    openstack_system2_flavor: odl-standard-4
+    odl_system_flavor: odl-highcpu-8
+    openstack_system_flavor: odl-highcpu-8
+    openstack_system2_flavor: odl-highcpu-4
+    os-cmb-cnt: 0
+    os-ctl-cnt: 1
+    os-cmp-cnt: 2
 
     topology:
       - 1node:
           openstack_system2_count: 2
           odl_system_count: 1
           enable-haproxy: 'no'
-          install-features: 'odl-netvirt-openstack'
+          install-features: 'odl-netvirt-openstack,decanter-collector-jmx,decanter-appender-elasticsearch'
           robot-options: '-v FAIL_ON_EXCEPTIONS:True'
       - 3node:
           openstack_system2_count: 3
           odl_system_count: 3
           enable-haproxy: 'yes'
-          install-features: 'odl-jolokia,odl-netvirt-openstack'
+          install-features: 'odl-jolokia,odl-netvirt-openstack,decanter-collector-jmx,decanter-appender-elasticsearch'
 
     functionality:
       - upstream-stateful
@@ -36,6 +39,8 @@
       - upstream-stateful-snat-conntrack:
           odl-snat-mode: 'conntrack'
       - gate-stateful
+      - gate-stateful-itm-direct-tunnels:
+          enable-itm-direct-tunnels: 'true'
       - gate-stateful-snat-conntrack:
           odl-snat-mode: 'conntrack'
       - gate-minimal-cluster:
       - tempest-stateful:
           test-suites: 'openstack/tempest/tempest.robot'
           testplan: '{project}-{topology}-openstack-tempest.txt'
+          schedule: '{schedule-daily}'
       - tempest-stateful-snat-conntrack:
           test-suites: 'openstack/tempest/tempest.robot'
           testplan: '{project}-{topology}-openstack-tempest.txt'
           odl-snat-mode: 'conntrack'
+          schedule: '{schedule-daily}'
       - gate-tempest-stateful:
           test-suites: 'openstack/tempest/tempest.robot'
           testplan: '{project}-{topology}-openstack-tempest.txt'
@@ -71,8 +78,8 @@
           openstack-branch: 'stable/queens'
           odl-ml2-branch: 'stable/queens'
           odl-ml2-port-binding: 'pseudo-agentdb-binding'
-          openstack_system_image: '{openstack_system_image_pike}'
-          openstack_system2_image: '{openstack_system_image_pike}'
+          openstack_system_image: '{openstack_system_image_queens}'
+          openstack_system2_image: '{openstack_system_image_queens}'
 
 - project:
     name: netvirt-csit-openstack-integration-oxygen
     enable-openstack-services: 'placement-api,tempest'
     enable-openstack-compute-services: 'placement-client'
     security-group-mode: 'stateful'
-    odl_system_flavor: odl-standard-8
-    openstack_system_flavor: odl-standard-8
-    openstack_system2_flavor: odl-standard-4
+    odl_system_flavor: odl-highcpu-8
+    openstack_system_flavor: odl-highcpu-8
+    openstack_system2_flavor: odl-highcpu-4
+    os-cmb-cnt: 0
+    os-ctl-cnt: 1
+    os-cmp-cnt: 2
 
     topology:
       - 1node:
           openstack_system2_count: 2
           odl_system_count: 1
           enable-haproxy: 'no'
-          install-features: 'odl-netvirt-openstack'
+          install-features: 'odl-netvirt-openstack,decanter-collector-jmx,decanter-appender-elasticsearch'
           robot-options: '-v FAIL_ON_EXCEPTIONS:True'
       - 3node:
           openstack_system2_count: 3
           odl_system_count: 3
           enable-haproxy: 'yes'
-          install-features: 'odl-jolokia,odl-netvirt-openstack'
+          install-features: 'odl-jolokia,odl-netvirt-openstack,decanter-collector-jmx,decanter-appender-elasticsearch'
 
     functionality:
       - upstream-stateful
       - gate-stateful
       - gate-stateful-snat-conntrack:
           odl-snat-mode: 'conntrack'
+      - gate-stateful-itm-direct-tunnels:
+          enable-itm-direct-tunnels: 'true'
       - gate-minimal-cluster:
           testplan: '{project}-{topology}-minimal-openstack.txt'
       # Job for Test Driven Development with it's own testplan to run new/non-passing suites. scheduled manually.
       - gate-tdd-wip:
           testplan: '{project}-{topology}-tdd-wip-openstack.txt'
           schedule: ''
+      - tempest-stateful:
+          test-suites: 'openstack/tempest/tempest.robot'
+          testplan: '{project}-{topology}-openstack-tempest.txt'
+          schedule: '{schedule-daily}'
+      - tempest-stateful-snat-conntrack:
+          test-suites: 'openstack/tempest/tempest.robot'
+          testplan: '{project}-{topology}-openstack-tempest.txt'
+          odl-snat-mode: 'conntrack'
+          schedule: '{schedule-daily}'
+      - gate-tempest-stateful:
+          test-suites: 'openstack/tempest/tempest.robot'
+          testplan: '{project}-{topology}-openstack-tempest.txt'
+      - gate-tempest-stateful-snat-conntrack:
+          test-suites: 'openstack/tempest/tempest.robot'
+          testplan: '{project}-{topology}-openstack-tempest.txt'
+          odl-snat-mode: 'conntrack'
 
     openstack:
       - pike:
           openstack-branch: 'stable/queens'
           odl-ml2-branch: 'stable/queens'
           odl-ml2-port-binding: 'pseudo-agentdb-binding'
-          openstack_system_image: '{openstack_system_image_pike}'
-          openstack_system2_image: '{openstack_system_image_pike}'
+          openstack_system_image: '{openstack_system_image_queens}'
+          openstack_system2_image: '{openstack_system_image_queens}'
 
 - project:
     name: netvirt-csit-sfc-openstack-integration
 
     project: 'netvirt'
     security-group-mode: 'stateful'
-    odl_system_flavor: odl-standard-4
-    openstack_system2_flavor: odl-standard-2
+    odl_system_flavor: odl-highcpu-4
+    openstack_system2_flavor: odl-highcpu-2
+    os-cmb-cnt: 0
+    os-ctl-cnt: 1
+    os-cmp-cnt: 2
 
     topology:
       - 1node:
           openstack-branch: 'stable/queens'
           odl-ml2-branch: 'stable/queens'
           odl-ml2-port-binding: 'pseudo-agentdb-binding'
-          openstack_system_image: '{openstack_system_image_pike}'
-          openstack_system2_image: '{openstack_system_image_pike}'
+          openstack_system_image: '{openstack_system_image_queens}'
+          openstack_system2_image: '{openstack_system_image_queens}'
index fbfb903dbe6b8582701b5437b7546fe4a55d467a..e9f0dfc97e94b5d80155a95d60997c298cae2f36 100644 (file)
     feature:
       - current:
           csit-list: >
-              netvirt-csit-1node-openstack-{os-branch}-gate-stateful-{stream}
+              netvirt-csit-1node-{os-std-topo}-openstack-{os-branch}-gate-stateful-{stream}
       - cluster-current:
           csit-list: >
-              netvirt-csit-3node-openstack-{os-branch}-gate-stateful-{stream}
+              netvirt-csit-3node-{os-std-topo}-openstack-{os-branch}-gate-stateful-{stream}
       - cluster-minimal-current:
           csit-list: >
-               netvirt-csit-3node-openstack-{os-branch}-gate-minimal-cluster-{stream}
+               netvirt-csit-3node-{os-std-topo}-openstack-{os-branch}-gate-minimal-cluster-{stream}
       - snat-conntrack:
           csit-list: >
-              netvirt-csit-1node-openstack-{os-branch}-gate-stateful-snat-conntrack-{stream}
+              netvirt-csit-1node-{os-std-topo}-openstack-{os-branch}-gate-stateful-snat-conntrack-{stream}
       - cluster-snat-conntrack:
           csit-list: >
-              netvirt-csit-3node-openstack-{os-branch}-gate-stateful-snat-conntrack-{stream}
+              netvirt-csit-3node-{os-std-topo}-openstack-{os-branch}-gate-stateful-snat-conntrack-{stream}
       - l2gw:
           csit-list: >
               netvirt-csit-hwvtep-1node-openstack-{os-branch}-gate-stateful-{stream}
       - tdd-wip:
           csit-list: >
-              netvirt-csit-1node-openstack-{os-branch}-gate-tdd-wip-{stream}
+              netvirt-csit-1node-{os-std-topo}-openstack-{os-branch}-gate-tdd-wip-{stream}
       - coe:
           csit-list: >
               coe-csit-1node-container-networking-all-{stream}
       - itm-direct-tunnels:
           csit-list: >
-              netvirt-csit-1node-openstack-{os-branch}-upstream-stateful-itm-direct-tunnels-{stream}
+              netvirt-csit-1node-{os-std-topo}-openstack-{os-branch}-gate-stateful-itm-direct-tunnels-{stream}
       - upgrade:
           csit-list: >
-              netvirt-csit-1node-openstack-{os-branch}-upgrade-{stream}
+              netvirt-csit-1node-{os-std-topo}-openstack-{os-branch}-upgrade-{stream}
       - tempest:
           csit-list: >
-              netvirt-csit-1node-openstack-{os-branch}-gate-tempest-stateful-{stream}
+              netvirt-csit-1node-{os-std-topo}-openstack-{os-branch}-gate-tempest-stateful-{stream}
       - cluster-tempest:
           csit-list: >
-              netvirt-csit-3node-openstack-{os-branch}-gate-tempest-stateful-{stream}
+              netvirt-csit-3node-{os-std-topo}-openstack-{os-branch}-gate-tempest-stateful-{stream}
       - tempest-snat-conntrack:
           csit-list: >
-              netvirt-csit-1node-openstack-{os-branch}-gate-tempest-stateful-snat-conntrack-{stream}
+              netvirt-csit-1node-{os-std-topo}-openstack-{os-branch}-gate-tempest-stateful-snat-conntrack-{stream}
       - cluster-tempest-snat-conntrack:
           csit-list: >
-              netvirt-csit-3node-openstack-{os-branch}-gate-tempest-stateful-snat-conntrack-{stream}
+              netvirt-csit-3node-{os-std-topo}-openstack-{os-branch}-gate-tempest-stateful-snat-conntrack-{stream}
index 4024faed806d113522fdbcea97c20b8b63f81493..2a3d122ea47cf71d302d1b4645d0f8be6291c3f3 100644 (file)
     branch: 'master'
     mvn-settings: 'netvirt-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: netvirt
+    description: 'List of netvirt jobs'
+    regex: '^netvirt-.*'
+    <<: *releng_view_common
+
+- view:
+    name: netvirt-csit
+    description: 'List of netvirt-csit jobs'
+    regex: 'netvirt-csit(?!(.*gate)|(.*hwvtep)).*'
+    <<: *integration_view_csit
index 48bd2756b3409ee45db5694df9ed7bfd748ee476..de720cc6ee29172aa02707023da126e7eec34b16 100644 (file)
@@ -48,3 +48,9 @@
     branch: 'master'
     mvn-settings: 'neutron-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: neutron
+    description: 'List of neutron jobs'
+    regex: '^neutron-.*'
+    <<: *releng_view_common
index 86b6a16d8a687e33323a137f57a70c30adf7b8f0..42771d028ffdaf5307752f5500ff20724e7caa6e 100644 (file)
@@ -43,3 +43,9 @@
     branch: 'master'
     mvn-settings: 'next-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: next
+    description: 'List of next jobs'
+    regex: '^next-.*'
+    <<: *releng_view_common
index 8bf2afef336f56828e2b6a716fa88125e5ff5b6f..c11083876675c300a4b5bb5fa8ab980d59452682 100644 (file)
@@ -46,3 +46,9 @@
     build-node: centos7-builder-2c-8g
     mvn-settings: 'nic-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: nic
+    description: 'List of nic jobs'
+    regex: '^nic-.*'
+    <<: *releng_view_common
index 496e31ec7e2b14fcb1fec297ca721dc83bbefe2f..5f3c2313cfb04c8feef84dfc45987c639f162b1e 100644 (file)
@@ -43,3 +43,9 @@
     branch: 'master'
     mvn-settings: 'ocpplugin-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: ocpplugin
+    description: 'List of ocpplugin jobs'
+    regex: '^ocpplugin-.*'
+    <<: *releng_view_common
index 6b87b0719cc3eafeb0cbdcacfccc137897e07449..cb942ae1d1f69c8007c443399474cad65399ba65 100644 (file)
     branch: 'master'
     mvn-settings: 'odlparent-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: odlparent
+    description: 'List of odlparent jobs'
+    regex: '^odlparent-.*'
+    <<: *releng_view_common
index b9366d2c9ea2324858602dfcd020c2ded6aa6e32..322f2a585adab6ec06a3ee57ea99772d2723881c 100644 (file)
@@ -43,3 +43,9 @@
     branch: 'master'
     mvn-settings: 'of-config-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: of-config
+    description: 'List of of-config jobs'
+    regex: '^of-config-.*'
+    <<: *releng_view_common
index 4198831a93a588c4e330cce3bcbf7878fd46af66..bd0d28804f835e028992d3dcd895bb7b01c68222 100644 (file)
@@ -42,3 +42,9 @@
     branch: 'master'
     mvn-settings: 'ofextensions-circuitsw-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: circuitsw
+    description: 'List of circuitsw jobs'
+    regex: '^circuitsw-.*'
+    <<: *releng_view_common
index 1ef00f0f300466d21694dd2f2e683eabe8f7afd0..104c388820232ef9e8b66dc3709f9034d5625e52 100644 (file)
           echo $CI_MESSAGE
           echo "----------------------------------"
           echo " Promoted ODL Autorelease artifact as release candidate!"
+
+- view:
+    name: openci
+    description: 'List of openci jobs'
+    regex: '^openci-.*'
+    <<: *releng_view_common
index af5d2fa13ed7e5bc1034242eb184af610d349717..972ec210a087332af21927858ae2c7656396460a 100644 (file)
@@ -18,7 +18,12 @@ pip install --upgrade "pip<10.0.0" setuptools
 pip install --upgrade cmd2==0.8.5 python-openstackclient python-heatclient
 pip freeze
 
-cd /builder/openstack-hot || exit 1
+# TODO: Remove the if-statement once we have fully migrated to /opt/ciman
+if [ -d "/opt/ciman" ]; then
+    cd /opt/ciman || exit 1
+else
+    cd /builder/openstack-hot || exit 1
+fi
 
 JOB_SUM=$(echo "$JOB_NAME" | sum | awk '{{ print $1 }}')
 VM_NAME="$JOB_SUM-$BUILD_NUMBER"
index e591415ce2f79cdc54affde85003b780543641f1..f4630fd143b918261905c1aaaac1c164115938ef 100644 (file)
     mvn-settings: 'openflowplugin-settings'
     mvn-goals: 'clean deploy javadoc:aggregate'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: openflowplugin
+    description: 'List of openflowplugin jobs'
+    regex: '^openflowplugin-.*'
+    <<: *releng_view_common
+
+- view:
+    name: openflowplugin-oxygen
+    description: 'List of openflowplugin oxygen jobs'
+    regex: 'openflowplugin-.*-oxygen'
+    <<: *releng_view_common
index c3c7a6699b8b6b4c5a39f0c7ed8d8745d35f5750..aef8a08695bb29a75a504fd51933e4253898d54b 100644 (file)
           email-recipients: '{email-recipients}'
           email-prefix: '[opflex]'
       - lf-infra-publish
+
+- view:
+    name: opflex
+    description: 'List of opflex jobs'
+    regex: '^opflex-.*'
+    <<: *releng_view_common
index 6e96ffac576e3377971db4e1ffaafe3388ca3951..d25238db6e5740b028c6bbcd9fedb70de6fbaa52 100644 (file)
@@ -46,3 +46,9 @@
     branch: 'master'
     mvn-settings: 'ovil-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: ovil
+    description: 'List of ovil jobs'
+    regex: '^ovil-.*'
+    <<: *releng_view_common
index 7fcc646addbc950920f5dc82feee938ed6672f76..149e76adef62ed50f74633918f27605eb6cf87f9 100644 (file)
@@ -43,3 +43,9 @@
 
     # Used by the release job
     staging-profile-id: a68b188166958
+
+- view:
+    name: ovsdb
+    description: 'List of ovsdb jobs'
+    regex: '^ovsdb-.*'
+    <<: *releng_view_common
index 05c04d96781b7035e862e796e7d7e25caa11e0f6..39e0d8a2dd6fa1181591dc7199eee350fac34358 100644 (file)
@@ -46,3 +46,9 @@
     branch: 'master'
     mvn-settings: 'p4plugin-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: p4plugin
+    description: 'List of p4plugin jobs'
+    regex: '^p4plugin-.*'
+    <<: *releng_view_common
index 3911cc15ac45880cbfafe51527b68b91fa63e565..4f2f0d620454fd371cd861a8d51c5675f39d1530 100644 (file)
@@ -48,16 +48,25 @@ fi
                                          direct \
                                          --download_url "$DOWNLOAD_URL"
 
-# Publish RPMs to Nexus if in production Jenkins, else host on sandbox Jenkins
-if [ "$SILO" == "sandbox" ]; then
-  echo "Not uploading RPMs to Nexus because running in sandbox"
-elif  [ "$SILO" == "releng" ]; then
+# Always allow push to scratch repos, only push to CD repos in RelEng Jenkins
+if [ "$DEPLOY_TO_REPO" == "opendaylight-epel-7-x86_64-devel" ]; then
   # Move RPMs (SRPM and noarch) to dir of files that will be uploaded to Nexus
   UPLOAD_FILES_PATH="$WORKSPACE/upload_files"
   mkdir -p "$UPLOAD_FILES_PATH"
   cp "$HOME/rpmbuild/RPMS/noarch/"*.rpm "$_"
   cp "$HOME/rpmbuild/SRPMS/"*.rpm "$_"
 else
-  echo "Unknown Jenkins silo: $SILO"
-  exit 1
+  # Publish RPMs to CD repos if in production Jenkins, not in sandbox Jenkins
+  if [ "$SILO" == "sandbox" ]; then
+    echo "Not uploading RPMs to Nexus because running in sandbox"
+  elif  [ "$SILO" == "releng" ]; then
+    # Move RPMs (SRPM+noarch) to dir of files that will be uploaded to Nexus
+    UPLOAD_FILES_PATH="$WORKSPACE/upload_files"
+    mkdir -p "$UPLOAD_FILES_PATH"
+    cp "$HOME/rpmbuild/RPMS/noarch/"*.rpm "$_"
+    cp "$HOME/rpmbuild/SRPMS/"*.rpm "$_"
+  else
+    echo "Unknown Jenkins silo: $SILO"
+    exit 1
+  fi
 fi
index aa2b85a0912436a278d70f07b2ef8b42eb6d97e4..4d1c2b34a29d3953b4a82050c63474c077402d16 100644 (file)
           name: CHANGELOG_EMAIL
           default: 'jenkins-donotreply@opendaylight.org'
           description: 'Email of person who defined RPM'
+      - string:
+          name: DEPLOY_TO_REPO
+          default: 'opendaylight-{stream}-epel-7-x86_64-devel'
+          description: 'Repository to deploy resulting package to'
 
     scm:
       - integration-gerrit-scm:
@@ -95,7 +99,7 @@
           global-settings-file: 'global-settings'
           settings-file: 'packaging-settings'
           mvn-version: '{mvn-version}'
-          repo-id: 'opendaylight-{stream}-epel-7-x86_64-devel'
+          repo-id: '$DEPLOY_TO_REPO'
           group-id: '{group-id}'
           upload-files-dir: '{upload-files-dir}'
           maven-repo-url: '{maven-repo-url}'
       # NB: This will need to be updated as old builds expire
       - inject:
           # yamllint disable-line rule:line-length
-          properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/org/opendaylight/integration/integration/distribution/karaf/0.9.0-SNAPSHOT/karaf-0.9.0-20180620.055735-63.zip'
+          properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/org/opendaylight/integration/integration/distribution/karaf/0.9.0-SNAPSHOT/karaf-0.9.0-20180626.171605-65.zip'
       - shell: !include-raw-escape: build-rpm.sh
       - install-test-uninstall-rpm
 
       - install-test-uninstall-rpm
 
     triggers:
-      - gerrit:
-          server-name: '{gerrit-server-name}'
-          trigger-on:
-            - comment-added-contains-event:
-                comment-contains-value: 'rpm-verify'
-          projects:
-            - project-compare-type: ANT
-              project-pattern: '{project}'
-              branches:
-                - branch-compare-type: ANT
-                  branch-pattern: '**/{branch}'
-              file-paths:
-                - compare-type: ANT
-                  pattern: 'packages/**'
+      - gerrit-trigger-patch-submitted:
+          gerrit-server-name: '{gerrit-server-name}'
+          project: '{project}'
+          branch: '{branch}'
+          files: 'packages/**'
 
     publishers:
       - lf-infra-publish
       # NB: This will need to be updated as old builds expire
       - inject:
           # yamllint disable-line rule:line-length
-          properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/org/opendaylight/integration/integration/distribution/karaf/0.8.3-SNAPSHOT/karaf-0.8.3-20180620.173319-5.zip'
+          properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/org/opendaylight/integration/integration/distribution/karaf/0.8.3-SNAPSHOT/karaf-0.8.3-20180627.184938-10.zip'
       - shell: !include-raw-escape: build-rpm.sh
       - install-test-uninstall-rpm
 
       # NB: This will need to be updated as old builds expire
       - inject:
           # yamllint disable-line rule:line-length
-          properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/org/opendaylight/integration/integration/distribution/karaf/0.9.0-SNAPSHOT/karaf-0.9.0-20180620.055735-63.zip'
+          properties-content: 'DOWNLOAD_URL=https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/org/opendaylight/integration/integration/distribution/karaf/0.9.0-SNAPSHOT/karaf-0.9.0-20180626.171605-65.zip'
       - shell: !include-raw-escape: build-rpm.sh
       - install-test-uninstall-rpm
 
 
     publishers:
       - lf-infra-publish
+
+- view:
+    name: packaging
+    description: 'List of packaging, ansible and puppet jobs'
+    regex: '^packaging.*|ansible.*|puppet.*'
+    <<: *releng_view_common
index ebf860f78bd1baf7dc91c45a2eb2a818c89da504..67d37c5a5993ad456f05cf699264043f16422247 100644 (file)
@@ -43,3 +43,9 @@
     branch: 'master'
     mvn-settings: 'packetcable-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: packetcable
+    description: 'List of packetcable jobs'
+    regex: '^packetcable-.*'
+    <<: *releng_view_common
index 4d6d1ff3837bed6b41b9bb1c39d2c41313a0d16c..ec7f7e56c990d6511e89f7db572c0797721f0284 100644 (file)
@@ -44,3 +44,9 @@
     branch: 'master'
     mvn-settings: 'persistence-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: persistence
+    description: 'List of persistence jobs'
+    regex: '^persistence-.*'
+    <<: *releng_view_common
index 6487231cb84ca48bb13e9cf97eb8ef653037bec7..2e1499868a28d93a8d968e96c17d38c61151a915 100644 (file)
                 exclude-no-code-change: false
             - draft-published-event
             - comment-added-contains-event:
-                comment-contains-value: 'recheck$'
+                comment-contains-value: '^Patch Set[ ]+[0-9]+:([ ]+|[\n]+)(recheck|reverify)$'
           projects:
             - project-compare-type: ANT
               project-pattern: '{project}'
index f79f8a5520a1ec101c26dc84aec34478fb287dd8..a2d1fd44beef1159da4aa3a57601bfee1217f0df 100644 (file)
     templates: devstack
     platforms: centos-7
 
-- project:
-    name: packer-devstack-pre-pip-ocata-jobs
-    jobs:
-      - gerrit-packer-merge
-
-    project: releng/builder
-    project-name: builder
-    branch: master
-    archive-artifacts: '**/*.log'
-
-    build-node: centos7-builder-2c-1g
-    build-timeout: 75
-    cron: '00 H 1 * *'
-
-    templates: devstack-pre-pip-ocata
-    platforms: centos-7
-
 - project:
     name: packer-devstack-pre-pip-pike-jobs
     jobs:
index bee471bf56a7481e4a567b0468156ed77fddb259..c63614ba5ae9d1a82d5363971dc3bb255bbc3ca0 100644 (file)
@@ -99,7 +99,8 @@
 
 - view:
     name: Distribution-Jobs
-    description: 'List of Distribution jobs (test, check, merge, deploy, offline, verify)'
+    description: >
+        List of Distribution jobs (test, check, merge, deploy, offline, verify)
     regex: '^.*-distribution-(?!(test|check|merge|deploy|offline|verify)).*'
     <<: *releng_view_common
 
     regex: '.*-gate-.*'
     <<: *releng_view_common
 
-# Note: column plugins implementations requires JJB 2.1 to be released.
 - view:
     name: Integration
     description: 'List of Integration jobs'
     regex: '.*-integration-.*'
-    view-type: list
-    filter-executors: false
-    filter-queue: false
-    columns:
-      - status
-      - weather
-      - job
-      - last-success
-      - last-failure
-      - last-duration
-      - build-button
-      - jacoco
-      - find-bugs
-      - robot-list
-    recurse: false
+    <<: *releng_view_common
 
 - view:
     name: Merge-Jobs
     regex: '^(?!.*-csit).*-verify-.*'
     <<: *releng_view_common
 
-- view:
-    name: aaa
-    description: 'List of aaa jobs'
-    regex: '^aaa-.*'
-    <<: *releng_view_common
-
-- view:
-    name: alto
-    description: 'List of alto jobs'
-    regex: '^alto-.*'
-    <<: *releng_view_common
-
-- view:
-    name: archetypes
-    regex: '^archetypes-.*'
-    description: 'List of archetypes jobs'
-    <<: *releng_view_common
-
-- view:
-    name: atrium
-    description: 'List of atrium jobs'
-    regex: '^atrium-.*'
-    <<: *releng_view_common
-
-- view:
-    name: autorelease
-    description: 'List of autorelease jobs'
-    regex: '^autorelease-.*'
-    <<: *releng_view_common
-
-- view:
-    name: bgpcep
-    description: 'List of bgpcep jobs'
-    regex: '^bgpcep-.*'
-    <<: *releng_view_common
-
-- view:
-    name: bier
-    description: 'List of bier jobs'
-    regex: '^bier-.*'
-    <<: *releng_view_common
-
 - view:
     name: builder
     description: 'List of builder jobs'
-    regex: '^(builder|lf-infra)-.*'
-    <<: *releng_view_common
-
-- view:
-    name: capwap
-    description: 'List of capwap jobs'
-    regex: '^capwap-.*'
-    <<: *releng_view_common
-
-- view:
-    name: cardinal
-    description: 'List of cardinal jobs'
-    regex: '^cardinal-.*'
-    <<: *releng_view_common
-
-- view:
-    name: centinel
-    description: 'List of centinel jobs'
-    regex: '^centinel-.*'
-    <<: *releng_view_common
-
-- view:
-    name: circuitsw
-    description: 'List of circuitsw jobs'
-    regex: '^circuitsw-.*'
-    <<: *releng_view_common
-
-- view:
-    name: coe
-    description: 'List of coe jobs'
-    regex: '^coe-.*'
-    <<: *releng_view_common
-
-- view:
-    name: controller
-    description: 'List of controller jobs'
-    regex: '^controller-.*'
-    <<: *releng_view_common
-
-- view:
-    name: coretutorials
-    description: 'List of coretutorials jobs'
-    regex: '^coretutorials-.*'
-    <<: *releng_view_common
-
-- view:
-    name: daexim
-    description: 'List of daexim jobs'
-    regex: '^daexim-.*'
-    <<: *releng_view_common
-
-- view:
-    name: didm
-    description: 'List of didm jobs'
-    regex: '^didm-.*'
-    <<: *releng_view_common
-
-- view:
-    name: distribution
-    description: 'List of distribution jobs'
-    regex: '^(integration-)?distribution-.*'
-    <<: *releng_view_common
-
-- view:
-    name: dlux
-    description: 'List of dlux jobs'
-    regex: '^dlux-.*'
-    <<: *releng_view_common
-
-- view:
-    name: dluxapps
-    description: 'List of dluxapps jobs'
-    regex: '^dluxapps-.*'
-    <<: *releng_view_common
-
-- view:
-    name: docs
-    description: 'List of docs jobs'
-    regex: '^docs-.*'
-    <<: *releng_view_common
-
-- view:
-    name: eman
-    description: 'List of eman jobs'
-    regex: '^eman-.*'
-    <<: *releng_view_common
-
-- view:
-    name: epc
-    description: 'List of epc jobs'
-    regex: '^epc-.*'
-    <<: *releng_view_common
-
-- view:
-    name: faas
-    description: 'List of faas jobs'
-    regex: '^faas-.*'
-    <<: *releng_view_common
-
-- view:
-    name: federation
-    description: 'List of federation jobs'
-    regex: '^federation-.*'
-    <<: *releng_view_common
-
-- view:
-    name: fpc
-    description: 'List of fpc jobs'
-    regex: '^fpc-.*'
-    <<: *releng_view_common
-
-- view:
-    name: genius
-    description: 'List of genius jobs'
-    regex: '^genius-.*'
-    <<: *releng_view_common
-
-- view:
-    name: gnt
-    description: 'List of gnt jobs'
-    regex: '^gnt-.*'
-    <<: *releng_view_common
-
-- view:
-    name: groupbasedpolicy
-    description: 'List of groupbasedpolicy jobs'
-    regex: '^groupbasedpolicy-.*'
-    <<: *releng_view_common
-
-- view:
-    name: infrautils
-    description: 'List of infrautils jobs'
-    regex: '^infrautils-.*'
-    <<: *releng_view_common
-
-- view:
-    name: integration
-    description: 'List of integration jobs'
-    regex: '^integration-.*'
-    <<: *releng_view_common
-
-- view:
-    name: iotdm
-    description: 'List of iotdm jobs'
-    regex: '^iotdm-.*'
-    <<: *releng_view_common
-
-- view:
-    name: jsonrpc
-    description: 'List of jsonrpc jobs'
-    regex: '^jsonrpc-.*'
-    <<: *releng_view_common
-
-- view:
-    name: kafkaproducer
-    description: 'List of kafkaproducer jobs'
-    regex: '^kafkaproducer-.*'
-    <<: *releng_view_common
-
-- view:
-    name: l2switch
-    description: 'List of l2switch jobs'
-    regex: '^l2switch-.*'
-    <<: *releng_view_common
-
-- view:
-    name: lacp
-    description: 'List of lacp jobs'
-    regex: '^lacp-.*'
-    <<: *releng_view_common
-
-- view:
-    name: lispflowmapping
-    description: 'List of lispflowmapping jobs'
-    regex: '^lispflowmapping-.*'
-    <<: *releng_view_common
-
-- view:
-    name: mdsal
-    description: 'List of mdsal jobs'
-    regex: '^mdsal-.*'
-    <<: *releng_view_common
-
-- view:
-    name: messaging4transport
-    description: 'List of messaging4transport jobs'
-    regex: '^messaging4transport-.*'
-    <<: *releng_view_common
-
-- view:
-    name: natapp
-    description: 'List of natapp jobs'
-    regex: '^natapp-.*'
-    <<: *releng_view_common
-
-- view:
-    name: nemo
-    description: 'List of nemo jobs'
-    regex: '^nemo-.*'
-    <<: *releng_view_common
-
-- view:
-    name: netconf
-    description: 'List of netconf jobs'
-    regex: '^netconf-.*'
-    <<: *releng_view_common
-
-- view:
-    name: netide
-    description: 'List of netide jobs'
-    regex: '^netide-.*'
-    <<: *releng_view_common
-
-- view:
-    name: netvirt
-    description: 'List of netvirt jobs'
-    regex: '^netvirt-.*'
-    <<: *releng_view_common
-
-- view:
-    name: netvirt-csit
-    description: 'List of netvirt-csit jobs'
-    regex: 'netvirt-csit(?!(.*gate)|(.*hwvtep)).*'
-    <<: *integration_view_csit
-
-- view:
-    name: neutron
-    description: 'List of neutron jobs'
-    regex: '^neutron-.*'
-    <<: *releng_view_common
-
-- view:
-    name: next
-    description: 'List of next jobs'
-    regex: '^next-.*'
-    <<: *releng_view_common
-
-- view:
-    name: nic
-    description: 'List of nic jobs'
-    regex: '^nic-.*'
-    <<: *releng_view_common
-
-- view:
-    name: ocpplugin
-    description: 'List of ocpplugin jobs'
-    regex: '^ocpplugin-.*'
-    <<: *releng_view_common
-
-- view:
-    name: odlparent
-    description: 'List of odlparent jobs'
-    regex: '^odlparent-.*'
-    <<: *releng_view_common
-
-- view:
-    name: of-config
-    description: 'List of of-config jobs'
-    regex: '^of-config-.*'
-    <<: *releng_view_common
-
-- view:
-    name: openci
-    description: 'List of openci jobs'
-    regex: '^openci-.*'
-    <<: *releng_view_common
-
-- view:
-    name: openflowplugin
-    description: 'List of openflowplugin jobs'
-    regex: '^openflowplugin-.*'
-    <<: *releng_view_common
-
-- view:
-    name: openflowplugin-oxygen
-    description: 'List of openflowplugin oxygen jobs'
-    regex: 'openflowplugin-.*-oxygen'
-    <<: *releng_view_common
-
-- view:
-    name: opflex
-    description: 'List of opflex jobs'
-    regex: '^opflex-.*'
-    <<: *releng_view_common
-
-- view:
-    name: ovil
-    description: 'List of ovil jobs'
-    regex: '^ovil-.*'
-    <<: *releng_view_common
-
-- view:
-    name: ovsdb
-    description: 'List of ovsdb jobs'
-    regex: '^ovsdb-.*'
-    <<: *releng_view_common
-
-- view:
-    name: p4plugin
-    description: 'List of p4plugin jobs'
-    regex: '^p4plugin-.*'
-    <<: *releng_view_common
-
-- view:
-    name: packaging
-    description: 'List of packaging, ansible and puppet jobs'
-    regex: '^packaging.*|ansible.*|puppet.*'
-    <<: *releng_view_common
-
-- view:
-    name: packer
-    description: 'List of packer jobs'
-    regex: '^builder-.*packer.*'
-    <<: *releng_view_common
-
-- view:
-    name: packetcable
-    description: 'List of packetcable jobs'
-    regex: '^packetcable-.*'
-    <<: *releng_view_common
-
-- view:
-    name: persistence
-    description: 'List of persistence jobs'
-    regex: '^persistence-.*'
-    <<: *releng_view_common
-
-- view:
-    name: reservation
-    description: 'List of reservation jobs'
-    regex: '^reservation-.*'
-    <<: *releng_view_common
-
-- view:
-    name: sdninterfaceapp
-    description: 'List of sdninterfaceapp jobs'
-    regex: '^sdninterfaceapp-.*'
-    <<: *releng_view_common
-
-- view:
-    name: sfc
-    description: 'List of sfc jobs'
-    regex: '^sfc-.*'
-    <<: *releng_view_common
-
-- view:
-    name: snbi
-    description: 'List of snbi jobs'
-    regex: '^snbi-.*'
-    <<: *releng_view_common
-
-- view:
-    name: snmp
-    description: 'List of snmp jobs'
-    regex: '^snmp-.*'
-    <<: *releng_view_common
-
-- view:
-    name: snmp4sdn
-    description: 'List of snmp4sdn jobs'
-    regex: '^snmp4sdn-.*'
-    <<: *releng_view_common
-
-- view:
-    name: sxp
-    description: 'List of sxp jobs'
-    regex: '^sxp-.*'
-    <<: *releng_view_common
-
-- view:
-    name: systemmetrics
-    description: 'List of systemmetrics jobs'
-    regex: '^systemmetrics-.*'
-    <<: *releng_view_common
-
-- view:
-    name: telemetry
-    description: 'List of telemetry jobs'
-    regex: '^telemetry-.*'
-    <<: *releng_view_common
-
-- view:
-    name: topoprocessing
-    description: 'List of topoprocessing jobs'
-    regex: '^topoprocessing-.*'
-    <<: *releng_view_common
-
-- view:
-    name: transportpce
-    description: 'List of transportpce jobs'
-    regex: '^transportpce-.*'
-    <<: *releng_view_common
-
-- view:
-    name: tsdr
-    description: 'List of tsdr jobs'
-    regex: '^tsdr-.*'
-    <<: *releng_view_common
-
-- view:
-    name: ttp
-    description: 'List of ttp jobs'
-    regex: '^ttp-.*'
-    <<: *releng_view_common
-
-- view:
-    name: unimgr
-    description: 'List of unimgr jobs'
-    regex: '^unimgr-.*'
-    <<: *releng_view_common
-
-- view:
-    name: usc
-    description: 'List of usc jobs'
-    regex: '^usc-.*'
-    <<: *releng_view_common
-
-- view:
-    name: uscplugin
-    description: 'List of uscplugin jobs'
-    regex: '^usecplugin-.*'
-    <<: *releng_view_common
-
-- view:
-    name: vbd
-    description: 'List of vbd jobs'
-    regex: '^vbd-.*'
-    <<: *releng_view_common
-
-- view:
-    name: yang-push
-    description: 'List of yang-push jobs'
-    regex: '^yang-push-.*'
-    <<: *releng_view_common
-
-- view:
-    name: yangide
-    description: 'List of yangide jobs'
-    regex: '^yangide-.*'
-    <<: *releng_view_common
-
-- view:
-    name: yangtools
-    description: 'List of yangtools jobs'
-    regex: '^yangtools-.*'
+    regex: '^builder-.*'
     <<: *releng_view_common
index 33c6313e209f27fa38cf46847dc0ac08f9ab2ae2..3239c60ba6467e40e1a38210cdaacb277aa44c42 100644 (file)
@@ -42,3 +42,9 @@
     branch: 'master'
     mvn-settings: 'reservation-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: reservation
+    description: 'List of reservation jobs'
+    regex: '^reservation-.*'
+    <<: *releng_view_common
index 664877e84b247505f703d66605df9535eba3e291..bc5124e5f9e7c0cb024d4562ce9fb1a5c6a18a16 100644 (file)
@@ -46,3 +46,9 @@
     build-node: centos7-builder-2c-8g
     mvn-settings: 'sdninterfaceapp-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: sdninterfaceapp
+    description: 'List of sdninterfaceapp jobs'
+    regex: '^sdninterfaceapp-.*'
+    <<: *releng_view_common
index 2ee117d46d6bad5a37873e18361f6b0895f02aa7..b2abc7dfc5acdba4cda0e6f17326e0c5d35f1792 100644 (file)
     stream:
       - fluorine:
           branch: 'master'
+          os-branch: 'queens'
       - oxygen:
           branch: 'stable/oxygen'
+          os-branch: 'queens'
 
     feature:
       - basic:
@@ -22,3 +24,7 @@
       - full:
           csit-list: >
               sfc-csit-3node-docker-full-deploy-all-{stream}
+
+      - netvirt:
+          csit-list: >
+              netvirt-csit-1node-openstack-{os-branch}-sfc-{stream}
index f0fb8ca71785f92c5d1b3efe7aeb460e465f6d91..2b1c073b7d2c4994514551795b47fbaa253bf08a 100644 (file)
@@ -58,3 +58,9 @@
     branch: 'master'
     mvn-settings: 'sfc-settings'
     mvn-opts: '-Xmx2048m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
+
+- view:
+    name: sfc
+    description: 'List of sfc jobs'
+    regex: '^sfc-.*'
+    <<: *releng_view_common
index 84a9ca9fe8483cda0b81f51175b3f8d735e73180..1faecb9f5a5ff2b2630d9469e159fb8e6f9fe688 100644 (file)
@@ -43,3 +43,9 @@
     branch: 'master'
     mvn-settings: 'snbi-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: snbi
+    description: 'List of snbi jobs'
+    regex: '^snbi-.*'
+    <<: *releng_view_common
index c959329d84046c20a612635bc1b71a368280f7e6..0ec71847e7557f3927130526d4253dcb36f10f00 100644 (file)
@@ -43,3 +43,9 @@
     branch: 'master'
     mvn-settings: 'snmp-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: snmp
+    description: 'List of snmp jobs'
+    regex: '^snmp-.*'
+    <<: *releng_view_common
index 87431891b5c7f8546a531df9d9665191c6dac586..3da5fb41f4d48e5753a02ff67245512bd12a0bde 100644 (file)
@@ -43,3 +43,9 @@
     branch: 'master'
     mvn-settings: 'snmp4sdn-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: snmp4sdn
+    description: 'List of snmp4sdn jobs'
+    regex: '^snmp4sdn-.*'
+    <<: *releng_view_common
index e8b6c02b50bbcaf818d69115123a809bddbe09d4..0d64f56ae47e897b1d14841242a8b5a01e8e0e2a 100644 (file)
@@ -43,3 +43,9 @@
     branch: 'master'
     mvn-settings: 'sxp-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: sxp
+    description: 'List of sxp jobs'
+    regex: '^sxp-.*'
+    <<: *releng_view_common
index d3bd2887352ebb07bdd41fc97786aae795c5838f..0adb0ca98e152f6693c1c95ec0a5bc78cfc9314e 100644 (file)
@@ -26,3 +26,9 @@
     branch: 'master'
     mvn-settings: 'systemmetrics-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: systemmetrics
+    description: 'List of systemmetrics jobs'
+    regex: '^systemmetrics-.*'
+    <<: *releng_view_common
index c28c14e24414f4effefa8e4b52cd512886132dfd..81e8d30c233b712f6794c29fd104ed612a6eb6ec 100644 (file)
@@ -35,3 +35,9 @@
     mvn-settings: 'telemetry-settings'
     mvn-goals: 'clean install'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: telemetry
+    description: 'List of telemetry jobs'
+    regex: '^telemetry-.*'
+    <<: *releng_view_common
index 8ee0a78fb30ff1c2130f457499caef8ba6a0c6c4..28faf07c0e593f65c2972dcc4b7e48658f2124af 100644 (file)
@@ -43,3 +43,9 @@
     branch: 'master'
     mvn-settings: 'topoprocessing-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: topoprocessing
+    description: 'List of topoprocessing jobs'
+    regex: '^topoprocessing-.*'
+    <<: *releng_view_common
index d1ab65f8db34aeb04c0051645c828b787c07e6db..c73709f0475f22ae217fa5f369caf3ca9bdc3dc7 100644 (file)
@@ -43,3 +43,9 @@
     branch: 'master'
     mvn-settings: 'transportpce-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: transportpce
+    description: 'List of transportpce jobs'
+    regex: '^transportpce-.*'
+    <<: *releng_view_common
index 564849dd854d67929f0ebb9b71c8c7fb4e227ced..6b5dede2e14fdd71935a19a34e50ac5ac476e72e 100644 (file)
@@ -43,3 +43,9 @@
     branch: 'master'
     mvn-settings: 'tsdr-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: tsdr
+    description: 'List of tsdr jobs'
+    regex: '^tsdr-.*'
+    <<: *releng_view_common
index b52b0245cc9554f36c69711202812cf14836e432..1b3deeb8da8d3f7383e8c75d4ae0b628c95fdaf7 100644 (file)
@@ -43,3 +43,9 @@
     branch: 'master'
     mvn-settings: 'ttp-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: ttp
+    description: 'List of ttp jobs'
+    regex: '^ttp-.*'
+    <<: *releng_view_common
index 4c63ee1e642a45dc12bebb0902800a4951215fc6..28d6dd77686906adede2f0c66943a4441f579072 100644 (file)
@@ -45,3 +45,9 @@
     branch: 'master'
     mvn-settings: 'unimgr-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: unimgr
+    description: 'List of unimgr jobs'
+    regex: '^unimgr-.*'
+    <<: *releng_view_common
index f7dfeb8c561c68ddf99d28c043c91e79e9b29049..32a2ee35e1ab6d8ae4f5ea8d4ae7b2616676cce9 100644 (file)
@@ -45,3 +45,9 @@
     branch: 'master'
     mvn-settings: 'usc-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: usc
+    description: 'List of usc jobs'
+    regex: '^usc-.*'
+    <<: *releng_view_common
index 1b017719b5a1825da9a3e8b65c20f758151203a2..ce250f832d5c80eebc081bd6278a73827a5f3fca 100644 (file)
@@ -43,3 +43,9 @@
     project-name: 'usecplugin'
     mvn-settings: 'usecplugin-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: usecplugin
+    description: 'List of usecplugin jobs'
+    regex: '^usecplugin-.*'
+    <<: *releng_view_common
index 5083bbfae3726a11004c210f7da8984ca6822884..ca5d56eddf5c9aa226968986a6c15c9e977803b5 100644 (file)
@@ -43,3 +43,9 @@
     branch: 'master'
     mvn-settings: 'yang-push-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: yang-push
+    description: 'List of yang-push jobs'
+    regex: '^yang-push-.*'
+    <<: *releng_view_common
index be65fd219b5c788ef68a3eae8a13348936f2c0c9..18be81167f79a69f0a0a0f59dc95391850efa0b4 100644 (file)
@@ -43,3 +43,9 @@
     branch: 'master'
     mvn-settings: 'yangide-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: yangide
+    description: 'List of yangide jobs'
+    regex: '^yangide-.*'
+    <<: *releng_view_common
index 0e5ccb848922500275dcb3312f5f2f8640d59aa8..bd7950a495db9b1dc903aa560ab159dcae6e9703 100644 (file)
@@ -36,3 +36,9 @@
     branch: 'master'
     mvn-settings: 'yangtools-settings'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+
+- view:
+    name: yangtools
+    description: 'List of yangtools jobs'
+    regex: '^yangtools-.*'
+    <<: *releng_view_common
index 21c2a7a07b517bf840c8912fee9e2f2abea0aa04..3e129f80c07bede1990ba736578c95cdf76518e3 100644 (file)
@@ -27,8 +27,13 @@ branch=${os_branch}
 # strip the "stable" off of the branch
 branch_name=$(cut -d'/' -f2 <<< "${branch}")
 
-wget https://bootstrap.pypa.io/get-pip.py
-python get-pip.py
+# Do not upgrade pip to v10. v10 does not allow uninstalling
+# distutils installed packages. This fails the openstack pip installs
+# below when it attempts to uninstall packages.
+# devstack patch that is trying to get pip 10 working:
+# https://review.openstack.org/#/c/561597/
+# wget https://bootstrap.pypa.io/get-pip.py
+# python get-pip.py
 
 mkdir tmp
 cd tmp
@@ -49,8 +54,16 @@ done
 echo '---> Installing openvswitch from relevant openstack branch'
 yum install -y "centos-release-openstack-${branch_name}"
 
-yum install -y --nogpgcheck openvswitch
-
+# install 2.8.2 for queens.
+# 2.9.0 is the current version in openstack-queens, but it is buggy.
+# Remove this when https://review.rdoproject.org/r/#/c/13839/ merges and 2.9.2 is in the repo.
+yum repolist
+yum --showduplicates list openvswitch
+if [ "${branch}" == "stable/queens" ]; then
+    yum install -y --nogpgcheck openvswitch-2.8.2-1.el7
+else
+    yum install -y --nogpgcheck openvswitch
+fi
 cd "$OLDPWD"
 rm -fr tmp
 
index 462005323af31ede51a2a035b23d20be3fc4cf87..149060c537d6f77d025bfa36ee244fdcca9372da 100644 (file)
             src: '/tmp/hbase-{{hbase_version}}.tar.gz'
             dest: /tmp/Hbase
             remote_src: true
-    - name: Install Quagga
-      block:
-        - name: Fetch Quagga git repo
-          git:
-            repo: https://github.com/6WIND/zrpcd.git
-            dest: /tmp/build_quagga/zrpcd
-            version: master
-        - name: Set compile script executable
-          file:
-            path: /tmp/build_quagga/zrpcd/pkgsrc/dev_compile_script.sh
-            mode: 0755
-        - name: Compile Quagga
-          shell: /tmp/build_quagga/zrpcd/pkgsrc/dev_compile_script.sh -d -b -t
-          args:
-            chdir: /tmp/build_quagga/zrpcd
-            executable: /bin/bash
-          become: true
 
   post_tasks:
     - name: System Reseal
index c2ecaa759e99ecea036b28bdec912f4c0a0137ed..7cbab296ab9cee1c07585a76dd5797c42693b4e1 100644 (file)
@@ -50,16 +50,3 @@ apt-get install vlan
 
 # Install netaddr package which is needed by some custom mininet topologies
 apt-get install python-netaddr
-
-# Check out quagga , compile and install for router functionalities
-echo "Installing the Quagga..."
-mkdir -p /tmp/build_quagga
-cd /tmp/build_quagga
-git clone https://github.com/6WIND/zrpcd.git
-cd zrpcd
-git checkout 20170731
-chmod a+x /tmp/build_quagga/zrpcd/pkgsrc/dev_compile_script.sh
-/tmp/build_quagga/zrpcd/pkgsrc/dev_compile_script.sh -d -b -t
-
-# Removing the build_quagga folder
-rm -rf /tmp/build_quagga/
index 5b599d39a4920c0e7776d896535fcb1230b653c7..6673762bc1e0dda6a23d30dce0288d66949ce34f 100644 (file)
@@ -66,16 +66,3 @@ apt-get install vlan
 
 # Install netaddr package which is needed by some custom mininet topologies
 apt-get install python-netaddr
-
-# Check out quagga , compile and install for router functionalities
-echo "Installing the Quagga..."
-mkdir -p /tmp/build_quagga
-cd /tmp/build_quagga
-git clone https://github.com/6WIND/zrpcd.git
-cd zrpcd
-git checkout 20170731
-chmod a+x /tmp/build_quagga/zrpcd/pkgsrc/dev_compile_script.sh
-/tmp/build_quagga/zrpcd/pkgsrc/dev_compile_script.sh -d -b -t
-
-# Removing the build_quagga folder
-rm -rf /tmp/build_quagga/
index f07daa8a1f7da9206f4fc9eb4313ef5dc7c3f267..441a9d1b1b4cc8224c05f9cc732040cd2afd847b 100644 (file)
       apt: name=vlan state=present
       become: true
 
-    - name: Install Quagga
-      block:
-        - name: Fetch Quagga git repo
-          git:
-            repo: https://github.com/6WIND/zrpcd.git
-            dest: /tmp/build_quagga/zrpcd
-            version: 20170731
-        - name: Set compile script executable
-          file:
-            path: /tmp/build_quagga/zrpcd/pkgsrc/dev_compile_script.sh
-            mode: 0755
-        - name: Compile Quagga
-          shell: /tmp/build_quagga/zrpcd/pkgsrc/dev_compile_script.sh -d -b -t
-          args:
-            chdir: /tmp/build_quagga/zrpcd
-            executable: /bin/bash
-          become: true
-
   post_tasks:
     - name: System Reseal
       script: ../common-packer/provision/system-reseal.sh
diff --git a/packer/templates/devstack-pre-pip-ocata.json b/packer/templates/devstack-pre-pip-ocata.json
deleted file mode 100644 (file)
index 418b2e1..0000000
+++ /dev/null
@@ -1,54 +0,0 @@
-{
-  "variables": {
-    "base_image": null,
-    "distro": null,
-    "cloud_auth_url": null,
-    "cloud_user": null,
-    "cloud_pass": null,
-    "cloud_network": null,
-    "cloud_tenant": null,
-    "cloud_user_data": null,
-    "ssh_user": null,
-    "ssh_proxy_host": ""
-  },
-  "builders": [
-    {
-      "type": "openstack",
-      "identity_endpoint": "{{user `cloud_auth_url`}}",
-      "domain_name": "Default",
-      "tenant_name": "{{user `cloud_tenant`}}",
-      "username": "{{user `cloud_user`}}",
-      "password": "{{user `cloud_pass`}}",
-      "region": "ca-ymq-1",
-      "availability_zone": "ca-ymq-2",
-      "ssh_username": "{{user `ssh_user`}}",
-      "ssh_proxy_host": "{{user `ssh_proxy_host`}}",
-      "image_name": "ZZCI - {{user `distro`}} - devstack-ocata - {{isotime \"20060102-150405.000\"}}",
-      "instance_name": "{{user `distro`}}-devstack-ocata-{{uuid}}",
-      "source_image_name": "{{user `base_image`}}",
-      "flavor": "v1-standard-1",
-      "networks": [
-        "{{user `cloud_network`}}"
-      ],
-      "user_data_file": "{{user `cloud_user_data`}}",
-      "metadata": {
-        "ci_managed": "yes"
-      }
-    }
-  ],
-  "provisioners": [
-    {
-      "type": "shell",
-      "environment_vars": [
-        "os_branch=stable/ocata"
-      ],
-      "scripts": [
-        "provision/baseline.sh",
-        "provision/devstack-pre-pip.sh",
-        "provision/system_reseal_local_env.sh",
-        "provision/system_reseal.sh"
-      ],
-      "execute_command": "chmod +x {{ .Path }}; if [ \"$UID\" == \"0\" ]; then {{ .Vars }} '{{ .Path }}'; else {{ .Vars }} sudo -E '{{ .Path }}'; fi"
-    }
-  ]
-}
index 1f668dbe95d5ddc975775c88e8f1c9ba209ece23..3807026b19c91edef54a4fea3315432d750796c9 100644 (file)
       ],
       "execute_command": "chmod +x {{ .Path }}; if [ \"$UID\" == \"0\" ]; then {{ .Vars }} '{{ .Path }}'; else {{ .Vars }} sudo -E '{{ .Path }}'; fi"
     },
+    {
+      "type": "shell-local",
+      "command": "./common-packer/ansible-galaxy.sh {{user `ansible_roles_path`}}"
+    },
     {
       "type": "ansible",
       "playbook_file": "provision/mininet-ovs-2.8.yaml",
index cff9a0e1c3041e359262bdda74bd287ed601977d..d0f61e78de72d1c24daa5fbfa6d91eeaf4ef02b2 100644 (file)
       ],
       "execute_command": "chmod +x {{ .Path }}; if [ \"$UID\" == \"0\" ]; then {{ .Vars }} '{{ .Path }}'; else {{ .Vars }} sudo -E '{{ .Path }}'; fi"
     },
+    {
+      "type": "shell-local",
+      "command": "./common-packer/ansible-galaxy.sh {{user `ansible_roles_path`}}"
+    },
     {
       "type": "ansible",
       "playbook_file": "provision/robot.yaml",
diff --git a/tox.ini b/tox.ini
index ad3eb318862cd1cc2fe2b1778348254eac2b07cd..6ee52ef3252e70761832b5e4e282c4d066c9d3a8 100644 (file)
--- a/tox.ini
+++ b/tox.ini
@@ -23,11 +23,11 @@ commands = sphinx-build -b html -d {envtmpdir}/doctrees ./docs/ {toxinidir}/docs
 
 [testenv:pep8]
 deps = flake8
-commands = flake8 scripts/
+commands = flake8 scripts/ *.py
 
 [testenv:prefix]
-commands = ./check_prefix.sh
+commands = python {toxinidir}/check_prefix.py
 
 [testenv:robot]
-commands = ./check_robot.sh
-
+basepython = python3
+commands = python {toxinidir}/check_robot.py