Merge "Add stable/nitrogen branch for puppet-odl"
authorDaniel Farrell <dfarrell@redhat.com>
Tue, 19 Sep 2017 20:19:40 +0000 (20:19 +0000)
committerGerrit Code Review <gerrit@opendaylight.org>
Tue, 19 Sep 2017 20:19:40 +0000 (20:19 +0000)
110 files changed:
docs/cloud-images.rst
jjb/aaa/aaa-csit-authn.yaml
jjb/aaa/aaa-csit-idmlite.yaml
jjb/aaa/aaa-csit-keystone.yaml
jjb/alto/alto-csit-setup.yaml
jjb/bgpcep/bgpcep-csit-bgp-ingest.yaml
jjb/bgpcep/bgpcep-csit-bgpclustering.yaml
jjb/bgpcep/bgpcep-csit-throughpcep.yaml
jjb/bgpcep/bgpcep-csit-userfeatures.yaml
jjb/bgpcep/bgpcep-patch-test.yaml
jjb/bier/bier-csit-basic.yaml
jjb/capwap/capwap-csit-ac.yaml
jjb/centinel/centinel-csit-basic.yaml
jjb/coe/coe-csit-openstack.yaml
jjb/controller/controller-csit-akka1.yaml
jjb/controller/controller-csit-clustering.yaml
jjb/controller/controller-csit-periodic-dsbenchmark-cluster.yaml
jjb/controller/controller-csit-periodic-dsbenchmark.yaml
jjb/controller/controller-csit-rest-cars-perf.yaml
jjb/dluxapps/dluxapps-csit-yangman.yaml
jjb/docs/docs-rtd.yaml
jjb/genius/genius-csit-genius.yaml
jjb/genius/genius-patch-test.yaml
jjb/global-jjb
jjb/groupbasedpolicy/groupbasedpolicy-csit-1node-openstack.yaml
jjb/groupbasedpolicy/groupbasedpolicy-csit-3node.yaml
jjb/groupbasedpolicy/groupbasedpolicy-csit-6node.yaml
jjb/groupbasedpolicy/groupbasedpolicy-csit-clustering.yaml
jjb/integration/csit-jobs-boron.lst
jjb/integration/csit-jobs-carbon.lst
jjb/integration/csit-jobs-nitrogen.lst
jjb/integration/csit-jobs-oxygen.lst
jjb/integration/distribution-deploy-offline.sh
jjb/integration/distribution/distribution-csit-userfeatures.yaml
jjb/integration/integration-deploy-openstack-run-test.sh
jjb/integration/integration-templates.yaml
jjb/integration/integration-test-jobs.yaml
jjb/iotdm/iotdm-csit-basic.yaml
jjb/l2switch/l2switch-csit-scalability.yaml
jjb/l2switch/l2switch-csit-switch.yaml
jjb/l2switch/l2switch-patch-test.yaml
jjb/lacp/lacp-csit-lacp.yaml
jjb/lf-infra/lf-infra-jobs.yaml
jjb/lispflowmapping/lispflowmapping-csit-msmr.yaml
jjb/messaging4transport/messaging4transport-csit-basic.yaml
jjb/natapp/natapp-csit-basic.yaml
jjb/nemo/nemo-csit-engine.yaml
jjb/netconf/netconf-cluster-stress.yaml
jjb/netconf/netconf-clustering-scale.yaml
jjb/netconf/netconf-clustering.yaml
jjb/netconf/netconf-patch-test.yaml
jjb/netconf/netconf-scale.yaml
jjb/netconf/netconf-userfeatures.yaml
jjb/netide/netide-csit-basic.yaml
jjb/netvirt/netvirt-csit-hwvtep-openstack.yaml
jjb/netvirt/netvirt-csit-multi-openstack.yaml
jjb/netvirt/netvirt-legacy-csit-multi-openstack.yaml
jjb/netvirt/netvirt-legacy-csit.yaml
jjb/netvirt/netvirt-patch-test.yaml
jjb/nic/nic-csit-basic.yaml
jjb/ocpplugin/ocpplugin-csit-basic.yaml
jjb/ocpplugin/ocpplugin-csit-scalability.yaml
jjb/of-config/of-config-csit-basic.yaml
jjb/openflowplugin/openflowplugin-csit-flow-services.yaml
jjb/openflowplugin/openflowplugin-csit-longevity.yaml
jjb/openflowplugin/openflowplugin-patch-test.yaml
jjb/opflex/deps-inc-v1/libuv_tgz-build.sh [deleted file]
jjb/opflex/deps-inc-v1/openvswitch_tgz-build.sh [deleted file]
jjb/opflex/deps-inc-v1/rapidjson_tgz-build.sh [deleted file]
jjb/opflex/deps-inc-v2/openvswitch_tgz-build.sh [deleted file]
jjb/opflex/opflex-custom.yaml
jjb/opflex/opflex-dependencies.yaml
jjb/opflex/opflex-macros.yaml [new file with mode: 0644]
jjb/opflex/opflex.yaml
jjb/opflex/scripts/deploy-opflex.sh [moved from jjb/opflex/deploy-opflex.sh with 97% similarity]
jjb/opflex/scripts/libuv-build.sh [new file with mode: 0644]
jjb/opflex/scripts/openvswitch-build.sh [new file with mode: 0644]
jjb/opflex/scripts/opflex-build.sh [moved from jjb/opflex/opflex-build.sh with 52% similarity]
jjb/opflex/scripts/rapidjson-build.sh [new file with mode: 0644]
jjb/ovsdb/ovsdb-csit-southbound.yaml
jjb/ovsdb/ovsdb-patch-test.yaml
jjb/ovsdb/ovsdb-sonar.yaml
jjb/packetcable/packetcable-csit-pcmm.yaml
jjb/releng-defaults.yaml
jjb/releng-jobs.yaml
jjb/releng-templates-java.yaml
jjb/sfc/sfc-csit-full-deploy.yaml
jjb/sfc/sfc-csit-rest-basic.yaml
jjb/snmp/snmp-csit-basic.yaml
jjb/sxp/sxp-csit-basic.yaml
jjb/sxp/sxp-csit-cluster-routing.yaml
jjb/sxp/sxp-csit-clustering.yaml
jjb/sxp/sxp-csit-filtering.yaml
jjb/sxp/sxp-csit-performance.yaml
jjb/sxp/sxp-csit-topology.yaml
jjb/topoprocessing/topoprocessing-csit-topology-operation.yaml
jjb/tsdr/tsdr-csit-hbase.yaml
jjb/tsdr/tsdr-csit-hsqldb.yaml
jjb/unimgr/unimgr-csit-basic.yaml
jjb/unimgr/unimgr-csit-legato.yaml
jjb/usc/usc-csit-channel.yaml
jjb/usc/usc-csit-tcp.yaml
jjb/usc/usc-csit-udp.yaml
jjb/usecplugin/usecplugin-csit-basic.yaml
jjb/vtn/vtn-csit-3node-manager.yaml
jjb/vtn/vtn-csit-manager.yaml
jjb/vtn/vtn-manager-csit-1node-openstack.yaml
jjb/vtn/vtn-patch-test.yaml
packer/provision/devstack-pre-pip.sh
packer/templates/devstack-pre-pip-pike.json [new file with mode: 0644]

index e5b3c16349c74f055d091b41a490ab9219df424e..1f09e470469238c3b42708f27bae5e3bfbd4dc18 100644 (file)
@@ -20,6 +20,7 @@ Following are the list of published images available to be used with Jenkins job
 * CentOS 7 - devstack-ocata - 20170606-0821
 * CentOS 7 - devstack-ocata - 20170609-0221
 * CentOS 7 - devstack-ocata - 20170808-0528
+* CentOS 7 - devstack-pike - 20170901-2223
 * CentOS 7 - docker - 20170117-0003
 * CentOS 7 - docker - 20170120-1434
 * CentOS 7 - docker - 20170607-0203
@@ -75,4 +76,5 @@ Following are the list of published images available to be used with Jenkins job
 * Ubuntu 16.04 - mininet-ovs-25 - 20170609-0221
 * Ubuntu 16.04 - mininet-ovs-25 - 20170703-2150
 * Ubuntu 16.04 - mininet-ovs-25 - 20170808-0158
+* Ubuntu 16.04 - mininet-ovs-26 - 20170829-0548
 * Ubuntu 16.04 LTS (2016-05-03 cloudimg)
index 2daa45588d8fa67847b760666cd68d94546a7531..d19151bd8b3f8b003826c90f552c46cc360e3ee2 100644 (file)
@@ -29,8 +29,6 @@
           karaf-version: karaf3
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index 7c6dc48b9a0059454137f0af24a30e73b1311df3..38748139289ca2d0f9cdbf01b3f7cca387910ef9 100644 (file)
@@ -29,8 +29,6 @@
           karaf-version: karaf3
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index 9ebb3c98588f1e8904a65ca6a3a74546640f1cdf..5473951dd4d80190faa56874d29b53771955bbcc 100644 (file)
@@ -25,8 +25,6 @@
           karaf-version: karaf3
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index 7aa1f894c4aa8d0f5501e8cd5d9d55907470e88b..d836f2629f2dd51fe943e3a1d553bd7850a39797 100644 (file)
@@ -28,8 +28,6 @@
           karaf-version: karaf3
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index e12ed8529b61a572e9391dbc79a3a4cc535e8c31..104b5597b76c323f9e13daa9506bcfcc282c9e9c 100644 (file)
@@ -43,8 +43,6 @@
               -v TEST_DURATION_MULTIPLIER_CHANGE_COUNT_MANY:8.0
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
               -v TEST_DURATION_MULTIPLIER:4
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
               -v TEST_DURATION_MULTIPLIER:4
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index 7f635b04690229fea09b1fcd5240ab02e5124aa0..ad642be0b98bd5f985fd80bb4bcde5278039b6b1 100644 (file)
@@ -29,8 +29,6 @@
           install-features: 'odl-restconf,odl-bgpcep-bgp-all,odl-bgpcep-bgp,odl-netconf-clustered-topology'
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index 652c1dc2269febea3ae5518971029986b8c154d4..cfb744181d9489f15a362c250a9d8dfc1860a321 100644 (file)
@@ -29,8 +29,6 @@
           install-features: 'odl-restconf,odl-bgpcep-pcep-all,odl-bgpcep-pcep'
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
@@ -80,8 +78,6 @@
           install-features: 'odl-restconf,odl-bgpcep-pcep-all,odl-bgpcep-pcep'
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index f615b9628d7feb2f8a87dfb5595dcc8614b11aa9..6ea4a1ba7fbd183c97a57145cbf55c0c06679889 100644 (file)
@@ -41,8 +41,6 @@
           robot-options: '-v USE_NETCONF_CONNECTOR:True'
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index d96356f3fbaac85f2413487dd2b15ce7d341dfd3..3f094000bf292e2fa0dc6a1be5e5a1c72e5cb20a 100644 (file)
     feature:
       - bgp:
           csit-list: >
-              bgpcep-csit-1node-gate-userfeatures-only-{stream},
-              bgpcep-csit-1node-gate-bgp-ingest-mixed-only-{stream}
+              bgpcep-csit-1node-gate-userfeatures-all-{stream},
+              bgpcep-csit-1node-gate-bgp-ingest-mixed-all-{stream}
 
       - pcep:
           csit-list: >
-              bgpcep-csit-1node-gate-userfeatures-only-{stream},
-              bgpcep-csit-1node-gate-throughpcep-only-{stream}
+              bgpcep-csit-1node-gate-userfeatures-all-{stream},
+              bgpcep-csit-1node-gate-throughpcep-all-{stream}
index e47ff6afce623662c57551332eac770897e3ca7e..322452d9dcbdf02c9ed4168a5dc7b20656d078b4 100644 (file)
       - carbon:
           branch: 'stable/carbon'
           jre: 'openjdk8'
-          karaf-version: karaf3
+          karaf-version: 'karaf3'
 
-    # TODO: Delete the following if suites are compatible with Nitrogen again.
     verify-stream: 'nitrogen'
-    # TODO: Remove the lines above and below when nitrogen becomes the default csit-verify stream.
-    verify-branch: 'master'
+    verify-branch: 'stable/nitrogen'
+    verify-karaf-version: 'karaf4'
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index 3b2abf9526b1120950825a67c14c54796e01b1ea..c2cf2c30ba6c37ec3015d770f10f632b95d68c2d 100644 (file)
@@ -29,8 +29,6 @@
           karaf-version: karaf3
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index 4e92323675b580a45b96152c2bfd92d51e54b5f1..8ef0696abc49441ad6355bc040cfce5a040fecfb 100644 (file)
@@ -29,8 +29,6 @@
           karaf-version: karaf3
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index e27b40fc6df64ad815f05b7533b94b82293bfb31..76d8173b0cc0337b598e85989e63cac217d9321a 100644 (file)
@@ -20,9 +20,7 @@
 
     testplan: '{project}-{topology}-openstack.txt'
 
-    functionality:
-      - kubernetes:
-          schedule: ''
+    functionality: 'kubernetes'
 
     stream:
       - oxygen:
       - nitrogen:
           branch: 'stable/nitrogen'
           jre: 'openjdk8'
-      - carbon:
-          branch: 'stable/carbon'
-          jre: 'openjdk8'
-          karaf-version: karaf3
 
     openstack:
       - ocata:
           odl-ml2-driver-version: 'v2'
           openstack_system_image: 'CentOS 7 - devstack-ocata - 20170808-0528'
 
-
     create-initial-networks: 'True'
 
     enable-openstack-plugins: 'networking-odl,kuryr-kubernetes,neutron-lbaas'
 
     enable-openstack-services: >
-        q-svc,q-dhcp,q-meta,n-cauth,legacy_etcd,docker,q-lbaasv2,kubernetes-api,
+        legacy_etcd,docker,q-lbaasv2,kubernetes-api,
         kubernetes-controller-manager,kubernetes-scheduler,kubelet,kuryr-kubernetes
 
+    disable-openstack-services: 'etcd3'
+
     lbaas-service-provider: >
         'LOADBALANCERV2:opendaylight:networking_odl.lbaas.driver_v2.OpenDaylightLbaasDriverV2:default'
index 80a9cdbc098c06e58b8e2f9765e39b331844a9ce..f0f64fac8d75bc07aa1b7eff675fc829600c7633 100644 (file)
@@ -28,8 +28,6 @@
           karaf-version: karaf3
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index 04bc7ebce8eaafc0d5c48209fd4b46c30a4838ad..04c3503155a3741b32d222d2547f0322a32afaf0 100644 (file)
@@ -29,8 +29,6 @@
           karaf-version: karaf3
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index d9f0a7b442a829776ad9ab0769d4a8ce1fe2a9c1..8d09d16de686df3e980bbedee46ac1fb7c6720d9 100644 (file)
@@ -28,8 +28,6 @@
           karaf-version: karaf3
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index 50c623523609fc73fdde01a65849870ca6dc46e5..80443d391e238e2ce9444d269e661bbfed74cdbd 100644 (file)
@@ -28,8 +28,6 @@
           karaf-version: karaf3
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index 906fbfd76f951d57489f102e8656bd77f5e750ee..61e6c563fc212ab331ad72cc48389a37f0b7461b 100644 (file)
@@ -28,8 +28,6 @@
           karaf-version: karaf3
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index 467c0815a47014828dcf3e5bbd94db86e08af03d..a6dcaaea9ff381f29c4ada354f233bf7dca0f902 100644 (file)
@@ -29,8 +29,6 @@
     verify-branch: 'stable/carbon'
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index da3ee65d1d68febf98d24fd3466415b66d39439f..4725f8235096ea92461e0f09bb086278cc68802e 100644 (file)
@@ -2,25 +2,23 @@
 - project:
     name: docs-rtd
     jobs:
-      - 'docs-merge-rtd-{stream}'
-      - 'docs-verify-rtd-{stream}'
-      - '{project-name}-verify-tox-{stream}'
+      - '{project-name}-rtd-jobs'
+      - gerrit-tox-verify
 
     stream:
       - oxygen:
-          branch: 'master'
-          jdk: 'openjdk8'
+          branch: master
       - nitrogen:
-          branch: 'stable/nitrogen'
-          jre: 'openjdk8'
+          branch: stable/nitrogen
       - carbon:
-          branch: 'stable/carbon'
+          branch: stable/carbon
       - boron:
-          branch: 'stable/boron'
+          branch: stable/boron
 
     project: docs
     project-name: docs
-    rtdproject: opendaylight
+    build-node: centos7-java-builder-2c-4g
+    rtd-project: opendaylight
     archive-artifacts: ''
 
 - job-template:
index d3531f51ac778b45ebf347d68bb5fc703c8f82af..614d8ab7c84cb98edab5c042cd2bb9a1023301a8 100644 (file)
@@ -34,8 +34,6 @@
           karaf-version: karaf3
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index d73f5f3ad88241418b2f02cfaaa6be0747ece39a..f93b75affaa48c7dce905fb48fa6363f5f81b838 100644 (file)
     stream:
       - oxygen:
           branch: 'master'
-          jdk: 'openjdk8'
+          os-branch: 'ocata'
       - nitrogen:
           branch: 'stable/nitrogen'
-          jdk: 'openjdk8'
+          os-branch: 'ocata'
       - carbon:
           branch: 'stable/carbon'
-          jdk: 'openjdk8'
+          os-branch: 'ocata'
           karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
-          jdk: 'openjdk8'
+          os-branch: 'newton'
           karaf-version: karaf3
 
+    jdk: 'openjdk8'
+
     feature:
       - netvirt:
           csit-list: >
-              netvirt-csit-1node-openstack-ocata-gate-stateful-{stream}
+              netvirt-csit-1node-openstack-{os-branch}-gate-stateful-{stream}
 
       - cluster-netvirt:
           csit-list: >
-              netvirt-csit-3node-openstack-ocata-gate-stateful-{stream}
+              netvirt-csit-3node-openstack-{os-branch}-gate-stateful-{stream}
 
       - genius:
           csit-list: >
-              genius-csit-1node-gate-only-{stream},
               genius-csit-1node-gate-all-{stream}
index 0ee567bb454432e6e4ca1bc6f45431b68e95bad3..21f2869c8f8ac7b2b21130eb16231a8df2904f5c 160000 (submodule)
@@ -1 +1 @@
-Subproject commit 0ee567bb454432e6e4ca1bc6f45431b68e95bad3
+Subproject commit 21f2869c8f8ac7b2b21130eb16231a8df2904f5c
index 3bc42fc1c85e07107fae55ac69714a8b735cc9b8..004193db7d358c411d890511ee4606edf4f308b3 100644 (file)
@@ -43,8 +43,6 @@
           openstack-branch: 'stable/newton'
           odl-ml2-branch: 'stable/newton'
 
-    schedule: 'H H * * *'
-
     public-bridge: 'br-int'
 
     enable-openstack-plugins: 'networking-odl'
index 9f06e5f083f3b52b0cd537085381529cd9d2c47a..e31ffacf0a032b9e115970449a1afae920a94598 100644 (file)
@@ -28,8 +28,6 @@
           karaf-version: karaf3
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index 9367efa4bf10baeab9562de695c0a29ffbcc7fd7..ddc1237d6c7cff2634c1c7480d617aebdfd2bb65 100644 (file)
@@ -29,8 +29,6 @@
           karaf-version: karaf3
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index 680af62b3ac1a4321d51a82fc9198fb88e78d626..0d0459ece59991593cb0009d738971285f73b5e3 100644 (file)
@@ -29,8 +29,6 @@
           karaf-version: karaf3
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index a798ff273d3effd15c0823cdeb0032053167ce5d..1c279ab77a727b7bb94e84375cd70c39fdb46001 100644 (file)
@@ -1,80 +1,45 @@
 aaa-csit-1node-authn-all-boron,
-aaa-csit-1node-authn-only-boron,
 aaa-csit-1node-idmlite-all-boron,
-aaa-csit-1node-idmlite-only-boron,
 alto-csit-1node-setup-all-boron,
-alto-csit-1node-setup-only-boron,
 bgpcep-csit-1node-periodic-bgp-ingest-all-boron,
 bgpcep-csit-1node-periodic-bgp-ingest-mixed-all-boron,
-bgpcep-csit-1node-periodic-bgp-ingest-mixed-only-boron,
-bgpcep-csit-1node-periodic-bgp-ingest-only-boron,
 bgpcep-csit-1node-periodic-throughpcep-all-boron,
-bgpcep-csit-1node-periodic-throughpcep-only-boron,
 bgpcep-csit-1node-userfeatures-all-boron,
-bgpcep-csit-1node-userfeatures-only-boron,
 bgpcep-csit-3node-periodic-bgpclustering-all-boron,
 bgpcep-csit-3node-periodic-bgpclustering-ha-only-boron,
-bgpcep-csit-3node-periodic-bgpclustering-only-boron,
 capwap-csit-1node-ac-all-boron,
-capwap-csit-1node-ac-only-boron,
 centinel-csit-1node-basic-all-boron,
-centinel-csit-1node-basic-only-boron,
 controller-csit-1node-akka1-all-boron,
-controller-csit-1node-akka1-only-boron,
 controller-csit-1node-periodic-benchmark-all-boron,
-controller-csit-1node-periodic-benchmark-only-boron,
 controller-csit-1node-rest-cars-perf-all-boron,
-controller-csit-1node-rest-cars-perf-only-boron,
 controller-csit-3node-clustering-all-boron,
-controller-csit-3node-clustering-only-boron,
 controller-csit-3node-periodic-benchmark-all-boron,
-controller-csit-3node-periodic-benchmark-only-boron,
 controller-csit-3node-rest-clust-cars-perf-only-boron,
 didm-csit-1node-discovery-only-boron,
 distribution-csit-1node-userfeatures-all-boron,
-distribution-csit-1node-userfeatures-only-boron,
 genius-csit-1node-upstream-all-boron,
-genius-csit-1node-upstream-only-boron,
 genius-csit-3node-upstream-all-boron,
-genius-csit-3node-upstream-only-boron,
 groupbasedpolicy-csit-1node-3-node-all-boron,
-groupbasedpolicy-csit-1node-3-node-only-boron,
 groupbasedpolicy-csit-1node-6node-all-boron,
-groupbasedpolicy-csit-1node-6node-only-boron,
 groupbasedpolicy-csit-1node-openstack-newton-openstack-boron,
 groupbasedpolicy-csit-3node-clustering-all-boron,
-groupbasedpolicy-csit-3node-clustering-only-boron,
 l2switch-csit-1node-periodic-host-scalability-daily-only-boron,
 l2switch-csit-1node-scalability-all-boron,
-l2switch-csit-1node-scalability-only-boron,
 l2switch-csit-1node-switch-all-boron,
-l2switch-csit-1node-switch-only-boron,
 lacp-csit-1node-lacp-all-boron,
-lacp-csit-1node-lacp-only-boron,
 lispflowmapping-csit-1node-msmr-all-boron,
-lispflowmapping-csit-1node-msmr-only-boron,
 lispflowmapping-csit-1node-performance-only-boron,
 lispflowmapping-csit-3node-msmr-all-boron,
-lispflowmapping-csit-3node-msmr-only-boron,
 mdsal-csit-1node-periodic-bindingv1-only-boron,
 messaging4transport-csit-1node-basic-all-boron,
-messaging4transport-csit-1node-basic-only-boron,
 natapp-csit-1node-basic-all-boron,
-natapp-csit-1node-basic-only-boron,
 nemo-csit-1node-engine-all-boron,
-nemo-csit-1node-engine-only-boron,
 netconf-csit-1node-periodic-scale-all-boron,
-netconf-csit-1node-periodic-scale-only-boron,
 netconf-csit-1node-userfeatures-all-boron,
-netconf-csit-1node-userfeatures-only-boron,
 netconf-csit-3node-cluster-stress-all-boron,
-netconf-csit-3node-cluster-stress-only-boron,
 netconf-csit-3node-clustering-all-boron,
-netconf-csit-3node-clustering-only-boron,
 netconf-csit-3node-periodic-clustering-scale-all-boron,
-netconf-csit-3node-periodic-clustering-scale-only-boron,
 netide-csit-1node-basic-all-boron,
-netide-csit-1node-basic-only-boron,
 netvirt-csit-1node-openstack-newton-nodl-v2-upstream-learn-boron,
 netvirt-csit-1node-openstack-newton-nodl-v2-upstream-stateful-boron,
 netvirt-csit-1node-openstack-newton-nodl-v2-upstream-stateful-snat-conntrack-boron,
@@ -83,10 +48,6 @@ netvirt-csit-1node-openstack-newton-upstream-learn-boron,
 netvirt-csit-1node-openstack-newton-upstream-stateful-boron,
 netvirt-csit-1node-openstack-newton-upstream-stateful-snat-conntrack-boron,
 netvirt-csit-1node-openstack-newton-upstream-transparent-boron,
-netvirt-csit-1node-openstack-ocata-upstream-learn-boron,
-netvirt-csit-1node-openstack-ocata-upstream-stateful-boron,
-netvirt-csit-1node-openstack-ocata-upstream-stateful-snat-conntrack-boron,
-netvirt-csit-1node-openstack-ocata-upstream-transparent-boron,
 netvirt-csit-3node-openstack-newton-nodl-v2-upstream-learn-boron,
 netvirt-csit-3node-openstack-newton-nodl-v2-upstream-stateful-boron,
 netvirt-csit-3node-openstack-newton-nodl-v2-upstream-stateful-snat-conntrack-boron,
@@ -95,10 +56,6 @@ netvirt-csit-3node-openstack-newton-upstream-learn-boron,
 netvirt-csit-3node-openstack-newton-upstream-stateful-boron,
 netvirt-csit-3node-openstack-newton-upstream-stateful-snat-conntrack-boron,
 netvirt-csit-3node-openstack-newton-upstream-transparent-boron,
-netvirt-csit-3node-openstack-ocata-upstream-learn-boron,
-netvirt-csit-3node-openstack-ocata-upstream-stateful-boron,
-netvirt-csit-3node-openstack-ocata-upstream-stateful-snat-conntrack-boron,
-netvirt-csit-3node-openstack-ocata-upstream-transparent-boron,
 netvirt-csit-hwvtep-1node-openstack-newton-nodl-v2-upstream-learn-boron,
 netvirt-csit-hwvtep-1node-openstack-newton-nodl-v2-upstream-stateful-boron,
 netvirt-csit-hwvtep-1node-openstack-newton-nodl-v2-upstream-transparent-boron,
@@ -112,7 +69,6 @@ netvirt-csit-hwvtep-3node-openstack-newton-upstream-learn-boron,
 netvirt-csit-hwvtep-3node-openstack-newton-upstream-stateful-boron,
 netvirt-csit-hwvtep-3node-openstack-newton-upstream-transparent-boron,
 netvirt-legacy-csit-1node-openstack-basic-all-boron,
-netvirt-legacy-csit-1node-openstack-basic-only-boron,
 netvirt-legacy-csit-1node-openstack-newton-nodl-v2-upstream-boron,
 netvirt-legacy-csit-1node-openstack-newton-upstream-boron,
 netvirt-legacy-csit-1node-openstack-ocata-upstream-boron,
@@ -121,16 +77,11 @@ netvirt-legacy-csit-3node-openstack-newton-nodl-v2-upstream-boron,
 netvirt-legacy-csit-3node-openstack-newton-upstream-boron,
 netvirt-legacy-csit-3node-openstack-ocata-upstream-boron,
 nic-csit-1node-basic-all-boron,
-nic-csit-1node-basic-only-boron,
 ocpplugin-csit-1node-get-all-boron,
-ocpplugin-csit-1node-get-only-boron,
 ocpplugin-csit-1node-scalability-all-boron,
-ocpplugin-csit-1node-scalability-only-boron,
 of-config-csit-1node-basic-all-boron,
-of-config-csit-1node-basic-only-boron,
 openflowplugin-csit-1node-flow-services-all-boron,
 openflowplugin-csit-1node-flow-services-frs-only-boron,
-openflowplugin-csit-1node-flow-services-only-boron,
 openflowplugin-csit-1node-periodic-bulkomatic-perf-daily-only-boron,
 openflowplugin-csit-1node-periodic-cbench-daily-only-boron,
 openflowplugin-csit-1node-periodic-link-scalability-daily-only-boron,
@@ -144,45 +95,26 @@ openflowplugin-csit-3node-periodic-bulkomatic-clustering-daily-only-boron,
 openflowplugin-csit-3node-periodic-bulkomatic-clustering-perf-daily-only-boron,
 openflowplugin-csit-3node-periodic-restconf-clustering-perf-daily-only-boron,
 ovsdb-csit-1node-upstream-southbound-all-boron,
-ovsdb-csit-1node-upstream-southbound-only-boron,
 ovsdb-csit-3node-upstream-clustering-only-boron,
 packetcable-csit-1node-pcmm-all-boron,
-packetcable-csit-1node-pcmm-only-boron,
 sdninterfaceapp-csit-1node-basic-only-boron,
 sfc-csit-3node-rest-basic-all-boron,
-sfc-csit-3node-rest-basic-only-boron,
 snmp-csit-1node-basic-all-boron,
-snmp-csit-1node-basic-only-boron,
 sxp-csit-1node-basic-all-boron,
-sxp-csit-1node-basic-only-boron,
 sxp-csit-1node-filtering-all-boron,
-sxp-csit-1node-filtering-only-boron,
 sxp-csit-1node-topology-all-boron,
-sxp-csit-1node-topology-only-boron,
 sxp-csit-3node-periodic-clustering-all-boron,
-sxp-csit-3node-periodic-clustering-only-boron,
 topoprocessing-csit-1node-topology-operations-all-boron,
-topoprocessing-csit-1node-topology-operations-only-boron,
 tsdr-csit-1node-cassandra-datastore-only-boron,
 tsdr-csit-1node-hbase-datastore-all-boron,
-tsdr-csit-1node-hbase-datastore-only-boron,
 tsdr-csit-1node-hsqldb-datastore-all-boron,
-tsdr-csit-1node-hsqldb-datastore-only-boron,
 unimgr-csit-1node-basic-all-boron,
-unimgr-csit-1node-basic-only-boron,
 unimgr-csit-1node-legato-all-boron,
-unimgr-csit-1node-legato-only-boron,
 usc-csit-1node-channel-all-boron,
-usc-csit-1node-channel-only-boron,
 usc-csit-1node-tcp-all-boron,
-usc-csit-1node-tcp-only-boron,
 usc-csit-1node-udp-all-boron,
-usc-csit-1node-udp-only-boron,
 usecplugin-csit-1node-basic-all-boron,
-usecplugin-csit-1node-basic-only-boron,
 vtn-csit-1node-coordinator-only-boron,
 vtn-csit-1node-manager-all-boron,
-vtn-csit-1node-manager-only-boron,
 vtn-csit-1node-openstack-newton-neutron-boron,
 vtn-csit-3node-manager-all-boron,
-vtn-csit-3node-manager-only-boron,
index 018e67cd1b4a5c8f2a811d5083d5826d0453a27f..b2bcd5cb75011c436d638c1a4e1a6d46bebbf8d5 100644 (file)
 aaa-csit-1node-authn-all-carbon,
-aaa-csit-1node-authn-only-carbon,
 aaa-csit-1node-idmlite-all-carbon,
-aaa-csit-1node-idmlite-only-carbon,
 aaa-csit-1node-keystone-all-carbon,
-aaa-csit-1node-keystone-only-carbon,
 aaa-csit-1node-tls-only-carbon,
 alto-csit-1node-setup-all-carbon,
-alto-csit-1node-setup-only-carbon,
 bgpcep-csit-1node-periodic-bgp-ingest-all-carbon,
 bgpcep-csit-1node-periodic-bgp-ingest-mixed-all-carbon,
-bgpcep-csit-1node-periodic-bgp-ingest-mixed-only-carbon,
-bgpcep-csit-1node-periodic-bgp-ingest-only-carbon,
 bgpcep-csit-1node-periodic-throughpcep-all-carbon,
-bgpcep-csit-1node-periodic-throughpcep-only-carbon,
 bgpcep-csit-1node-userfeatures-all-carbon,
-bgpcep-csit-1node-userfeatures-only-carbon,
 bgpcep-csit-3node-periodic-bgpclustering-all-carbon,
 bgpcep-csit-3node-periodic-bgpclustering-ha-only-carbon,
-bgpcep-csit-3node-periodic-bgpclustering-only-carbon,
 bier-csit-1node-basic-all-carbon,
-bier-csit-1node-basic-only-carbon,
 controller-csit-1node-akka1-all-carbon,
-controller-csit-1node-akka1-only-carbon,
 controller-csit-1node-periodic-benchmark-all-carbon,
-controller-csit-1node-periodic-benchmark-only-carbon,
 controller-csit-1node-rest-cars-perf-all-carbon,
-controller-csit-1node-rest-cars-perf-only-carbon,
 controller-csit-3node-clustering-all-carbon,
-controller-csit-3node-clustering-only-carbon,
 controller-csit-3node-periodic-benchmark-all-carbon,
-controller-csit-3node-periodic-benchmark-only-carbon,
 controller-csit-3node-rest-clust-cars-perf-only-carbon,
 didm-csit-1node-discovery-only-carbon,
 distribution-csit-1node-userfeatures-all-carbon,
-distribution-csit-1node-userfeatures-only-carbon,
 dluxapps-csit-1node-yangman-all-carbon,
-dluxapps-csit-1node-yangman-only-carbon,
 genius-csit-1node-upstream-all-carbon,
-genius-csit-1node-upstream-only-carbon,
 genius-csit-3node-upstream-all-carbon,
-genius-csit-3node-upstream-only-carbon,
 groupbasedpolicy-csit-1node-3-node-all-carbon,
-groupbasedpolicy-csit-1node-3-node-only-carbon,
 groupbasedpolicy-csit-1node-6node-all-carbon,
-groupbasedpolicy-csit-1node-6node-only-carbon,
 groupbasedpolicy-csit-1node-openstack-newton-openstack-carbon,
 groupbasedpolicy-csit-1node-sxp-only-carbon,
 groupbasedpolicy-csit-3node-clustering-all-carbon,
-groupbasedpolicy-csit-3node-clustering-only-carbon,
 iotdm-csit-1node-basic-all-carbon,
-iotdm-csit-1node-basic-only-carbon,
 l2switch-csit-1node-periodic-host-scalability-daily-only-carbon,
 l2switch-csit-1node-scalability-all-carbon,
-l2switch-csit-1node-scalability-only-carbon,
 l2switch-csit-1node-switch-all-carbon,
-l2switch-csit-1node-switch-only-carbon,
 lacp-csit-1node-lacp-all-carbon,
-lacp-csit-1node-lacp-only-carbon,
 lispflowmapping-csit-1node-msmr-all-carbon,
-lispflowmapping-csit-1node-msmr-only-carbon,
 lispflowmapping-csit-1node-performance-only-carbon,
 lispflowmapping-csit-3node-msmr-all-carbon,
-lispflowmapping-csit-3node-msmr-only-carbon,
 mdsal-csit-1node-periodic-bindingv1-only-carbon,
 messaging4transport-csit-1node-basic-all-carbon,
-messaging4transport-csit-1node-basic-only-carbon,
 natapp-csit-1node-basic-all-carbon,
-natapp-csit-1node-basic-only-carbon,
 nemo-csit-1node-engine-all-carbon,
-nemo-csit-1node-engine-only-carbon,
 netconf-csit-1node-callhome-only-carbon,
 netconf-csit-1node-periodic-scale-all-carbon,
-netconf-csit-1node-periodic-scale-only-carbon,
 netconf-csit-1node-userfeatures-all-carbon,
-netconf-csit-1node-userfeatures-only-carbon,
 netconf-csit-3node-cluster-stress-all-carbon,
-netconf-csit-3node-cluster-stress-only-carbon,
 netconf-csit-3node-clustering-all-carbon,
-netconf-csit-3node-clustering-only-carbon,
 netconf-csit-3node-periodic-clustering-scale-all-carbon,
-netconf-csit-3node-periodic-clustering-scale-only-carbon,
 netide-csit-1node-basic-all-carbon,
-netide-csit-1node-basic-only-carbon,
-netvirt-csit-1node-openstack-newton-nodl-v2-extensions-sfc-carbon,
-netvirt-csit-1node-openstack-newton-nodl-v2-upstream-learn-carbon,
-netvirt-csit-1node-openstack-newton-nodl-v2-upstream-stateful-carbon,
-netvirt-csit-1node-openstack-newton-nodl-v2-upstream-stateful-snat-conntrack-carbon,
-netvirt-csit-1node-openstack-newton-nodl-v2-upstream-transparent-carbon,
-netvirt-csit-1node-openstack-newton-upstream-learn-carbon,
-netvirt-csit-1node-openstack-newton-upstream-stateful-carbon,
-netvirt-csit-1node-openstack-newton-upstream-stateful-snat-conntrack-carbon,
-netvirt-csit-1node-openstack-newton-upstream-transparent-carbon,
-netvirt-csit-1node-openstack-ocata-upstream-learn-carbon,
 netvirt-csit-1node-openstack-ocata-upstream-stateful-carbon,
 netvirt-csit-1node-openstack-ocata-upstream-stateful-snat-conntrack-carbon,
-netvirt-csit-1node-openstack-ocata-upstream-transparent-carbon,
-netvirt-csit-3node-openstack-newton-nodl-v2-upstream-learn-carbon,
-netvirt-csit-3node-openstack-newton-nodl-v2-upstream-stateful-carbon,
-netvirt-csit-3node-openstack-newton-nodl-v2-upstream-stateful-snat-conntrack-carbon,
-netvirt-csit-3node-openstack-newton-nodl-v2-upstream-transparent-carbon,
-netvirt-csit-3node-openstack-newton-upstream-learn-carbon,
-netvirt-csit-3node-openstack-newton-upstream-stateful-carbon,
-netvirt-csit-3node-openstack-newton-upstream-stateful-snat-conntrack-carbon,
-netvirt-csit-3node-openstack-newton-upstream-transparent-carbon,
-netvirt-csit-3node-openstack-ocata-upstream-learn-carbon,
+netvirt-csit-1node-openstack-pike-sfc-carbon,
+netvirt-csit-1node-openstack-pike-upstream-stateful-carbon,
+netvirt-csit-1node-openstack-pike-upstream-stateful-snat-conntrack-carbon,
 netvirt-csit-3node-openstack-ocata-upstream-stateful-carbon,
 netvirt-csit-3node-openstack-ocata-upstream-stateful-snat-conntrack-carbon,
-netvirt-csit-3node-openstack-ocata-upstream-transparent-carbon,
-netvirt-csit-hwvtep-1node-openstack-newton-nodl-v2-upstream-learn-carbon,
-netvirt-csit-hwvtep-1node-openstack-newton-nodl-v2-upstream-stateful-carbon,
-netvirt-csit-hwvtep-1node-openstack-newton-nodl-v2-upstream-transparent-carbon,
-netvirt-csit-hwvtep-1node-openstack-newton-upstream-learn-carbon,
-netvirt-csit-hwvtep-1node-openstack-newton-upstream-stateful-carbon,
-netvirt-csit-hwvtep-1node-openstack-newton-upstream-transparent-carbon,
-netvirt-csit-hwvtep-3node-openstack-newton-nodl-v2-upstream-learn-carbon,
-netvirt-csit-hwvtep-3node-openstack-newton-nodl-v2-upstream-stateful-carbon,
-netvirt-csit-hwvtep-3node-openstack-newton-nodl-v2-upstream-transparent-carbon,
-netvirt-csit-hwvtep-3node-openstack-newton-upstream-learn-carbon,
-netvirt-csit-hwvtep-3node-openstack-newton-upstream-stateful-carbon,
-netvirt-csit-hwvtep-3node-openstack-newton-upstream-transparent-carbon,
+netvirt-csit-3node-openstack-pike-upstream-stateful-carbon,
+netvirt-csit-3node-openstack-pike-upstream-stateful-snat-conntrack-carbon,
+netvirt-csit-hwvtep-1node-openstack-ocata-upstream-stateful-carbon,
+netvirt-csit-hwvtep-1node-openstack-pike-upstream-stateful-carbon,
+netvirt-csit-hwvtep-3node-openstack-ocata-upstream-stateful-carbon,
+netvirt-csit-hwvtep-3node-openstack-pike-upstream-stateful-carbon,
 nic-csit-1node-basic-all-carbon,
-nic-csit-1node-basic-only-carbon,
 ocpplugin-csit-1node-get-all-carbon,
-ocpplugin-csit-1node-get-only-carbon,
 ocpplugin-csit-1node-scalability-all-carbon,
-ocpplugin-csit-1node-scalability-only-carbon,
 of-config-csit-1node-basic-all-carbon,
-of-config-csit-1node-basic-only-carbon,
 openflowplugin-csit-1node-flow-services-all-carbon,
 openflowplugin-csit-1node-flow-services-frs-only-carbon,
-openflowplugin-csit-1node-flow-services-only-carbon,
 openflowplugin-csit-1node-periodic-bulkomatic-perf-daily-only-carbon,
 openflowplugin-csit-1node-periodic-cbench-daily-only-carbon,
 openflowplugin-csit-1node-periodic-link-scalability-daily-only-carbon,
@@ -143,51 +77,30 @@ openflowplugin-csit-3node-periodic-bulkomatic-clustering-daily-only-carbon,
 openflowplugin-csit-3node-periodic-bulkomatic-clustering-perf-daily-only-carbon,
 openflowplugin-csit-3node-periodic-restconf-clustering-perf-daily-only-carbon,
 ovsdb-csit-1node-upstream-southbound-all-carbon,
-ovsdb-csit-1node-upstream-southbound-only-carbon,
 ovsdb-csit-3node-upstream-clustering-only-carbon,
 packetcable-csit-1node-pcmm-all-carbon,
-packetcable-csit-1node-pcmm-only-carbon,
 sdninterfaceapp-csit-1node-basic-only-carbon,
 sfc-csit-3node-docker-full-deploy-all-carbon,
-sfc-csit-3node-docker-full-deploy-only-carbon,
 sfc-csit-3node-rest-basic-all-carbon,
-sfc-csit-3node-rest-basic-only-carbon,
 snmp-csit-1node-basic-all-carbon,
-snmp-csit-1node-basic-only-carbon,
 sxp-csit-1node-basic-all-carbon,
-sxp-csit-1node-basic-only-carbon,
 sxp-csit-1node-filtering-all-carbon,
-sxp-csit-1node-filtering-only-carbon,
 sxp-csit-1node-periodic-performance-all-carbon,
-sxp-csit-1node-periodic-performance-only-carbon,
 sxp-csit-1node-topology-all-carbon,
-sxp-csit-1node-topology-only-carbon,
 sxp-csit-3node-periodic-clustering-all-carbon,
-sxp-csit-3node-periodic-clustering-only-carbon,
 sxp-csit-3node-periodic-routing-all-carbon,
-sxp-csit-3node-periodic-routing-only-carbon,
 topoprocessing-csit-1node-topology-operations-all-carbon,
-topoprocessing-csit-1node-topology-operations-only-carbon,
 tsdr-csit-1node-cassandra-datastore-only-carbon,
 tsdr-csit-1node-elasticsearch-datastore-only-carbon,
 tsdr-csit-1node-hbase-datastore-all-carbon,
-tsdr-csit-1node-hbase-datastore-only-carbon,
 tsdr-csit-1node-hsqldb-datastore-all-carbon,
-tsdr-csit-1node-hsqldb-datastore-only-carbon,
 unimgr-csit-1node-basic-all-carbon,
-unimgr-csit-1node-basic-only-carbon,
 unimgr-csit-1node-legato-all-carbon,
-unimgr-csit-1node-legato-only-carbon,
 usc-csit-1node-channel-all-carbon,
-usc-csit-1node-channel-only-carbon,
 usc-csit-1node-tcp-all-carbon,
-usc-csit-1node-tcp-only-carbon,
 usecplugin-csit-1node-basic-all-carbon,
-usecplugin-csit-1node-basic-only-carbon,
 vtn-csit-1node-coordinator-only-carbon,
 vtn-csit-1node-manager-all-carbon,
-vtn-csit-1node-manager-only-carbon,
 vtn-csit-1node-openstack-newton-neutron-carbon,
 vtn-csit-3node-manager-all-carbon,
-vtn-csit-3node-manager-only-carbon,
 yangtools-csit-1node-periodic-system-only-carbon,
index e0daa41f41490d6bb59c9ec9b5df39780d43c051..44d94f614bd330905a39e218b54ed01717702971 100644 (file)
 aaa-csit-1node-authn-all-nitrogen,
-aaa-csit-1node-authn-only-nitrogen,
 aaa-csit-1node-idmlite-all-nitrogen,
-aaa-csit-1node-idmlite-only-nitrogen,
 aaa-csit-1node-keystone-all-nitrogen,
-aaa-csit-1node-keystone-only-nitrogen,
 aaa-csit-1node-tls-only-nitrogen,
 alto-csit-1node-setup-all-nitrogen,
-alto-csit-1node-setup-only-nitrogen,
 bgpcep-csit-1node-periodic-bgp-ingest-all-nitrogen,
 bgpcep-csit-1node-periodic-bgp-ingest-mixed-all-nitrogen,
-bgpcep-csit-1node-periodic-bgp-ingest-mixed-only-nitrogen,
-bgpcep-csit-1node-periodic-bgp-ingest-only-nitrogen,
 bgpcep-csit-1node-periodic-throughpcep-all-nitrogen,
-bgpcep-csit-1node-periodic-throughpcep-only-nitrogen,
 bgpcep-csit-1node-userfeatures-all-nitrogen,
-bgpcep-csit-1node-userfeatures-only-nitrogen,
 bgpcep-csit-3node-periodic-bgpclustering-all-nitrogen,
 bgpcep-csit-3node-periodic-bgpclustering-ha-only-nitrogen,
-bgpcep-csit-3node-periodic-bgpclustering-only-nitrogen,
 bier-csit-1node-basic-all-nitrogen,
-bier-csit-1node-basic-only-nitrogen,
 controller-csit-1node-akka1-all-nitrogen,
-controller-csit-1node-akka1-only-nitrogen,
 controller-csit-1node-periodic-benchmark-all-nitrogen,
-controller-csit-1node-periodic-benchmark-only-nitrogen,
 controller-csit-1node-rest-cars-perf-all-nitrogen,
-controller-csit-1node-rest-cars-perf-only-nitrogen,
 controller-csit-3node-clustering-all-nitrogen,
-controller-csit-3node-clustering-only-nitrogen,
 controller-csit-3node-periodic-benchmark-all-nitrogen,
-controller-csit-3node-periodic-benchmark-only-nitrogen,
 controller-csit-3node-rest-clust-cars-perf-only-nitrogen,
 daexim-csit-1node-basic-only-nitrogen,
 distribution-csit-1node-userfeatures-all-nitrogen,
-distribution-csit-1node-userfeatures-only-nitrogen,
 dluxapps-csit-1node-yangman-all-nitrogen,
-dluxapps-csit-1node-yangman-only-nitrogen,
 genius-csit-1node-upstream-all-nitrogen,
-genius-csit-1node-upstream-only-nitrogen,
 genius-csit-3node-upstream-all-nitrogen,
-genius-csit-3node-upstream-only-nitrogen,
 groupbasedpolicy-csit-1node-3-node-all-nitrogen,
-groupbasedpolicy-csit-1node-3-node-only-nitrogen,
 groupbasedpolicy-csit-1node-6node-all-nitrogen,
-groupbasedpolicy-csit-1node-6node-only-nitrogen,
 groupbasedpolicy-csit-1node-openstack-newton-openstack-nitrogen,
 groupbasedpolicy-csit-1node-sxp-only-nitrogen,
 groupbasedpolicy-csit-3node-clustering-all-nitrogen,
-groupbasedpolicy-csit-3node-clustering-only-nitrogen,
 l2switch-csit-1node-periodic-host-scalability-daily-only-nitrogen,
 l2switch-csit-1node-scalability-all-nitrogen,
-l2switch-csit-1node-scalability-only-nitrogen,
 l2switch-csit-1node-switch-all-nitrogen,
-l2switch-csit-1node-switch-only-nitrogen,
 lispflowmapping-csit-1node-msmr-all-nitrogen,
-lispflowmapping-csit-1node-msmr-only-nitrogen,
 lispflowmapping-csit-1node-performance-only-nitrogen,
 lispflowmapping-csit-3node-msmr-all-nitrogen,
-lispflowmapping-csit-3node-msmr-only-nitrogen,
 mdsal-csit-1node-periodic-bindingv1-only-nitrogen,
 messaging4transport-csit-1node-basic-all-nitrogen,
-messaging4transport-csit-1node-basic-only-nitrogen,
 natapp-csit-1node-basic-all-nitrogen,
-natapp-csit-1node-basic-only-nitrogen,
 nemo-csit-1node-engine-all-nitrogen,
-nemo-csit-1node-engine-only-nitrogen,
 netconf-csit-1node-callhome-only-nitrogen,
 netconf-csit-1node-periodic-scale-all-nitrogen,
-netconf-csit-1node-periodic-scale-only-nitrogen,
 netconf-csit-1node-userfeatures-all-nitrogen,
-netconf-csit-1node-userfeatures-only-nitrogen,
 netconf-csit-3node-cluster-stress-all-nitrogen,
-netconf-csit-3node-cluster-stress-only-nitrogen,
 netconf-csit-3node-clustering-all-nitrogen,
-netconf-csit-3node-clustering-only-nitrogen,
 netconf-csit-3node-periodic-clustering-scale-all-nitrogen,
-netconf-csit-3node-periodic-clustering-scale-only-nitrogen,
-netvirt-csit-1node-openstack-newton-nodl-v2-extensions-sfc-nitrogen,
-netvirt-csit-1node-openstack-newton-nodl-v2-upstream-learn-nitrogen,
-netvirt-csit-1node-openstack-newton-nodl-v2-upstream-stateful-nitrogen,
-netvirt-csit-1node-openstack-newton-nodl-v2-upstream-stateful-snat-conntrack-nitrogen,
-netvirt-csit-1node-openstack-newton-nodl-v2-upstream-transparent-nitrogen,
-netvirt-csit-1node-openstack-newton-upstream-learn-nitrogen,
-netvirt-csit-1node-openstack-newton-upstream-stateful-nitrogen,
-netvirt-csit-1node-openstack-newton-upstream-stateful-snat-conntrack-nitrogen,
-netvirt-csit-1node-openstack-newton-upstream-transparent-nitrogen,
-netvirt-csit-1node-openstack-ocata-upstream-learn-nitrogen,
 netvirt-csit-1node-openstack-ocata-upstream-stateful-nitrogen,
 netvirt-csit-1node-openstack-ocata-upstream-stateful-snat-conntrack-nitrogen,
-netvirt-csit-1node-openstack-ocata-upstream-transparent-nitrogen,
-netvirt-csit-3node-openstack-newton-nodl-v2-upstream-learn-nitrogen,
-netvirt-csit-3node-openstack-newton-nodl-v2-upstream-stateful-nitrogen,
-netvirt-csit-3node-openstack-newton-nodl-v2-upstream-stateful-snat-conntrack-nitrogen,
-netvirt-csit-3node-openstack-newton-nodl-v2-upstream-transparent-nitrogen,
-netvirt-csit-3node-openstack-newton-upstream-learn-nitrogen,
-netvirt-csit-3node-openstack-newton-upstream-stateful-nitrogen,
-netvirt-csit-3node-openstack-newton-upstream-stateful-snat-conntrack-nitrogen,
-netvirt-csit-3node-openstack-newton-upstream-transparent-nitrogen,
-netvirt-csit-3node-openstack-ocata-upstream-learn-nitrogen,
+netvirt-csit-1node-openstack-pike-sfc-nitrogen,
+netvirt-csit-1node-openstack-pike-upstream-stateful-nitrogen,
+netvirt-csit-1node-openstack-pike-upstream-stateful-snat-conntrack-nitrogen,
+netvirt-csit-1node-openstack-queens-upstream-stateful-nitrogen,
+netvirt-csit-1node-openstack-queens-upstream-stateful-snat-conntrack-nitrogen,
 netvirt-csit-3node-openstack-ocata-upstream-stateful-nitrogen,
 netvirt-csit-3node-openstack-ocata-upstream-stateful-snat-conntrack-nitrogen,
-netvirt-csit-3node-openstack-ocata-upstream-transparent-nitrogen,
-netvirt-csit-hwvtep-1node-openstack-newton-nodl-v2-upstream-learn-nitrogen,
-netvirt-csit-hwvtep-1node-openstack-newton-nodl-v2-upstream-stateful-nitrogen,
-netvirt-csit-hwvtep-1node-openstack-newton-nodl-v2-upstream-transparent-nitrogen,
-netvirt-csit-hwvtep-1node-openstack-newton-upstream-learn-nitrogen,
-netvirt-csit-hwvtep-1node-openstack-newton-upstream-stateful-nitrogen,
-netvirt-csit-hwvtep-1node-openstack-newton-upstream-transparent-nitrogen,
-netvirt-csit-hwvtep-3node-openstack-newton-nodl-v2-upstream-learn-nitrogen,
-netvirt-csit-hwvtep-3node-openstack-newton-nodl-v2-upstream-stateful-nitrogen,
-netvirt-csit-hwvtep-3node-openstack-newton-nodl-v2-upstream-transparent-nitrogen,
-netvirt-csit-hwvtep-3node-openstack-newton-upstream-learn-nitrogen,
-netvirt-csit-hwvtep-3node-openstack-newton-upstream-stateful-nitrogen,
-netvirt-csit-hwvtep-3node-openstack-newton-upstream-transparent-nitrogen,
+netvirt-csit-3node-openstack-pike-upstream-stateful-nitrogen,
+netvirt-csit-3node-openstack-pike-upstream-stateful-snat-conntrack-nitrogen,
+netvirt-csit-3node-openstack-queens-upstream-stateful-nitrogen,
+netvirt-csit-3node-openstack-queens-upstream-stateful-snat-conntrack-nitrogen,
+netvirt-csit-hwvtep-1node-openstack-ocata-upstream-stateful-nitrogen,
+netvirt-csit-hwvtep-1node-openstack-pike-upstream-stateful-nitrogen,
+netvirt-csit-hwvtep-1node-openstack-queens-upstream-stateful-nitrogen,
+netvirt-csit-hwvtep-3node-openstack-ocata-upstream-stateful-nitrogen,
+netvirt-csit-hwvtep-3node-openstack-pike-upstream-stateful-nitrogen,
+netvirt-csit-hwvtep-3node-openstack-queens-upstream-stateful-nitrogen,
 nic-csit-1node-basic-all-nitrogen,
-nic-csit-1node-basic-only-nitrogen,
 ocpplugin-csit-1node-get-all-nitrogen,
-ocpplugin-csit-1node-get-only-nitrogen,
 ocpplugin-csit-1node-scalability-all-nitrogen,
-ocpplugin-csit-1node-scalability-only-nitrogen,
 of-config-csit-1node-basic-all-nitrogen,
-of-config-csit-1node-basic-only-nitrogen,
 openflowplugin-csit-1node-flow-services-all-nitrogen,
 openflowplugin-csit-1node-flow-services-frs-only-nitrogen,
-openflowplugin-csit-1node-flow-services-only-nitrogen,
 openflowplugin-csit-1node-periodic-bulkomatic-perf-daily-only-nitrogen,
 openflowplugin-csit-1node-periodic-cbench-daily-only-nitrogen,
 openflowplugin-csit-1node-periodic-link-scalability-daily-only-nitrogen,
@@ -137,45 +80,26 @@ openflowplugin-csit-3node-periodic-bulkomatic-clustering-daily-only-nitrogen,
 openflowplugin-csit-3node-periodic-bulkomatic-clustering-perf-daily-only-nitrogen,
 openflowplugin-csit-3node-periodic-restconf-clustering-perf-daily-only-nitrogen,
 ovsdb-csit-1node-upstream-southbound-all-nitrogen,
-ovsdb-csit-1node-upstream-southbound-only-nitrogen,
 ovsdb-csit-3node-upstream-clustering-only-nitrogen,
 packetcable-csit-1node-pcmm-all-nitrogen,
-packetcable-csit-1node-pcmm-only-nitrogen,
 sdninterfaceapp-csit-1node-basic-only-nitrogen,
 sfc-csit-3node-docker-full-deploy-all-nitrogen,
-sfc-csit-3node-docker-full-deploy-only-nitrogen,
 sfc-csit-3node-rest-basic-all-nitrogen,
-sfc-csit-3node-rest-basic-only-nitrogen,
 snmp-csit-1node-basic-all-nitrogen,
-snmp-csit-1node-basic-only-nitrogen,
 sxp-csit-1node-basic-all-nitrogen,
-sxp-csit-1node-basic-only-nitrogen,
 sxp-csit-1node-filtering-all-nitrogen,
-sxp-csit-1node-filtering-only-nitrogen,
 sxp-csit-1node-periodic-performance-all-nitrogen,
-sxp-csit-1node-periodic-performance-only-nitrogen,
 sxp-csit-1node-topology-all-nitrogen,
-sxp-csit-1node-topology-only-nitrogen,
 sxp-csit-3node-periodic-clustering-all-nitrogen,
-sxp-csit-3node-periodic-clustering-only-nitrogen,
 sxp-csit-3node-periodic-routing-all-nitrogen,
-sxp-csit-3node-periodic-routing-only-nitrogen,
 topoprocessing-csit-1node-topology-operations-all-nitrogen,
-topoprocessing-csit-1node-topology-operations-only-nitrogen,
 unimgr-csit-1node-basic-all-nitrogen,
-unimgr-csit-1node-basic-only-nitrogen,
 unimgr-csit-1node-legato-all-nitrogen,
-unimgr-csit-1node-legato-only-nitrogen,
 usc-csit-1node-channel-all-nitrogen,
-usc-csit-1node-channel-only-nitrogen,
 usc-csit-1node-tcp-all-nitrogen,
-usc-csit-1node-tcp-only-nitrogen,
 usecplugin-csit-1node-basic-all-nitrogen,
-usecplugin-csit-1node-basic-only-nitrogen,
 vtn-csit-1node-coordinator-only-nitrogen,
 vtn-csit-1node-manager-all-nitrogen,
-vtn-csit-1node-manager-only-nitrogen,
 vtn-csit-1node-openstack-newton-neutron-nitrogen,
 vtn-csit-3node-manager-all-nitrogen,
-vtn-csit-3node-manager-only-nitrogen,
 yangtools-csit-1node-periodic-system-only-nitrogen,
index 393f32d0561d0b3b8a1f943ad61b4fb27fa8163d..46dcca214eaacbb9c49b44046325ad790d117d3c 100644 (file)
 aaa-csit-1node-authn-all-oxygen,
-aaa-csit-1node-authn-only-oxygen,
 aaa-csit-1node-idmlite-all-oxygen,
-aaa-csit-1node-idmlite-only-oxygen,
 aaa-csit-1node-keystone-all-oxygen,
-aaa-csit-1node-keystone-only-oxygen,
 aaa-csit-1node-tls-only-oxygen,
 alto-csit-1node-setup-all-oxygen,
-alto-csit-1node-setup-only-oxygen,
 bgpcep-csit-1node-periodic-bgp-ingest-all-oxygen,
-bgpcep-csit-1node-periodic-bgp-ingest-only-oxygen,
 bgpcep-csit-1node-periodic-throughpcep-all-oxygen,
-bgpcep-csit-1node-periodic-throughpcep-only-oxygen,
 bgpcep-csit-1node-userfeatures-all-oxygen,
-bgpcep-csit-1node-userfeatures-only-oxygen,
 bgpcep-csit-3node-periodic-bgpclustering-all-oxygen,
 bgpcep-csit-3node-periodic-bgpclustering-ha-only-oxygen,
-bgpcep-csit-3node-periodic-bgpclustering-only-oxygen,
 bier-csit-1node-basic-all-oxygen,
-bier-csit-1node-basic-only-oxygen,
 controller-csit-1node-akka1-all-oxygen,
-controller-csit-1node-akka1-only-oxygen,
 controller-csit-1node-periodic-benchmark-all-oxygen,
-controller-csit-1node-periodic-benchmark-only-oxygen,
 controller-csit-1node-rest-cars-perf-all-oxygen,
-controller-csit-1node-rest-cars-perf-only-oxygen,
 controller-csit-3node-clustering-all-oxygen,
-controller-csit-3node-clustering-only-oxygen,
 controller-csit-3node-periodic-benchmark-all-oxygen,
-controller-csit-3node-periodic-benchmark-only-oxygen,
 controller-csit-3node-rest-clust-cars-perf-only-oxygen,
 daexim-csit-1node-basic-only-oxygen,
 distribution-csit-1node-userfeatures-all-oxygen,
-distribution-csit-1node-userfeatures-only-oxygen,
 dluxapps-csit-1node-yangman-all-oxygen,
-dluxapps-csit-1node-yangman-only-oxygen,
 genius-csit-1node-upstream-all-oxygen,
-genius-csit-1node-upstream-only-oxygen,
 genius-csit-3node-upstream-all-oxygen,
-genius-csit-3node-upstream-only-oxygen,
 groupbasedpolicy-csit-1node-3-node-all-oxygen,
-groupbasedpolicy-csit-1node-3-node-only-oxygen,
 groupbasedpolicy-csit-1node-6node-all-oxygen,
-groupbasedpolicy-csit-1node-6node-only-oxygen,
 groupbasedpolicy-csit-1node-openstack-newton-openstack-oxygen,
 groupbasedpolicy-csit-1node-sxp-only-oxygen,
 groupbasedpolicy-csit-3node-clustering-all-oxygen,
-groupbasedpolicy-csit-3node-clustering-only-oxygen,
 l2switch-csit-1node-periodic-host-scalability-daily-only-oxygen,
 l2switch-csit-1node-scalability-all-oxygen,
-l2switch-csit-1node-scalability-only-oxygen,
 l2switch-csit-1node-switch-all-oxygen,
-l2switch-csit-1node-switch-only-oxygen,
 lispflowmapping-csit-1node-msmr-all-oxygen,
-lispflowmapping-csit-1node-msmr-only-oxygen,
 lispflowmapping-csit-1node-performance-only-oxygen,
 lispflowmapping-csit-3node-msmr-all-oxygen,
-lispflowmapping-csit-3node-msmr-only-oxygen,
 mdsal-csit-1node-periodic-bindingv1-only-oxygen,
 messaging4transport-csit-1node-basic-all-oxygen,
-messaging4transport-csit-1node-basic-only-oxygen,
 natapp-csit-1node-basic-all-oxygen,
-natapp-csit-1node-basic-only-oxygen,
 nemo-csit-1node-engine-all-oxygen,
-nemo-csit-1node-engine-only-oxygen,
 netconf-csit-1node-callhome-only-oxygen,
 netconf-csit-1node-periodic-scale-all-oxygen,
-netconf-csit-1node-periodic-scale-only-oxygen,
 netconf-csit-1node-userfeatures-all-oxygen,
-netconf-csit-1node-userfeatures-only-oxygen,
 netconf-csit-3node-cluster-stress-all-oxygen,
-netconf-csit-3node-cluster-stress-only-oxygen,
 netconf-csit-3node-clustering-all-oxygen,
-netconf-csit-3node-clustering-only-oxygen,
 netconf-csit-3node-periodic-clustering-scale-all-oxygen,
-netconf-csit-3node-periodic-clustering-scale-only-oxygen,
-netvirt-csit-1node-openstack-newton-nodl-v2-upstream-learn-oxygen,
-netvirt-csit-1node-openstack-newton-nodl-v2-upstream-stateful-oxygen,
-netvirt-csit-1node-openstack-newton-nodl-v2-upstream-stateful-snat-conntrack-oxygen,
-netvirt-csit-1node-openstack-newton-nodl-v2-upstream-transparent-oxygen,
-netvirt-csit-1node-openstack-newton-upstream-learn-oxygen,
-netvirt-csit-1node-openstack-newton-upstream-stateful-oxygen,
-netvirt-csit-1node-openstack-newton-upstream-stateful-snat-conntrack-oxygen,
-netvirt-csit-1node-openstack-newton-upstream-transparent-oxygen,
-netvirt-csit-1node-openstack-ocata-upstream-learn-oxygen,
 netvirt-csit-1node-openstack-ocata-upstream-stateful-oxygen,
 netvirt-csit-1node-openstack-ocata-upstream-stateful-snat-conntrack-oxygen,
-netvirt-csit-1node-openstack-ocata-upstream-transparent-oxygen,
-netvirt-csit-3node-openstack-newton-nodl-v2-upstream-learn-oxygen,
-netvirt-csit-3node-openstack-newton-nodl-v2-upstream-stateful-oxygen,
-netvirt-csit-3node-openstack-newton-nodl-v2-upstream-stateful-snat-conntrack-oxygen,
-netvirt-csit-3node-openstack-newton-nodl-v2-upstream-transparent-oxygen,
-netvirt-csit-3node-openstack-newton-upstream-learn-oxygen,
-netvirt-csit-3node-openstack-newton-upstream-stateful-oxygen,
-netvirt-csit-3node-openstack-newton-upstream-stateful-snat-conntrack-oxygen,
-netvirt-csit-3node-openstack-newton-upstream-transparent-oxygen,
-netvirt-csit-3node-openstack-ocata-upstream-learn-oxygen,
+netvirt-csit-1node-openstack-pike-sfc-oxygen,
+netvirt-csit-1node-openstack-pike-upstream-stateful-oxygen,
+netvirt-csit-1node-openstack-pike-upstream-stateful-snat-conntrack-oxygen,
+netvirt-csit-1node-openstack-queens-upstream-stateful-oxygen,
+netvirt-csit-1node-openstack-queens-upstream-stateful-snat-conntrack-oxygen,
 netvirt-csit-3node-openstack-ocata-upstream-stateful-oxygen,
 netvirt-csit-3node-openstack-ocata-upstream-stateful-snat-conntrack-oxygen,
-netvirt-csit-3node-openstack-ocata-upstream-transparent-oxygen,
-netvirt-csit-hwvtep-1node-openstack-newton-nodl-v2-upstream-learn-oxygen,
-netvirt-csit-hwvtep-1node-openstack-newton-nodl-v2-upstream-stateful-oxygen,
-netvirt-csit-hwvtep-1node-openstack-newton-nodl-v2-upstream-transparent-oxygen,
-netvirt-csit-hwvtep-1node-openstack-newton-upstream-learn-oxygen,
-netvirt-csit-hwvtep-1node-openstack-newton-upstream-stateful-oxygen,
-netvirt-csit-hwvtep-1node-openstack-newton-upstream-transparent-oxygen,
-netvirt-csit-hwvtep-3node-openstack-newton-nodl-v2-upstream-learn-oxygen,
-netvirt-csit-hwvtep-3node-openstack-newton-nodl-v2-upstream-stateful-oxygen,
-netvirt-csit-hwvtep-3node-openstack-newton-nodl-v2-upstream-transparent-oxygen,
-netvirt-csit-hwvtep-3node-openstack-newton-upstream-learn-oxygen,
-netvirt-csit-hwvtep-3node-openstack-newton-upstream-stateful-oxygen,
-netvirt-csit-hwvtep-3node-openstack-newton-upstream-transparent-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-oxygen,
+netvirt-csit-3node-openstack-queens-upstream-stateful-snat-conntrack-oxygen,
+netvirt-csit-hwvtep-1node-openstack-ocata-upstream-stateful-oxygen,
+netvirt-csit-hwvtep-1node-openstack-pike-upstream-stateful-oxygen,
+netvirt-csit-hwvtep-1node-openstack-queens-upstream-stateful-oxygen,
+netvirt-csit-hwvtep-3node-openstack-ocata-upstream-stateful-oxygen,
+netvirt-csit-hwvtep-3node-openstack-pike-upstream-stateful-oxygen,
+netvirt-csit-hwvtep-3node-openstack-queens-upstream-stateful-oxygen,
 nic-csit-1node-basic-all-oxygen,
-nic-csit-1node-basic-only-oxygen,
 ocpplugin-csit-1node-get-all-oxygen,
-ocpplugin-csit-1node-get-only-oxygen,
 ocpplugin-csit-1node-scalability-all-oxygen,
-ocpplugin-csit-1node-scalability-only-oxygen,
 of-config-csit-1node-basic-all-oxygen,
-of-config-csit-1node-basic-only-oxygen,
 openflowplugin-csit-1node-flow-services-all-oxygen,
 openflowplugin-csit-1node-flow-services-frs-only-oxygen,
-openflowplugin-csit-1node-flow-services-only-oxygen,
 openflowplugin-csit-1node-periodic-bulkomatic-perf-daily-only-oxygen,
 openflowplugin-csit-1node-periodic-cbench-daily-only-oxygen,
 openflowplugin-csit-1node-periodic-link-scalability-daily-only-oxygen,
@@ -134,45 +79,26 @@ openflowplugin-csit-3node-periodic-bulkomatic-clustering-daily-only-oxygen,
 openflowplugin-csit-3node-periodic-bulkomatic-clustering-perf-daily-only-oxygen,
 openflowplugin-csit-3node-periodic-restconf-clustering-perf-daily-only-oxygen,
 ovsdb-csit-1node-upstream-southbound-all-oxygen,
-ovsdb-csit-1node-upstream-southbound-only-oxygen,
 ovsdb-csit-3node-upstream-clustering-only-oxygen,
 packetcable-csit-1node-pcmm-all-oxygen,
-packetcable-csit-1node-pcmm-only-oxygen,
 sdninterfaceapp-csit-1node-basic-only-oxygen,
 sfc-csit-3node-docker-full-deploy-all-oxygen,
-sfc-csit-3node-docker-full-deploy-only-oxygen,
 sfc-csit-3node-rest-basic-all-oxygen,
-sfc-csit-3node-rest-basic-only-oxygen,
 snmp-csit-1node-basic-all-oxygen,
-snmp-csit-1node-basic-only-oxygen,
 sxp-csit-1node-basic-all-oxygen,
-sxp-csit-1node-basic-only-oxygen,
 sxp-csit-1node-filtering-all-oxygen,
-sxp-csit-1node-filtering-only-oxygen,
 sxp-csit-1node-periodic-performance-all-oxygen,
-sxp-csit-1node-periodic-performance-only-oxygen,
 sxp-csit-1node-topology-all-oxygen,
-sxp-csit-1node-topology-only-oxygen,
 sxp-csit-3node-periodic-clustering-all-oxygen,
-sxp-csit-3node-periodic-clustering-only-oxygen,
 sxp-csit-3node-periodic-routing-all-oxygen,
-sxp-csit-3node-periodic-routing-only-oxygen,
 topoprocessing-csit-1node-topology-operations-all-oxygen,
-topoprocessing-csit-1node-topology-operations-only-oxygen,
 unimgr-csit-1node-basic-all-oxygen,
-unimgr-csit-1node-basic-only-oxygen,
 unimgr-csit-1node-legato-all-oxygen,
-unimgr-csit-1node-legato-only-oxygen,
 usc-csit-1node-channel-all-oxygen,
-usc-csit-1node-channel-only-oxygen,
 usc-csit-1node-tcp-all-oxygen,
-usc-csit-1node-tcp-only-oxygen,
 usecplugin-csit-1node-basic-all-oxygen,
-usecplugin-csit-1node-basic-only-oxygen,
 vtn-csit-1node-coordinator-only-oxygen,
 vtn-csit-1node-manager-all-oxygen,
-vtn-csit-1node-manager-only-oxygen,
 vtn-csit-1node-openstack-newton-neutron-oxygen,
 vtn-csit-3node-manager-all-oxygen,
-vtn-csit-3node-manager-only-oxygen,
 yangtools-csit-1node-periodic-system-only-oxygen,
index c71eecb8ea2a7777ca2da6e0797383785c73a293..f6c83c2ad8e78a882e4d003784698a80ffe84708 100644 (file)
@@ -61,11 +61,42 @@ export KARAF_REDIRECT="${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf_console.log"
 echo "Starting controller..."
 ${WORKSPACE}/${BUNDLEFOLDER}/bin/start
 
-echo "Sleeping 30 seconds to make sure Karaf ssh has started..."
-sleep 30
+echo "Waiting for controller to come up..."
+# Silence the chatty output during the loop.
+set +x
+COUNT=0
+# Bug 9044 workaround: use bin/client instead of Linux ssh command.
+CLIENT="${WORKSPACE}/${BUNDLEFOLDER}/bin/client"
+while true; do
+    # Is there a way to both print output and store RC without manipulating the e flag?
+    set +e
+    ${CLIENT} "feature:list -i"
+    RC="$?"
+    set -e
+    if [[ "${RC}" == "0" ]]; then
+        echo Karaf is UP
+        break
+    elif (( "${COUNT}" > 600 )); then
+        echo Timeout Karaf DOWN
+        echo "Dumping Karaf log..."
+        cat "${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf.log"
+        echo "Listing all open ports on controller system"
+        netstat -pnatu
+        exit 1
+    else
+        echo "${RC}"
+        COUNT=$(( ${COUNT} + 1 ))
+        sleep 1
+        if [[ $(($COUNT % 5)) == 0 ]]; then
+            echo already waited ${COUNT} seconds...
+        fi
+    fi
+done
+# Un-silence the chatty output.
+set -x
 
 echo "Installing all features..."
-sshpass -p karaf ${WORKSPACE}/${BUNDLEFOLDER}/bin/client -u karaf "feature:install ${ACTUALFEATURES}" || echo $? > "${WORKSPACE}/error.txt"
+$CLIENT feature:install ${ACTUALFEATURES} || echo $? > "${WORKSPACE}/error.txt"
 
 echo "killing karaf process..."
 ps axf | grep karaf | grep -v grep | awk '{print "kill -9 " $1}' | sh
@@ -76,10 +107,12 @@ echo "Fetching Karaf logs"
 cp "${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf.log" .
 cp "${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf_console.log" .
 
-echo "Exit with error"
+echo "Exit if error"
 if [ -f "${WORKSPACE}/error.txt" ]; then
     echo "Failed to deploy offline"
     exit 1
+else
+    echo "Offline test: PASS"
 fi
 
 # vim: ts=4 sw=4 sts=4 et ft=sh :
index 5deaf61e74624a2e9866bc33b2001a1e11717e34..39ef9bcc9edf92ec52d44ee34130df5647d482b2 100644 (file)
@@ -32,8 +32,6 @@
     # TODO: Add Beryllium when everything is backported there.
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index b19c8e98d004bbbb48215049e7e111cb5477f887..58bcbf711506665abb5b5f8b018a9e983cb6e3c3 100644 (file)
@@ -5,6 +5,8 @@
 # shellcheck source=${ROBOT_VENV}/bin/activate disable=SC1091
 source ${ROBOT_VENV}/bin/activate
 PYTHON="${ROBOT_VENV}/bin/python"
+SSH="ssh -t -t"
+ADMIN_PASSWORD=admin
 
 # TODO: remove this work to run changes.py if/when it's moved higher up to be visible at the Robot level
 echo "showing recent changes that made it in to the distribution used by this job"
@@ -17,86 +19,97 @@ echo "#################################################"
 echo "##         Deploy Openstack 3-node             ##"
 echo "#################################################"
 
+# Catch command errors and collect logs.
+# This ensures logs are collected when script commands fail rather than simply exiting.
+function trap_handler() {
+    local prog="$0"
+    local lastline="$1"
+    local lasterr="$2"
+    echo "${prog}: line ${lastline}: exit status of last command: ${lasterr}"
+    echo "command: ${BASH_COMMAND}"
+    collect_logs
+    exit 1
+} # trap_handler()
+
+trap 'trap_handler ${LINENO} ${$?}' ERR
+
+function create_etc_hosts() {
+    NODE_IP=$1
+    CTRL_IP=$2
+    : > ${WORKSPACE}/hosts_file
+    for iter in `seq 1 ${NUM_OPENSTACK_COMPUTE_NODES}`
+    do
+        COMPUTE_IP=OPENSTACK_COMPUTE_NODE_${iter}_IP
+        if [ "${!COMPUTE_IP}" == "${NODE_IP}" ]; then
+           CONTROL_HNAME=$(${SSH}  ${CTRL_IP}  "hostname")
+           echo "${CTRL_IP}   ${CONTROL_HNAME}" >> ${WORKSPACE}/hosts_file
+        else
+           COMPUTE_HNAME=$(${SSH}  ${!COMPUTE_IP}  "hostname")
+           echo "${!COMPUTE_IP}   ${COMPUTE_HNAME}" >> ${WORKSPACE}/hosts_file
+        fi
+    done
 
-SSH="ssh -t -t"
+    echo "Created the hosts file for ${NODE_IP}:"
+    cat ${WORKSPACE}/hosts_file
+} # create_etc_hosts()
 
-function create_control_node_local_conf {
-HOSTIP=$1
-MGRIP=$2
-ODL_OVS_MANAGERS="$3"
-#Needs to be removed
-if [ "${ODL_ML2_BRANCH}" != "stable/ocata" ]; then
-   RECLONE=no
-else
-   RECLONE=yes
-fi
-local_conf_file_name=${WORKSPACE}/local.conf_control_${HOSTIP}
-cat > ${local_conf_file_name} << EOF
+# convert commas in csv strings to spaces (ssv)
+function csv2ssv() {
+    local csv=$1
+    if [ -n "${csv}" ]; then
+        ssv=$(echo ${csv} | sed 's/,/ /g' | sed 's/\ \ */\ /g')
+    fi
+
+    echo "${ssv}"
+} # csv2ssv
+
+function create_control_node_local_conf() {
+    HOSTIP=$1
+    MGRIP=$2
+    ODL_OVS_MANAGERS="$3"
+
+    local_conf_file_name=${WORKSPACE}/local.conf_control_${HOSTIP}
+    cat > ${local_conf_file_name} << EOF
 [[local|localrc]]
 LOGFILE=stack.sh.log
 USE_SCREEN=True
 SCREEN_LOGDIR=/opt/stack/data/log
 LOG_COLOR=False
 RECLONE=${RECLONE}
-ETCD_PORT=2379
+
+disable_all_services
 EOF
 
-IFS=,
-for service_name in ${DISABLE_OS_SERVICES}
-do
-cat >> ${local_conf_file_name} << EOF
-disable_service ${service_name}
+    CORE_OS_SERVICES="dstat,g-api,g-reg,key,mysql,n-api,n-cauth,n-cond,n-crt,n-obj,n-sch,odl-compute,odl-neutron,q-dhcp,q-meta,q-svc,rabbit"
+    cat >> ${local_conf_file_name} << EOF
+enable_service $(csv2ssv "${CORE_OS_SERVICES}")
 EOF
-done
-for service_name in ${ENABLE_OS_SERVICES}
-do
-cat >> ${local_conf_file_name} << EOF
-enable_service ${service_name}
+    if [ -n "${ENABLE_OS_SERVICES}" ]; then
+        cat >> ${local_conf_file_name} << EOF
+enable_service $(csv2ssv "${ENABLE_OS_SERVICES}")
 EOF
-done
-for plugin_name in ${ENABLE_OS_PLUGINS}
-do
-if [ "$plugin_name" == "networking-odl" ]; then
-    ENABLE_PLUGIN_ARGS="${ODL_ML2_DRIVER_REPO} ${ODL_ML2_BRANCH}"
-elif [ "$plugin_name" == "kuryr-kubernetes" ]; then
-    ENABLE_PLUGIN_ARGS="${DEVSTACK_KUBERNETES_PLUGIN_REPO} master" # note: kuryr-kubernetes only exists in master at the moment
-    IS_KUBERNETES_PLUGIN_ENABLED="yes"
-elif [ "$plugin_name" == "neutron-lbaas" ]; then
-    ENABLE_PLUGIN_ARGS="${DEVSTACK_LBAAS_PLUGIN_REPO} ${OPENSTACK_BRANCH}"
-    IS_LBAAS_PLUGIN_ENABLED="yes"
-elif [ "$plugin_name" == "networking-sfc" ]; then
-    ENABLE_PLUGIN_ARGS="${DEVSTACK_NETWORKING_SFC_PLUGIN_REPO} ${OPENSTACK_BRANCH}"
-else
-    echo "Error: Invalid plugin $plugin_name, unsupported"
-    continue
-fi
-cat >> ${local_conf_file_name} << EOF
-enable_plugin ${plugin_name} ${ENABLE_PLUGIN_ARGS}
+    fi
+    if [ -n "${DISABLE_OS_SERVICES}" ]; then
+        cat >> ${local_conf_file_name} << EOF
+disable_service $(csv2ssv "${DISABLE_OS_SERVICES}")
 EOF
-done
-unset IFS
-if [ "${OPENSTACK_BRANCH}" == "master" ] || [ "${OPENSTACK_BRANCH}" == "stable/ocata" ]; then # Ocata+
-    # placement is mandatory for nova since Ocata, note that this requires computes to enable placement-client
-    # this should be moved into enabled_services for each job (but only for Ocata)
-    echo "enable_service placement-api" >> ${local_conf_file_name}
-fi
-if [ "${OPENSTACK_BRANCH}" == "stable/ocata" ]; then # Ocata
-    # running kubernetes master against devstack ocata has some issues with etcd3 and this
-    # workaround is needed for things to work
-    if [ "$IS_KUBERNETES_PLUGIN_ENABLED" == "yes" ]; then
-        echo "disable_service etcd3" >> ${local_conf_file_name}
     fi
-fi
-cat >> ${local_conf_file_name} << EOF
+
+    cat >> ${local_conf_file_name} << EOF
+
 HOST_IP=${HOSTIP}
 SERVICE_HOST=\$HOST_IP
-
-NEUTRON_CREATE_INITIAL_NETWORKS=${CREATE_INITIAL_NETWORKS}
-Q_PLUGIN=ml2
 Q_ML2_TENANT_NETWORK_TYPE=${TENANT_NETWORK_TYPE}
-Q_OVS_USE_VETH=True
+NEUTRON_CREATE_INITIAL_NETWORKS=${CREATE_INITIAL_NETWORKS}
+#Q_PLUGIN=ml2
+#ENABLE_TENANT_TUNNELS=True
+#LIBVIRT_TYPE=qemu
 
-ENABLE_TENANT_TUNNELS=True
+ODL_MODE=manual
+ODL_MGR_IP=${MGRIP}
+ODL_PORT=8080
+ODL_PORT_BINDING_CONTROLLER=${ODL_ML2_PORT_BINDING}
+ODL_OVS_MANAGERS=${ODL_OVS_MANAGERS}
 
 MYSQL_HOST=\$SERVICE_HOST
 RABBIT_HOST=\$SERVICE_HOST
@@ -104,86 +117,80 @@ GLANCE_HOSTPORT=\$SERVICE_HOST:9292
 KEYSTONE_AUTH_HOST=\$SERVICE_HOST
 KEYSTONE_SERVICE_HOST=\$SERVICE_HOST
 
-MYSQL_PASSWORD=mysql
-RABBIT_PASSWORD=rabbit
-SERVICE_TOKEN=service
-SERVICE_PASSWORD=admin
-ADMIN_PASSWORD=admin
-
-ODL_PORT=8080
-ODL_MODE=externalodl
-ODL_PORT_BINDING_CONTROLLER=${ODL_ML2_PORT_BINDING}
-
-LIBVIRT_TYPE=qemu
-ODL_MGR_IP=${MGRIP}
+ADMIN_PASSWORD=${ADMIN_PASSWORD}
+DATABASE_PASSWORD=${ADMIN_PASSWORD}
+RABBIT_PASSWORD=${ADMIN_PASSWORD}
+SERVICE_TOKEN=${ADMIN_PASSWORD}
+SERVICE_PASSWORD=${ADMIN_PASSWORD}
 
 NEUTRON_LBAAS_SERVICE_PROVIDERV2=${LBAAS_SERVICE_PROVIDER} # Only relevant if neutron-lbaas plugin is enabled
 NEUTRON_SFC_DRIVERS=${ODL_SFC_DRIVER} # Only relevant if networking-sfc plugin is enabled
 NEUTRON_FLOWCLASSIFIER_DRIVERS=${ODL_SFC_DRIVER} # Only relevant if networking-sfc plugin is enabled
+ETCD_PORT=2379
 EOF
 
-if [ "${ENABLE_NETWORKING_L2GW}" == "yes" ]; then
-cat >> ${local_conf_file_name} << EOF
+    if [ "${ODL_ML2_DRIVER_VERSION}" == "v2" ]; then
+        echo "ODL_V2DRIVER=True" >> ${local_conf_file_name}
+    fi
 
-enable_plugin networking-l2gw ${NETWORKING_L2GW_DRIVER} ${ODL_ML2_BRANCH}
-NETWORKING_L2GW_SERVICE_DRIVER=L2GW:OpenDaylight:networking_odl.l2gateway.driver.OpenDaylightL2gwDriver:default
-ENABLED_SERVICES+=,neutron,q-svc,nova,q-meta
+    IFS=,
+    for plugin_name in ${ENABLE_OS_PLUGINS}; do
+        if [ "$plugin_name" == "networking-odl" ]; then
+            ENABLE_PLUGIN_ARGS="${ODL_ML2_DRIVER_REPO} ${ODL_ML2_BRANCH}"
+        elif [ "$plugin_name" == "kuryr-kubernetes" ]; then
+            ENABLE_PLUGIN_ARGS="${DEVSTACK_KUBERNETES_PLUGIN_REPO} master" # note: kuryr-kubernetes only exists in master at the moment
+        elif [ "$plugin_name" == "neutron-lbaas" ]; then
+            ENABLE_PLUGIN_ARGS="${DEVSTACK_LBAAS_PLUGIN_REPO} ${OPENSTACK_BRANCH}"
+            IS_LBAAS_PLUGIN_ENABLED="yes"
+        elif [ "$plugin_name" == "networking-sfc" ]; then
+            ENABLE_PLUGIN_ARGS="${DEVSTACK_NETWORKING_SFC_PLUGIN_REPO} ${OPENSTACK_BRANCH}"
+        else
+            echo "Error: Invalid plugin $plugin_name, unsupported"
+            continue
+        fi
+        cat >> ${local_conf_file_name} << EOF
 
+enable_plugin ${plugin_name} ${ENABLE_PLUGIN_ARGS}
 EOF
-fi
-
-if [ "${ODL_ML2_DRIVER_VERSION}" == "v2" ]; then
-    echo "ODL_V2DRIVER=True" >> ${local_conf_file_name}
-fi
+    done
+    unset IFS
 
-echo "ODL_OVS_MANAGERS=${ODL_OVS_MANAGERS}" >> ${local_conf_file_name}
+    if [ "${ENABLE_NETWORKING_L2GW}" == "yes" ]; then
+        cat >> ${local_conf_file_name} << EOF
 
-# 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
+enable_plugin networking-l2gw ${NETWORKING_L2GW_DRIVER} ${ODL_ML2_BRANCH}
+NETWORKING_L2GW_SERVICE_DRIVER=L2GW:OpenDaylight:networking_odl.l2gateway.driver.OpenDaylightL2gwDriver:default
+EOF
+    fi
 
-# 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 [ "${ODL_ENABLE_L3_FWD}" == "yes" ]; then
+        cat >> ${local_conf_file_name} << EOF
 
-if [ "${ODL_ENABLE_L3_FWD}" == "yes" ]; then
-cat >> ${local_conf_file_name} << EOF
 PUBLIC_BRIDGE=${PUBLIC_BRIDGE}
 PUBLIC_PHYSICAL_NETWORK=${PUBLIC_PHYSICAL_NETWORK}
 ML2_VLAN_RANGES=${PUBLIC_PHYSICAL_NETWORK}
 ODL_PROVIDER_MAPPINGS=${ODL_PROVIDER_MAPPINGS}
-
-disable_service q-l3
-PUBLIC_INTERFACE=br100
 EOF
 
-SERVICE_PLUGINS="networking_odl.l3.l3_odl.OpenDaylightL3RouterPlugin"
-if [ "${ENABLE_NETWORKING_L2GW}" == "yes" ]; then
-  SERVICE_PLUGINS+=", networking_l2gw.services.l2gateway.plugin.L2GatewayPlugin"
-fi #check for ENABLE_NETWORKING_L2GW
-if [ "${IS_LBAAS_PLUGIN_ENABLED}" == "yes" ]; then
-  SERVICE_PLUGINS+=", lbaasv2"
-fi #check for ENABLE_LBAAS_PLUGIN
-fi #check for ODL_ENABLE_L3_FWD
+        if [ "${ODL_ML2_DRIVER_VERSION}" == "v2" ]; then
+           SERVICE_PLUGINS="odl-router_v2"
+        else
+           SERVICE_PLUGINS="odl-router"
+        fi
+        if [ "${ENABLE_NETWORKING_L2GW}" == "yes" ]; then
+            SERVICE_PLUGINS+=", networking_l2gw.services.l2gateway.plugin.L2GatewayPlugin"
+        fi
+        if [ "${IS_LBAAS_PLUGIN_ENABLED}" == "yes" ]; then
+            SERVICE_PLUGINS+=", lbaasv2"
+        fi
+    fi #check for ODL_ENABLE_L3_FWD
+
+    cat >> ${local_conf_file_name} << EOF
 
-cat >> ${local_conf_file_name} << EOF
 [[post-config|\$NEUTRON_CONF]]
 [DEFAULT]
 service_plugins = ${SERVICE_PLUGINS}
-EOF
 
-cat >> ${local_conf_file_name} << EOF
 [[post-config|/etc/neutron/plugins/ml2/ml2_conf.ini]]
 [agent]
 minimize_polling=True
@@ -194,6 +201,10 @@ minimize_polling=True
 physical_network_mtus = ${PUBLIC_PHYSICAL_NETWORK}:1440
 path_mtu = 1490
 
+# workaround for port-status not working due to https://bugs.opendaylight.org/show_bug.cgi?id=9092
+[ml2_odl]
+odl_features=nothing
+
 [[post-config|/etc/neutron/dhcp_agent.ini]]
 [DEFAULT]
 force_metadata = True
@@ -203,32 +214,22 @@ enable_isolated_metadata = True
 [DEFAULT]
 force_config_drive = False
 
+[scheduler]
+discover_hosts_in_cells_interval = 30
 EOF
 
-echo "local.conf Created...."
-cat ${local_conf_file_name}
-}
-
-function create_compute_node_local_conf {
-HOSTIP=$1
-SERVICEHOST=$2
-MGRIP=$3
-ODL_OVS_MANAGERS="$4"
-#Needs to be removed
-if [ "${ODL_ML2_BRANCH}" != "stable/ocata" ]; then
-   RECLONE=no
-else
-   RECLONE=yes
-fi
-if [ "${OPENSTACK_BRANCH}" == "master" ] || [ "${OPENSTACK_BRANCH}" == "stable/ocata" ]; then # Ocata+
-    # placement is mandatory for nova since Ocata, note that this requires controller to enable placement-api
-    ENABLED_SERVICES="n-cpu,placement-client"
-else
-    ENABLED_SERVICES="n-cpu"
-fi
+    echo "Control local.conf created:"
+    cat ${local_conf_file_name}
+} # create_control_node_local_conf()
 
-local_conf_file_name=${WORKSPACE}/local.conf_compute_${HOSTIP}
-cat > ${local_conf_file_name} << EOF
+function create_compute_node_local_conf() {
+    HOSTIP=$1
+    SERVICEHOST=$2
+    MGRIP=$3
+    ODL_OVS_MANAGERS="$4"
+
+    local_conf_file_name=${WORKSPACE}/local.conf_compute_${HOSTIP}
+    cat > ${local_conf_file_name} << EOF
 [[local|localrc]]
 LOGFILE=stack.sh.log
 LOG_COLOR=False
@@ -236,15 +237,39 @@ USE_SCREEN=True
 SCREEN_LOGDIR=/opt/stack/data/log
 RECLONE=${RECLONE}
 
-NOVA_VNC_ENABLED=True
-MULTI_HOST=1
-ENABLED_SERVICES=${ENABLED_SERVICES}
+disable_all_services
+EOF
+
+    CORE_OS_SERVICES="n-cpu,odl-compute"
+    cat >> ${local_conf_file_name} << EOF
+enable_service $(csv2ssv "${CORE_OS_SERVICES}")
+EOF
+    if [ -n "${ENABLE_OS_COMPUTE_SERVICES}" ]; then
+        cat >> ${local_conf_file_name} << EOF
+enable_service $(csv2ssv "${ENABLE_OS_COMPUTE_SERVICES}")
+EOF
+    fi
+    if [ -n "${DISABLE_OS_SERVICES}" ]; then
+        cat >> ${local_conf_file_name} << EOF
+disable_service $(csv2ssv "${DISABLE_OS_SERVICES}")
+EOF
+    fi
+
+    cat >> ${local_conf_file_name} << EOF
+
 HOST_IP=${HOSTIP}
 SERVICE_HOST=${SERVICEHOST}
+Q_ML2_TENANT_NETWORK_TYPE=${TENANT_NETWORK_TYPE}
+#Q_PLUGIN=ml2
+#ENABLE_TENANT_TUNNELS=True
+#LIBVIRT_TYPE=qemu
+#MULTI_HOST=1
 
-Q_PLUGIN=ml2
-ENABLE_TENANT_TUNNELS=True
-Q_ML2_TENANT_NETWORK_TYPE=vxlan
+ODL_MODE=manual
+ODL_MGR_IP=${MGRIP}
+ODL_PORT=8080
+ODL_PORT_BINDING_CONTROLLER=${ODL_ML2_PORT_BINDING}
+ODL_OVS_MANAGERS=${ODL_OVS_MANAGERS}
 
 Q_HOST=\$SERVICE_HOST
 MYSQL_HOST=\$SERVICE_HOST
@@ -253,56 +278,49 @@ GLANCE_HOSTPORT=\$SERVICE_HOST:9292
 KEYSTONE_AUTH_HOST=\$SERVICE_HOST
 KEYSTONE_SERVICE_HOST=\$SERVICE_HOST
 
-MYSQL_PASSWORD=mysql
-RABBIT_PASSWORD=rabbit
-SERVICE_TOKEN=service
-SERVICE_PASSWORD=admin
-ADMIN_PASSWORD=admin
-
-ODL_MODE=compute
-ODL_PORT_BINDING_CONTROLLER=${ODL_ML2_PORT_BINDING}
-LIBVIRT_TYPE=qemu
-ODL_MGR_IP=${MGRIP}
+ADMIN_PASSWORD=${ADMIN_PASSWORD}
+DATABASE_PASSWORD=${ADMIN_PASSWORD}
+RABBIT_PASSWORD=${ADMIN_PASSWORD}
+SERVICE_TOKEN=${ADMIN_PASSWORD}
+SERVICE_PASSWORD=${ADMIN_PASSWORD}
 EOF
 
-if [[ "${ENABLE_OS_PLUGINS}" =~ networking-odl ]]; then
-cat >> ${local_conf_file_name} << EOF
+    if [[ "${ENABLE_OS_PLUGINS}" =~ networking-odl ]]; then
+        cat >> ${local_conf_file_name} << EOF
+
 enable_plugin networking-odl ${ODL_ML2_DRIVER_REPO} ${ODL_ML2_BRANCH}
 EOF
-fi
-
-echo "ODL_OVS_MANAGERS=${ODL_OVS_MANAGERS}" >> ${local_conf_file_name}
+    fi
 
-# 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 [ "${ODL_ENABLE_L3_FWD}" == "yes" ]; then
+        cat >> ${local_conf_file_name} << EOF
 
-if [ "${ODL_ENABLE_L3_FWD}" == "yes" ]; then
-cat >> ${local_conf_file_name} << EOF
-# Uncomment lines below if odl-compute is to be used for l3 forwarding
-Q_L3_ENABLED=True
-ODL_L3=${ODL_L3}
-PUBLIC_INTERFACE=br100 # FIXME do we use br100 at all?
 PUBLIC_BRIDGE=${PUBLIC_BRIDGE}
 PUBLIC_PHYSICAL_NETWORK=${PUBLIC_PHYSICAL_NETWORK}
 ODL_PROVIDER_MAPPINGS=${ODL_PROVIDER_MAPPINGS}
+Q_L3_ENABLED=True
+ODL_L3=${ODL_L3}
 EOF
-fi
-echo "local.conf Created...."
-cat ${local_conf_file_name}
-}
+    fi
 
-function configure_haproxy_for_neutron_requests () {
-MGRIP=$1
-ODL_IPS=(${2//,/ })
+    cat >> ${local_conf_file_name} << EOF
 
-cat > ${WORKSPACE}/install_ha_proxy.sh<< EOF
+[[post-config|/etc/nova/nova.conf]]
+[api]
+auth_strategy = keystone
+[DEFAULT]
+use_neutron = True
+EOF
+
+    echo "Compute local.conf created:"
+    cat ${local_conf_file_name}
+} # create_compute_node_local_conf()
+
+function configure_haproxy_for_neutron_requests() {
+    MGRIP=$1
+    ODL_IPS=(${2//,/ })
+
+    cat > ${WORKSPACE}/install_ha_proxy.sh<< EOF
 sudo systemctl stop firewalld
 sudo yum -y install policycoreutils-python haproxy
 EOF
@@ -333,34 +351,32 @@ listen opendaylight
   balance source
 EOF
 
-odlindex=1
-for odlip in ${ODL_IPS[*]}
-do
-cat >> ${WORKSPACE}/haproxy.cfg << EOF
+    odlindex=1
+    for odlip in ${ODL_IPS[*]}; do
+        cat >> ${WORKSPACE}/haproxy.cfg << EOF
   server controller-${odlindex} ${odlip}:8080 check fall 5 inter 2000 rise 2
 EOF
-odlindex=$((odlindex+1))
-done
+        odlindex=$((odlindex+1))
+    done
 
-cat >> ${WORKSPACE}/haproxy.cfg << EOF
+    cat >> ${WORKSPACE}/haproxy.cfg << EOF
 listen opendaylight_rest
   bind ${MGRIP}:8181
   balance source
 EOF
 
-odlindex=1
-for odlip in ${ODL_IPS[*]}
-do
-cat >> ${WORKSPACE}/haproxy.cfg << EOF
+    odlindex=1
+    for odlip in ${ODL_IPS[*]}; do
+        cat >> ${WORKSPACE}/haproxy.cfg << EOF
   server controller-rest-${odlindex} ${odlip}:8181 check fall 5 inter 2000 rise 2
 EOF
-odlindex=$((odlindex+1))
-done
+        odlindex=$((odlindex+1))
+    done
 
-echo "Dump haproxy.cfg"
-cat ${WORKSPACE}/haproxy.cfg
+    echo "Dump haproxy.cfg"
+    cat ${WORKSPACE}/haproxy.cfg
 
-cat > ${WORKSPACE}/deploy_ha_proxy.sh<< EOF
+    cat > ${WORKSPACE}/deploy_ha_proxy.sh<< EOF
 sudo chown haproxy:haproxy /tmp/haproxy.cfg
 sudo sed -i 's/\\/etc\\/haproxy\\/haproxy.cfg/\\/tmp\\/haproxy.cfg/g' /usr/lib/systemd/system/haproxy.service
 sudo /usr/sbin/semanage permissive -a haproxy_t
@@ -370,26 +386,26 @@ sudo netstat -tunpl
 sudo systemctl status haproxy
 true
 EOF
-scp ${WORKSPACE}/install_ha_proxy.sh ${MGRIP}:/tmp
-${SSH} ${MGRIP} "sudo bash /tmp/install_ha_proxy.sh"
-scp ${WORKSPACE}/haproxy.cfg ${MGRIP}:/tmp
-scp ${WORKSPACE}/deploy_ha_proxy.sh ${MGRIP}:/tmp
-${SSH} ${MGRIP} "sudo bash /tmp/deploy_ha_proxy.sh"
-}
-
-function collect_logs_and_exit () {
-set +e  # We do not want to create red dot just because something went wrong while fetching logs.
-for i in `seq 1 ${NUM_ODL_SYSTEM}`
-do
-    CONTROLLERIP=ODL_SYSTEM_${i}_IP
-    echo "Lets's take the karaf thread dump again..."
-    KARAF_PID=$(ssh ${!CONTROLLERIP} "ps aux | grep ${KARAF_ARTIFACT} | grep -v grep | tr -s ' ' | cut -f2 -d' '")
-    ssh ${!CONTROLLERIP} "jstack $KARAF_PID"> ${WORKSPACE}/karaf_${i}_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
 
-cat > extra_debug.sh << EOF
+    scp ${WORKSPACE}/install_ha_proxy.sh ${MGRIP}:/tmp
+    ${SSH} ${MGRIP} "sudo bash /tmp/install_ha_proxy.sh"
+    scp ${WORKSPACE}/haproxy.cfg ${MGRIP}:/tmp
+    scp ${WORKSPACE}/deploy_ha_proxy.sh ${MGRIP}:/tmp
+    ${SSH} ${MGRIP} "sudo bash /tmp/deploy_ha_proxy.sh"
+} # configure_haproxy_for_neutron_requests()
+
+function collect_logs () {
+    set +e  # We do not want to create red dot just because something went wrong while fetching logs.
+    for i in `seq 1 ${NUM_ODL_SYSTEM}`; do
+        CONTROLLERIP=ODL_SYSTEM_${i}_IP
+        echo "Lets's take the karaf thread dump again..."
+        KARAF_PID=$(ssh ${!CONTROLLERIP} "ps aux | grep ${KARAF_ARTIFACT} | grep -v grep | tr -s ' ' | cut -f2 -d' '")
+        ssh ${!CONTROLLERIP} "jstack $KARAF_PID"> ${WORKSPACE}/karaf_${i}_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
+
+    cat > extra_debug.sh << EOF
 echo -e "/usr/sbin/lsmod | /usr/bin/grep openvswitch\n"
 /usr/sbin/lsmod | /usr/bin/grep openvswitch
 echo -e "\ngrep ct_ /var/log/openvswitch/ovs-vswitchd.log\n"
@@ -404,96 +420,120 @@ echo -e "\njournalctl > /tmp/journalctl.log\n"
 journalctl > /tmp/journalctl.log
 EOF
 
-sleep 5
-# FIXME: Do not create .tar and gzip before copying.
-for i in `seq 1 ${NUM_ODL_SYSTEM}`
-do
-    CONTROLLERIP=ODL_SYSTEM_${i}_IP
-    ${SSH} "${!CONTROLLERIP}"  "cp -r /tmp/${BUNDLEFOLDER}/data/log /tmp/odl_log"
-    ${SSH} "${!CONTROLLERIP}"  "tar -cf /tmp/odl${i}_karaf.log.tar /tmp/odl_log/*"
-    scp "${!CONTROLLERIP}:/tmp/odl${i}_karaf.log.tar" "${WORKSPACE}/odl${i}_karaf.log.tar"
-    ${SSH} "${!CONTROLLERIP}"  "tar -cf /tmp/odl${i}_zrpcd.log.tar /tmp/zrpcd.init.log"
-    scp "${!CONTROLLERIP}:/tmp/odl${i}_zrpcd.log.tar" "${WORKSPACE}/odl${i}_zrpcd.log.tar"
-    tar -xvf ${WORKSPACE}/odl${i}_karaf.log.tar -C . --strip-components 2 --transform s/karaf/odl${i}_karaf/g
-    grep "ROBOT MESSAGE\| ERROR " odl${i}_karaf.log > odl${i}_err.log
-    grep "ROBOT MESSAGE\|Exception" odl${i}_karaf.log > odl${i}_exception.log
-    grep "ROBOT MESSAGE\| ERROR \| WARN \|Exception" odl${i}_karaf.log > odl${i}_err_warn_exception.log
-    rm ${WORKSPACE}/odl${i}_karaf.log.tar
-done
+    sleep 5
+    # FIXME: Do not create .tar and gzip before copying.
+    for i in `seq 1 ${NUM_ODL_SYSTEM}`; do
+        CONTROLLERIP=ODL_SYSTEM_${i}_IP
+        ${SSH} "${!CONTROLLERIP}"  "cp -r /tmp/${BUNDLEFOLDER}/data/log /tmp/odl_log"
+        ${SSH} "${!CONTROLLERIP}"  "tar -cf /tmp/odl${i}_karaf.log.tar /tmp/odl_log/*"
+        scp "${!CONTROLLERIP}:/tmp/odl${i}_karaf.log.tar" "${WORKSPACE}/odl${i}_karaf.log.tar"
+        ${SSH} "${!CONTROLLERIP}"  "tar -cf /tmp/odl${i}_zrpcd.log.tar /tmp/zrpcd.init.log"
+        scp "${!CONTROLLERIP}:/tmp/odl${i}_zrpcd.log.tar" "${WORKSPACE}/odl${i}_zrpcd.log.tar"
+        tar -xvf ${WORKSPACE}/odl${i}_karaf.log.tar -C . --strip-components 2 --transform s/karaf/odl${i}_karaf/g
+        grep "ROBOT MESSAGE\| ERROR " odl${i}_karaf.log > odl${i}_err.log
+        grep "ROBOT MESSAGE\|Exception" odl${i}_karaf.log > odl${i}_exception.log
+        grep "ROBOT MESSAGE\| ERROR \| WARN \|Exception" odl${i}_karaf.log > odl${i}_err_warn_exception.log
+        rm ${WORKSPACE}/odl${i}_karaf.log.tar
+    done
 
-# Since this log collection work is happening before the archive build macro which also
-# creates the ${WORKSPACE}/archives dir, we have to do it here first.  The mkdir in the
-# archives build step will essentially be a noop.
-mkdir -p ${WORKSPACE}/archives
-
-# Control Node
-for i in `seq 1 ${NUM_OPENSTACK_CONTROL_NODES}`
-do
-    OS_CTRL_IP=OPENSTACK_CONTROL_NODE_${i}_IP
-    OS_CTRL_FOLDER="control_${i}"
-    mkdir -p ${OS_CTRL_FOLDER}
-    scp ${!OS_CTRL_IP}:/opt/stack/devstack/nohup.out ${OS_CTRL_FOLDER}/stack.log
-    scp ${!OS_CTRL_IP}:/var/log/openvswitch/ovs-vswitchd.log ${OS_CTRL_FOLDER}/ovs-vswitchd.log
-    scp ${!OS_CTRL_IP}:/var/log/openvswitch/ovsdb-server.log ${OS_CTRL_FOLDER}/ovsdb-server.log
-    scp ${!OS_CTRL_IP}:/etc/neutron/neutron.conf ${OS_CTRL_FOLDER}/neutron.conf
-    scp ${!OS_CTRL_IP}:/etc/nova/nova.conf ${OS_CTRL_FOLDER}/nova.conf
-    scp ${!OS_CTRL_IP}:/etc/kuryr/kuryr.conf ${OS_CTRL_FOLDER}/kuryr.conf
-    scp ${!OS_CTRL_IP}:/etc/neutron/neutron_lbaas.conf ${OS_CTRL_FOLDER}/neutron-lbaas.conf
-    scp ${!OS_CTRL_IP}:/etc/neutron/services/loadbalancer/haproxy/lbaas_agent.ini ${OS_CTRL_FOLDER}/lbaas-agent.ini
-    rsync -avhe ssh ${!OS_CTRL_IP}:/opt/stack/logs/* ${OS_CTRL_FOLDER} # rsync to prevent copying of symbolic links
-    # Use rsync with sudo to get access to the log dir.
-    rsync --rsync-path="sudo rsync" -avhe ssh ${!OS_CTRL_IP}:/var/log/audit/audit.log ${OS_CTRL_FOLDER}
-    scp extra_debug.sh ${!OS_CTRL_IP}:/tmp
-    ${SSH} ${!OS_CTRL_IP} "bash /tmp/extra_debug.sh > /tmp/extra_debug.log"
-    scp ${!OS_CTRL_IP}:/tmp/extra_debug.log ${OS_CTRL_FOLDER}/extra_debug.log
-    scp ${!OS_CTRL_IP}:/tmp/journalctl.log ${OS_CTRL_FOLDER}
-    rsync --rsync-path="sudo rsync" -avhe ssh ${!OS_CTRL_IP}:/var/log/messages ${OS_CTRL_FOLDER}
-    scp ${!OS_CTRL_IP}:/tmp/*.xz ${OS_CTRL_FOLDER}/
-    mv local.conf_control_${!OS_CTRL_IP} ${OS_CTRL_FOLDER}/local.conf
-    mv ${OS_CTRL_FOLDER} ${WORKSPACE}/archives/
-done
+    # Since this log collection work is happening before the archive build macro which also
+    # creates the ${WORKSPACE}/archives dir, we have to do it here first.  The mkdir in the
+    # archives build step will essentially be a noop.
+    mkdir -p ${WORKSPACE}/archives
+
+    # Control Node
+    for i in `seq 1 ${NUM_OPENSTACK_CONTROL_NODES}`; do
+        OS_CTRL_IP=OPENSTACK_CONTROL_NODE_${i}_IP
+        OS_CTRL_FOLDER="control_${i}"
+        mkdir -p ${OS_CTRL_FOLDER}
+        scp ${!OS_CTRL_IP}:/opt/stack/devstack/nohup.out ${OS_CTRL_FOLDER}/stack.log
+        scp ${!OS_CTRL_IP}:/var/log/openvswitch/ovs-vswitchd.log ${OS_CTRL_FOLDER}/ovs-vswitchd.log
+        scp ${!OS_CTRL_IP}:/etc/neutron/plugins/ml2/ml2_conf.ini ${OS_CTRL_FOLDER}
+        scp ${!OS_CTRL_IP}:/etc/neutron/dhcp_agent.ini ${OS_CTRL_FOLDER}
+        scp ${!OS_CTRL_IP}:/etc/neutron/neutron.conf ${OS_CTRL_FOLDER}/neutron.conf
+        scp ${!OS_CTRL_IP}:/etc/nova/nova.conf ${OS_CTRL_FOLDER}/nova.conf
+        scp ${!OS_CTRL_IP}:/etc/kuryr/kuryr.conf ${OS_CTRL_FOLDER}/kuryr.conf
+        scp ${!OS_CTRL_IP}:/etc/neutron/neutron_lbaas.conf ${OS_CTRL_FOLDER}/neutron-lbaas.conf
+        scp ${!OS_CTRL_IP}:/etc/neutron/services/loadbalancer/haproxy/lbaas_agent.ini ${OS_CTRL_FOLDER}/lbaas-agent.ini
+        rsync --rsync-path="sudo rsync" -avhe ssh ${!OS_CTRL_IP}:/usr/lib/systemd/system/haproxy.service ${OS_CTRL_FOLDER}
+        rsync -avhe ssh ${!OS_CTRL_IP}:/opt/stack/logs/* ${OS_CTRL_FOLDER} # rsync to prevent copying of symbolic links
+        rsync --rsync-path="sudo rsync" -avhe ssh ${!OS_CTRL_IP}:/etc/hosts ${OS_CTRL_FOLDER}/hosts.log
+        # Use rsync with sudo to get access to the log dir.
+        rsync --rsync-path="sudo rsync" -avhe ssh ${!OS_CTRL_IP}:/var/log/audit/audit.log ${OS_CTRL_FOLDER}
+        scp ${!OS_CTRL_IP}:/tmp/get_devstack.sh.txt ${OS_CTRL_FOLDER}
+        scp extra_debug.sh ${!OS_CTRL_IP}:/tmp
+        ${SSH} ${!OS_CTRL_IP} "bash /tmp/extra_debug.sh > /tmp/extra_debug.log"
+        scp ${!OS_CTRL_IP}:/tmp/extra_debug.log ${OS_CTRL_FOLDER}/extra_debug.log
+        scp ${!OS_CTRL_IP}:/tmp/journalctl.log ${OS_CTRL_FOLDER}
+        rsync --rsync-path="sudo rsync" -avhe ssh ${!OS_CTRL_IP}:/var/log/messages ${OS_CTRL_FOLDER}
+        scp ${!OS_CTRL_IP}:/tmp/*.xz ${OS_CTRL_FOLDER}/
+        mv local.conf_control_${!OS_CTRL_IP} ${OS_CTRL_FOLDER}/local.conf
+        mv ${OS_CTRL_FOLDER} ${WORKSPACE}/archives/
+    done
 
-# Compute Nodes
-for i in `seq 1 ${NUM_OPENSTACK_COMPUTE_NODES}`
-do
-    OSIP=OPENSTACK_COMPUTE_NODE_${i}_IP
-    OS_COMPUTE_FOLDER="compute_${i}"
-    mkdir -p ${OS_COMPUTE_FOLDER}
-    scp ${!OSIP}:/opt/stack/devstack/nohup.out ${OS_COMPUTE_FOLDER}/stack.log
-    scp ${!OSIP}:/var/log/openvswitch/ovs-vswitchd.log ${OS_COMPUTE_FOLDER}/ovs-vswitchd.log
-    scp ${!OSIP}:/var/log/openvswitch/ovsdb-server.log ${OS_COMPUTE_FOLDER}/ovsdb-server.log
-    scp ${!OSIP}:/var/log/libvirt/libvirtd.log* ${OS_COMPUTE_FOLDER}
-    scp ${!OSIP}:/var/log/libvirt/qeum/*.log ${OS_COMPUTE_FOLDER}
-    scp ${!OSIP}:/etc/nova/nova.conf ${OS_COMPUTE_FOLDER}/nova.conf
-    rsync -avhe ssh ${!OSIP}:/opt/stack/logs/* ${OS_COMPUTE_FOLDER} # rsync to prevent copying of symbolic links
-    # Use rsync with sudo to get access to the log dir. Also can't use wildcard because the dirs only have
-    # exec permissions which doesn't allow ls.
-    rsync --rsync-path="sudo rsync" -avhe ssh ${!OSIP}:/var/log/libvirt ${OS_COMPUTE_FOLDER}
-    rsync --rsync-path="sudo rsync" -avhe ssh ${!OSIP}:/var/log/audit/audit.log ${OS_COMPUTE_FOLDER}
-    scp extra_debug.sh ${!OSIP}:/tmp
-    ${SSH} ${!OSIP} "bash /tmp/extra_debug.sh > /tmp/extra_debug.log"
-    scp ${!OSIP}:/tmp/extra_debug.log ${OS_COMPUTE_FOLDER}/extra_debug.log
-    scp ${!OSIP}:/tmp/journalctl.log ${OS_COMPUTE_FOLDER}
-    rsync --rsync-path="sudo rsync" -avhe ssh ${!OSIP}:/var/log/messages ${OS_COMPUTE_FOLDER}
-    scp ${!OSIP}:/tmp/*.xz ${OS_COMPUTE_FOLDER}/
-    mv local.conf_compute_${!OSIP} ${OS_COMPUTE_FOLDER}/local.conf
-    mv ${OS_COMPUTE_FOLDER} ${WORKSPACE}/archives/
-done
+    # Compute Nodes
+    for i in `seq 1 ${NUM_OPENSTACK_COMPUTE_NODES}`; do
+        OSIP=OPENSTACK_COMPUTE_NODE_${i}_IP
+        OS_COMPUTE_FOLDER="compute_${i}"
+        mkdir -p ${OS_COMPUTE_FOLDER}
+        scp ${!OSIP}:/opt/stack/devstack/nohup.out ${OS_COMPUTE_FOLDER}/stack.log
+        scp ${!OSIP}:/var/log/openvswitch/ovs-vswitchd.log ${OS_COMPUTE_FOLDER}/ovs-vswitchd.log
+        scp ${!OSIP}:/var/log/openvswitch/ovsdb-server.log ${OS_COMPUTE_FOLDER}/ovsdb-server.log
+        scp ${!OSIP}:/var/log/libvirt/libvirtd.log* ${OS_COMPUTE_FOLDER}
+        scp ${!OSIP}:/var/log/libvirt/qeum/*.log ${OS_COMPUTE_FOLDER}
+        scp ${!OSIP}:/etc/nova/nova.conf ${OS_COMPUTE_FOLDER}/nova.conf
+        rsync -avhe ssh ${!OSIP}:/opt/stack/logs/* ${OS_COMPUTE_FOLDER} # rsync to prevent copying of symbolic links
+        rsync --rsync-path="sudo rsync" -avhe ssh ${!OSIP}:/etc/hosts ${OS_COMPUTE_FOLDER}/hosts.log
+        # Use rsync with sudo to get access to the log dir. Also can't use wildcard because the dirs only have
+        # exec permissions which doesn't allow ls.
+        rsync --rsync-path="sudo rsync" -avhe ssh ${!OSIP}:/var/log/libvirt ${OS_COMPUTE_FOLDER}
+        rsync --rsync-path="sudo rsync" -avhe ssh ${!OSIP}:/var/log/audit/audit.log ${OS_COMPUTE_FOLDER}
+        scp ${!OSIP}:/tmp/get_devstack.sh.txt ${OS_COMPUTE_FOLDER}
+        scp extra_debug.sh ${!OSIP}:/tmp
+        ${SSH} ${!OSIP} "bash /tmp/extra_debug.sh > /tmp/extra_debug.log"
+        scp ${!OSIP}:/tmp/extra_debug.log ${OS_COMPUTE_FOLDER}/extra_debug.log
+        scp ${!OSIP}:/tmp/journalctl.log ${OS_COMPUTE_FOLDER}
+        rsync --rsync-path="sudo rsync" -avhe ssh ${!OSIP}:/var/log/messages ${OS_COMPUTE_FOLDER}
+        scp ${!OSIP}:/tmp/*.xz ${OS_COMPUTE_FOLDER}/
+        mv local.conf_compute_${!OSIP} ${OS_COMPUTE_FOLDER}/local.conf
+        mv ${OS_COMPUTE_FOLDER} ${WORKSPACE}/archives/
+    done
+
+    # Tempest
+    DEVSTACK_TEMPEST_DIR="/opt/stack/tempest"
+    TESTREPO=".stestr"
+    # Look for tempest test results in the $TESTREPO dir and copy if found
+    if ${SSH} ${OPENSTACK_CONTROL_NODE_1_IP} "sudo sh -c '[ -f ${DEVSTACK_TEMPEST_DIR}/${TESTREPO}/0 ]'"; then
+        ${SSH} ${OPENSTACK_CONTROL_NODE_1_IP} "for I in \$(sudo ls ${DEVSTACK_TEMPEST_DIR}/${TESTREPO}/ | grep -E '^[0-9]+$'); do sudo sh -c \"${DEVSTACK_TEMPEST_DIR}/.tox/tempest/bin/subunit-1to2 < ${DEVSTACK_TEMPEST_DIR}/${TESTREPO}/\${I} >> ${DEVSTACK_TEMPEST_DIR}/subunit_log.txt\"; done"
+        ${SSH} ${OPENSTACK_CONTROL_NODE_1_IP} "sudo sh -c '${DEVSTACK_TEMPEST_DIR}/.tox/tempest/bin/python ${DEVSTACK_TEMPEST_DIR}/.tox/tempest/lib/python2.7/site-packages/os_testr/subunit2html.py ${DEVSTACK_TEMPEST_DIR}/subunit_log.txt ${DEVSTACK_TEMPEST_DIR}/tempest_results.html'"
+        TEMPEST_LOGS_DIR=${WORKSPACE}/archives/tempest
+        mkdir -p ${TEMPEST_LOGS_DIR}
+        scp ${OPENSTACK_CONTROL_NODE_1_IP}:${DEVSTACK_TEMPEST_DIR}/tempest_results.html ${TEMPEST_LOGS_DIR}
+        scp ${OPENSTACK_CONTROL_NODE_1_IP}:${DEVSTACK_TEMPEST_DIR}/tempest.log ${TEMPEST_LOGS_DIR}
+        mv ${WORKSPACE}/tempest_output* ${TEMPEST_LOGS_DIR}
+    else
+        echo "tempest results not found in ${DEVSTACK_TEMPEST_DIR}/${TESTREPO}/0"
+    fi
+} # collect_logs()
 
-find local.conf* -print0 | xargs -0 -I % mv % %.log
-
-# Tempest
-DEVSTACK_TEMPEST_DIR="/opt/stack/tempest"
-if ssh ${OPENSTACK_CONTROL_NODE_1_IP} "sudo sh -c '[ -f ${DEVSTACK_TEMPEST_DIR}/.testrepository/0 ]'"; then # if Tempest results exist
-    ssh ${OPENSTACK_CONTROL_NODE_1_IP} "for I in \$(sudo ls ${DEVSTACK_TEMPEST_DIR}/.testrepository/ | grep -E '^[0-9]+$'); do sudo sh -c \"${DEVSTACK_TEMPEST_DIR}/.tox/tempest/bin/subunit-1to2 < ${DEVSTACK_TEMPEST_DIR}/.testrepository/\${I} >> ${DEVSTACK_TEMPEST_DIR}/subunit_log.txt\"; done"
-    ssh ${OPENSTACK_CONTROL_NODE_1_IP} "sudo sh -c '${DEVSTACK_TEMPEST_DIR}/.tox/tempest/bin/python ${DEVSTACK_TEMPEST_DIR}/.tox/tempest/lib/python2.7/site-packages/os_testr/subunit2html.py ${DEVSTACK_TEMPEST_DIR}/subunit_log.txt ${DEVSTACK_TEMPEST_DIR}/tempest_results.html'"
-    TEMPEST_LOGS_DIR=${WORKSPACE}/archives/tempest
-    mkdir -p ${TEMPEST_LOGS_DIR}
-    scp ${OPENSTACK_CONTROL_NODE_1_IP}:${DEVSTACK_TEMPEST_DIR}/tempest_results.html ${TEMPEST_LOGS_DIR}
-    scp ${OPENSTACK_CONTROL_NODE_1_IP}:${DEVSTACK_TEMPEST_DIR}/tempest.log ${TEMPEST_LOGS_DIR}
-    mv ${WORKSPACE}/tempest_output* ${TEMPEST_LOGS_DIR}
+# 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
-}
 
 cat > ${WORKSPACE}/disable_firewall.sh << EOF
 sudo systemctl stop firewalld
@@ -504,25 +544,26 @@ EOF
 cat > ${WORKSPACE}/get_devstack.sh << EOF
 sudo systemctl stop firewalld
 sudo yum install bridge-utils python-pip -y
-sudo systemctl stop  NetworkManager
+#sudo systemctl stop  NetworkManager
 #Disable NetworkManager and kill dhclient and dnsmasq
 sudo systemctl stop NetworkManager
 sudo killall dhclient
 sudo killall dnsmasq
 #Workaround for mysql failure
-echo "127.0.0.1    localhost \${HOSTNAME}" > /tmp/hosts
-echo "::1   localhost  \${HOSTNAME}" >> /tmp/hosts
+echo "127.0.0.1   localhost \${HOSTNAME}" >> /tmp/hosts
+echo "::1         localhost \${HOSTNAME}" >> /tmp/hosts
 sudo mv /tmp/hosts /etc/hosts
-sudo /usr/sbin/brctl addbr br100
-#sudo ifconfig eth0 mtu 2000
 sudo mkdir /opt/stack
 sudo chmod 777 /opt/stack
 cd /opt/stack
-git clone https://git.openstack.org/openstack-dev/devstack
+echo "git clone https://git.openstack.org/openstack-dev/devstack --branch ${OPENSTACK_BRANCH}"
+git clone https://git.openstack.org/openstack-dev/devstack --branch ${OPENSTACK_BRANCH}
 cd devstack
-git checkout $OPENSTACK_BRANCH
-#To fix the recent tempest/tox issues which blocks stacking
-sudo pip install tox==2.7.0
+if [ -n "${DEVSTACK_HASH}" ]; then
+    echo "git checkout ${DEVSTACK_HASH}"
+    git checkout ${DEVSTACK_HASH}
+fi
+git --no-pager log --pretty=format:'%h %<(13)%ar%<(13)%cr %<(20,trunc)%an%d %s\n%b' -n20
 EOF
 
 cat > "${WORKSPACE}/setup_host_cell_mapping.sh" << EOF
@@ -532,23 +573,14 @@ sudo nova-manage db sync
 sudo nova-manage cell_v2 discover_hosts
 EOF
 
-[ "$NUM_OPENSTACK_SITES" ] || NUM_OPENSTACK_SITES=1
+NUM_OPENSTACK_SITES=${NUM_OPENSTACK_SITES:-1}
 compute_index=1
 odl_index=1
 os_node_list=()
 os_interval=$(( ${NUM_OPENSTACK_SYSTEM} / ${NUM_OPENSTACK_SITES} ))
 ha_proxy_index=${os_interval}
 
-cat > "${WORKSPACE}/manual_install_package.sh" << EOF
-cd /opt/stack
-git clone "\$1"
-cd "\$2"
-git checkout "\$3"
-sudo python setup.py install
-EOF
-
-for i in `seq 1 ${NUM_OPENSTACK_SITES}`
-do
+for i in `seq 1 ${NUM_OPENSTACK_SITES}`; do
     if [ "${ENABLE_HAPROXY_FOR_NEUTRON}" == "yes" ]; then
         echo "Configure HAProxy"
         ODL_HAPROXYIP_PARAM=OPENSTACK_HAPROXY_${i}_IP
@@ -559,7 +591,6 @@ do
         ODL_IP_PARAM3=ODL_SYSTEM_$((odl_index++))_IP
         ODLMGRIP[$i]=${!ODL_HAPROXYIP_PARAM} # ODL Northbound uses HAProxy VIP
         ODL_OVS_MGRS[$i]="${!ODL_IP_PARAM1},${!ODL_IP_PARAM2},${!ODL_IP_PARAM3}" # OVSDB connects to all ODL IPs
-
         configure_haproxy_for_neutron_requests ${!ODL_HAPROXYIP_PARAM} "${ODL_OVS_MGRS[$i]}"
     else
         ODL_IP_PARAM=ODL_SYSTEM_${i}_IP
@@ -568,98 +599,129 @@ do
     fi
 done
 
-for i in `seq 1 ${NUM_OPENSTACK_CONTROL_NODES}`
-do
-    echo "Stack the Control Node"
+# Begin stacking the nodes, starting with the controller(s) and then the compute(s)
+
+for i in `seq 1 ${NUM_OPENSTACK_CONTROL_NODES}`; do
     CONTROLIP=OPENSTACK_CONTROL_NODE_${i}_IP
+    echo "Stack the control node ${i} of ${NUM_OPENSTACK_CONTROL_NODES}: ${CONTROLIP}"
+    create_etc_hosts ${!CONTROLIP}
+    scp ${WORKSPACE}/hosts_file ${!CONTROLIP}:/tmp/hosts
     scp ${WORKSPACE}/get_devstack.sh ${!CONTROLIP}:/tmp
-    ${SSH} ${!CONTROLIP} "bash /tmp/get_devstack.sh"
+    ${SSH} ${!CONTROLIP} "bash /tmp/get_devstack.sh > /tmp/get_devstack.sh.txt 2>&1"
     create_control_node_local_conf ${!CONTROLIP} ${ODLMGRIP[$i]} "${ODL_OVS_MGRS[$i]}"
     scp ${WORKSPACE}/local.conf_control_${!CONTROLIP} ${!CONTROLIP}:/opt/stack/devstack/local.conf
     ssh ${!CONTROLIP} "cd /opt/stack/devstack; nohup ./stack.sh > /opt/stack/devstack/nohup.out 2>&1 &"
     ssh ${!CONTROLIP} "ps -ef | grep stack.sh"
     ssh ${!CONTROLIP} "ls -lrt /opt/stack/devstack/nohup.out"
     os_node_list+=(${!CONTROLIP})
-
-    #Workaround for stable/newton jobs
+    # Workaround for stable/newton jobs
+    # TODO: can this be removed now?
     if [ "${ODL_ML2_BRANCH}" == "stable/newton" ]; then
         ssh ${!CONTROLIP} "cd /opt/stack; git clone https://git.openstack.org/openstack/requirements; cd requirements; git checkout stable/newton; sed -i /appdirs/d upper-constraints.txt"
     fi
 done
 
-for i in `seq 1 ${NUM_OPENSTACK_COMPUTE_NODES}`
-do
-    echo "Stack the Compute Node"
+for i in `seq 1 ${NUM_OPENSTACK_COMPUTE_NODES}`; do
     NUM_COMPUTES_PER_SITE=$((NUM_OPENSTACK_COMPUTE_NODES / NUM_OPENSTACK_SITES))
     SITE_INDEX=$((((i - 1) / NUM_COMPUTES_PER_SITE) + 1)) # We need the site index to infer the control node IP for this compute
     COMPUTEIP=OPENSTACK_COMPUTE_NODE_${i}_IP
     CONTROLIP=OPENSTACK_CONTROL_NODE_${SITE_INDEX}_IP
+    echo "Stack the compute node ${i} of ${NUM_OPENSTACK_COMPUTE_NODES}: ${COMPUTEIP}"
+    create_etc_hosts ${!COMPUTEIP} ${!CONTROLIP}
+    scp ${WORKSPACE}/hosts_file ${!COMPUTEIP}:/tmp/hosts
     scp ${WORKSPACE}/get_devstack.sh  ${!COMPUTEIP}:/tmp
-    ${SSH} ${!COMPUTEIP} "bash /tmp/get_devstack.sh"
+    ${SSH} ${!COMPUTEIP} "bash /tmp/get_devstack.sh > /tmp/get_devstack.sh.txt 2>&1"
     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
     ssh ${!COMPUTEIP} "cd /opt/stack/devstack; nohup ./stack.sh > /opt/stack/devstack/nohup.out 2>&1 &"
     ssh ${!COMPUTEIP} "ps -ef | grep stack.sh"
     os_node_list+=(${!COMPUTEIP})
+    # Workaround for https://review.openstack.org/#/c/491032/
+    # Modify upper-constraints to use libvirt-python 3.2.0
+    if [ "${ODL_ML2_BRANCH}" == "stable/ocata" ]; then
+        ${SSH} ${!COMPUTEIP} "
+            cd /opt/stack;
+            git clone https://git.openstack.org/openstack/requirements;
+            cd requirements;
+            git checkout stable/ocata;
+            sed -i s/libvirt-python===2.5.0/libvirt-python===3.2.0/ upper-constraints.txt
+        "
+    fi
 done
 
-echo ${os_node_list[*]}
+echo "nodelist: ${os_node_list[*]}"
 
+# This script runs on the openstack nodes. It greps for a string that devstack writes when stacking is complete.
+# The script then writes a status depending on the grep output that is later scraped by the robot vm to control
+# the status polling.
 cat > ${WORKSPACE}/check_stacking.sh << EOF
 > /tmp/stack_progress
 ps -ef | grep "stack.sh" | grep -v grep
 ret=\$?
 if [ \${ret} -eq 1 ]; then
-  grep "This is your host IP address:" /opt/stack/devstack/nohup.out
-  if [ \$? -eq 0 ]; then
-     echo "Stacking Complete" > /tmp/stack_progress
-  else
-     echo "Stacking Failed" > /tmp/stack_progress
-  fi
+    grep "This is your host IP address:" /opt/stack/devstack/nohup.out
+    if [ \$? -eq 0 ]; then
+        echo "Stacking Complete" > /tmp/stack_progress
+    else
+        echo "Stacking Failed" > /tmp/stack_progress
+    fi
 elif [ \${ret} -eq 0 ]; then
-  echo "Still Stacking" > /tmp/stack_progress
+    echo "Still Stacking" > /tmp/stack_progress
 fi
 EOF
 
-#the checking is repeated for an hour
+# Check if the stacking is finished. Poll all nodes every 60s for one hour.
 iteration=0
 in_progress=1
 while [ ${in_progress} -eq 1 ]; do
-iteration=$(($iteration + 1))
-for index in "${!os_node_list[@]}"
-do
-echo "Check the status of stacking in ${os_node_list[index]}"
-scp ${WORKSPACE}/check_stacking.sh  ${os_node_list[index]}:/tmp
-${SSH} ${os_node_list[index]} "bash /tmp/check_stacking.sh"
-scp ${os_node_list[index]}:/tmp/stack_progress .
-#debug
-cat stack_progress
-stacking_status=`cat stack_progress`
-if [ "$stacking_status" == "Still Stacking" ]; then
-  continue
-elif [ "$stacking_status" == "Stacking Failed" ]; then
-  collect_logs_and_exit
-  exit 1
-elif [ "$stacking_status" == "Stacking Complete" ]; then
-  unset 'os_node_list[index]'
-  if  [ ${#os_node_list[@]} -eq 0 ]; then
-     in_progress=0
-  fi
-fi
-done
- echo "sleep for a minute before the next check"
- sleep 60
- if [ ${iteration} -eq 60 ]; then
-  collect_logs_and_exit
-  exit 1
- fi
+    iteration=$(($iteration + 1))
+    for index in "${!os_node_list[@]}"; do
+        echo "node $index ${os_node_list[index]}: checking stacking status attempt ${iteration} of 60"
+        scp ${WORKSPACE}/check_stacking.sh  ${os_node_list[index]}:/tmp
+        ${SSH} ${os_node_list[index]} "bash /tmp/check_stacking.sh"
+        scp ${os_node_list[index]}:/tmp/stack_progress .
+        cat stack_progress
+        stacking_status=`cat stack_progress`
+        if [ "$stacking_status" == "Still Stacking" ]; then
+            continue
+        elif [ "$stacking_status" == "Stacking Failed" ]; then
+            echo "node $index ${os_node_list[index]}: stacking has failed"
+            collect_logs
+            exit 1
+        elif [ "$stacking_status" == "Stacking Complete" ]; then
+            echo "node $index ${os_node_list[index]}: stacking complete"
+            unset 'os_node_list[index]'
+            if  [ ${#os_node_list[@]} -eq 0 ]; then
+                in_progress=0
+            fi
+        fi
+    done
+    echo "sleep for a minute before the next check"
+    sleep 60
+    if [ ${iteration} -eq 60 ]; then
+        echo "stacking has failed - took longer than 60m"
+        collect_logs
+        exit 1
+    fi
 done
 
+# Further configuration now that stacking is complete.
 NUM_COMPUTES_PER_SITE=$((NUM_OPENSTACK_COMPUTE_NODES / NUM_OPENSTACK_SITES))
-for i in `seq 1 ${NUM_OPENSTACK_SITES}`
-do
+for i in `seq 1 ${NUM_OPENSTACK_SITES}`; do
     echo "Configure the Control Node"
     CONTROLIP=OPENSTACK_CONTROL_NODE_${i}_IP
+    # Gather Compute IPs for the site
+    for j in `seq 1 ${NUM_COMPUTES_PER_SITE}`; do
+        COMPUTE_INDEX=$(((i-1) * NUM_COMPUTES_PER_SITE + j))
+        IP_VAR=OPENSTACK_COMPUTE_NODE_${COMPUTE_INDEX}_IP
+        COMPUTE_IPS[$((j-1))]=${!IP_VAR}
+    done
+
+    # Need to disable firewalld and iptables in compute nodes as well
+    for ip in ${COMPUTE_IPS[*]}; do
+        scp ${WORKSPACE}/disable_firewall.sh "${ip}:/tmp"
+        ${SSH} "${ip}" "sudo bash /tmp/disable_firewall.sh"
+    done
 
     #Need to disable firewalld and iptables in control node
     echo "Stop Firewall in Control Node for compute nodes to be able to reach the ports and add to hypervisor-list"
@@ -668,6 +730,13 @@ do
 
     echo "sleep for 60s and print hypervisor-list"
     sleep 60
+    # In Ocata if we do not enable the n-cpu in control node then
+    # we need to discover hosts manually and ensure that they are mapped to cells.
+    # reference: https://ask.openstack.org/en/question/102256/how-to-configure-placement-service-for-compute-node-on-ocata/
+    if [ "${OPENSTACK_BRANCH}" == "stable/ocata" ]; then
+        scp ${WORKSPACE}/setup_host_cell_mapping.sh  ${!CONTROLIP}:/tmp
+        ${SSH} ${!CONTROLIP} "sudo bash /tmp/setup_host_cell_mapping.sh"
+    fi
     ${SSH} ${!CONTROLIP} "cd /opt/stack/devstack; source openrc admin admin; nova hypervisor-list"
     # in the case that we are doing openstack (control + compute) all in one node, then the number of hypervisors
     # will be the same as the number of openstack systems. However, if we are doing multinode openstack then the
@@ -681,18 +750,10 @@ do
     num_hypervisors=$(${SSH} ${!CONTROLIP} "cd /opt/stack/devstack; source openrc admin admin; openstack hypervisor list -f value | wc -l" | tail -1 | tr -d "\r")
     if ! [ "${num_hypervisors}" ] || ! [ ${num_hypervisors} -eq ${expected_num_hypervisors} ]; then
         echo "Error: Only $num_hypervisors hypervisors detected, expected $expected_num_hypervisors"
-        collect_logs_and_exit
+        collect_logs
         exit 1
     fi
 
-    # For Ocata, if we do not enable the n-cpu in control node
-    # We need to discover hosts manually and ensure that they are mapped to cells.
-    # reference: https://ask.openstack.org/en/question/102256/how-to-configure-placement-service-for-compute-node-on-ocata/
-    if [ "${OPENSTACK_BRANCH}" == "stable/ocata" ]; then
-        scp ${WORKSPACE}/setup_host_cell_mapping.sh  ${!CONTROLIP}:/tmp
-        ${SSH} ${!CONTROLIP} "sudo bash /tmp/setup_host_cell_mapping.sh"
-    fi
-
     # upgrading pip, urllib3 and httplib2 so that tempest tests can be run on openstack control node
     # this needs to happen after devstack runs because it seems devstack is pulling in specific versions
     # of these libs that are not working for tempest.
@@ -701,16 +762,14 @@ do
     ${SSH} ${!CONTROLIP} "sudo pip install httplib2 --upgrade"
 
     # Gather Compute IPs for the site
-    for j in `seq 1 ${NUM_COMPUTES_PER_SITE}`
-    do
+    for j in `seq 1 ${NUM_COMPUTES_PER_SITE}`; do
         COMPUTE_INDEX=$(((i-1) * NUM_COMPUTES_PER_SITE + j))
         IP_VAR=OPENSTACK_COMPUTE_NODE_${COMPUTE_INDEX}_IP
         COMPUTE_IPS[$((j-1))]=${!IP_VAR}
     done
 
     # Need to disable firewalld and iptables in compute nodes as well
-    for ip in ${COMPUTE_IPS[*]}
-    do
+    for ip in ${COMPUTE_IPS[*]}; do
         scp ${WORKSPACE}/disable_firewall.sh "${ip}:/tmp"
         ${SSH} "${ip}" "sudo bash /tmp/disable_firewall.sh"
     done
@@ -719,8 +778,7 @@ do
     echo "prepare external networks by adding vxlan tunnels between all nodes on a separate bridge..."
     # FIXME Should there be a unique gateway IP and devstack index for each site?
     devstack_index=1
-    for ip in ${!CONTROLIP} ${COMPUTE_IPS[*]}
-    do
+    for ip in ${!CONTROLIP} ${COMPUTE_IPS[*]}; do
         # FIXME - Workaround, ODL (new netvirt) currently adds PUBLIC_BRIDGE as a port in br-int since it doesn't see such a bridge existing when we stack
         ${SSH} $ip "sudo ovs-vsctl --if-exists del-port br-int $PUBLIC_BRIDGE"
         ${SSH} $ip "sudo ovs-vsctl --may-exist add-br $PUBLIC_BRIDGE -- set bridge $PUBLIC_BRIDGE other-config:disable-in-band=true other_config:hwaddr=f6:00:00:ff:01:0$((devstack_index++))"
@@ -729,10 +787,8 @@ do
     # ipsec support
     if [ "${IPSEC_VXLAN_TUNNELS_ENABLED}" == "yes" ]; then
         ALL_NODES=(${!CONTROLIP} ${COMPUTE_IPS[*]})
-        for ((inx_ip1=0; inx_ip1<$((${#ALL_NODES[@]} - 1)); inx_ip1++))
-        do
-            for ((inx_ip2=$((inx_ip1 + 1)); inx_ip2<${#ALL_NODES[@]}; inx_ip2++))
-            do
+        for ((inx_ip1=0; inx_ip1<$((${#ALL_NODES[@]} - 1)); inx_ip1++)); do
+            for ((inx_ip2=$((inx_ip1 + 1)); inx_ip2<${#ALL_NODES[@]}; inx_ip2++)); do
                 KEY1=0x$(dd if=/dev/urandom count=32 bs=1 2> /dev/null| xxd -p -c 64)
                 KEY2=0x$(dd if=/dev/urandom count=32 bs=1 2> /dev/null| xxd -p -c 64)
                 ID=0x$(dd if=/dev/urandom count=4 bs=1 2> /dev/null| xxd -p -c 8)
@@ -750,8 +806,7 @@ do
             done
         done
 
-        for ip in ${!CONTROLIP} ${COMPUTE_IPS[*]}
-        do
+        for ip in ${!CONTROLIP} ${COMPUTE_IPS[*]}; do
             echo "ip xfrm configuration for node $ip:"
             ${SSH} $ip "sudo ip xfrm policy list"
             ${SSH} $ip "sudo ip xfrm state list"
@@ -783,8 +838,7 @@ do
 
     # Computes
     compute_index=1
-    for compute_ip in ${COMPUTE_IPS[*]}
-    do
+    for compute_ip in ${COMPUTE_IPS[*]}; do
         # Tunnel from controller to compute
         COMPUTEPORT=compute$(( compute_index++ ))_vxlan
         ${SSH} ${!CONTROLIP} "
@@ -823,18 +877,25 @@ echo "Changing the testplan path..."
 cat "${testplan_filepath}" | sed "s:integration:${WORKSPACE}:" > testplan.txt
 cat testplan.txt
 
+# Use the testplan if specific SUITES are not defined.
 if [ -z "${SUITES}" ]; then
     SUITES=`egrep -v '(^[[:space:]]*#|^[[:space:]]*$)' testplan.txt | tr '\012' ' '`
 fi
 
-#Environment Variables Needed to execute Openstack Client for NEtvirt Jobs
+if [ "${OPENSTACK_BRANCH}" == "stable/pike" ]; then
+   AUTH="http://${!CONTROLIP}/identity"
+else
+   AUTH="http://${!CONTROLIP}:35357/v3"
+fi
+
+# Environment Variables Needed to execute Openstack Client for NetVirt Jobs
 cat > /tmp/os_netvirt_client_rc << EOF
 export OS_USERNAME=admin
 export OS_PASSWORD=admin
 export OS_PROJECT_NAME=admin
 export OS_USER_DOMAIN_NAME=default
 export OS_PROJECT_DOMAIN_NAME=default
-export OS_AUTH_URL="http://${!CONTROLIP}:35357/v3"
+export OS_AUTH_URL=${AUTH}
 export OS_IDENTITY_API_VERSION=3
 export OS_IMAGE_API_VERSION=2
 export OS_TENANT_NAME=admin
@@ -843,7 +904,6 @@ EOF
 
 source /tmp/os_netvirt_client_rc
 
-#FIXME currently support only 1 site
 echo "Starting Robot test suites ${SUITES} ..."
 # please add pybot -v arguments on a single line and alphabetized
 pybot -N ${TESTPLAN} --removekeywords wuks -c critical -e exclude -e skip_if_${DISTROSTREAM} \
@@ -894,12 +954,12 @@ pybot -N ${TESTPLAN} --removekeywords wuks -c critical -e exclude -e skip_if_${D
     -v WORKSPACE:/tmp \
     ${TESTOPTIONS} ${SUITES} || true
 
-echo "Examining the files in data/log and checking filesize"
+echo "Examining the files in data/log and checking file size"
 ssh ${ODL_SYSTEM_IP} "ls -altr /tmp/${BUNDLEFOLDER}/data/log/"
 ssh ${ODL_SYSTEM_IP} "du -hs /tmp/${BUNDLEFOLDER}/data/log/*"
 
 echo "Tests Executed"
-collect_logs_and_exit
+collect_logs
 
 true  # perhaps Jenkins is testing last exit code
 # vim: ts=4 sw=4 sts=4 et ft=sh :
index 15aad57ec04f53073e8e02a03656dacc29f02dd5..aa8d9587cd4a03b02c87299f08dda95bf6873c30 100644 (file)
           name: OPENSTACK_BRANCH
           default: '{openstack-branch}'
           description: 'Openstack version to use with devstack'
+      - string:
+          name: DEVSTACK_HASH
+          default: '{devstack-hash}'
+          description: 'devstack hash to checkout'
       - string:
           name: ODL_ML2_DRIVER_REPO
           default: '{odl-ml2-driver-repo}'
       - string:
           name: ENABLE_OS_SERVICES
           default: '{enable-openstack-services}'
-          description: 'comma seperated list of services to enable'
+          description: 'comma separated list of services to enable on controller nodes'
+      - string:
+          name: ENABLE_OS_COMPUTE_SERVICES
+          default: '{enable-openstack-compute-services}'
+          description: 'comma separated list of services to enable on compute nodes'
       - string:
           name: ENABLE_OS_PLUGINS
           default: '{enable-openstack-plugins}'
           name: OPENSTACK_BRANCH
           default: '{openstack-branch}'
           description: 'Openstack version to use with devstack'
+      - string:
+          name: DEVSTACK_HASH
+          default: '{devstack-hash}'
+          description: 'devstack hash to checkout'
       - string:
           name: ODL_ML2_DRIVER_REPO
           default: '{odl-ml2-driver-repo}'
           name: ENABLE_OS_SERVICES
           default: '{enable-openstack-services}'
           description: 'comma seperated list of services to enable'
+      - string:
+          name: ENABLE_OS_COMPUTE_SERVICES
+          default: '{enable-openstack-compute-services}'
+          description: 'comma separated list of services to enable on compute nodes'
       - string:
           name: ENABLE_OS_PLUGINS
           default: '{enable-openstack-plugins}'
index c81cb25cfb3ac3a2803896e51d712eed60aeb6ba..98e9102433d5fbdf6d7709c65fd495caf88b28f1 100644 (file)
@@ -24,9 +24,7 @@
           csit-list: !include: csit-jobs-oxygen.lst
           csit-sanity-list: '{csit-sanity-list-oxygen}'
           csit-weekly-list: '{csit-weekly-list-oxygen}'
-          schedule-weekly: 'H 23 * * 6'
           csit-high-frequency-list: '{csit-high-frequency-list-oxygen}'
-          schedule-high-frequency: 'H H/4 * * *'
 
       - nitrogen:
           branch: 'stable/nitrogen'
@@ -35,9 +33,7 @@
           csit-list: !include: csit-jobs-nitrogen.lst
           csit-sanity-list: '{csit-sanity-list-nitrogen}'
           csit-weekly-list: '{csit-weekly-list-nitrogen}'
-          schedule-weekly: 'H 23 * * 6'
           csit-high-frequency-list: '{csit-high-frequency-list-nitrogen}'
-          schedule-high-frequency: 'H H/4 * * *'
 
       - carbon:
           branch: 'stable/carbon'
@@ -48,9 +44,7 @@
           csit-list: !include: csit-jobs-carbon.lst
           csit-sanity-list: '{csit-sanity-list-carbon}'
           csit-weekly-list: '{csit-weekly-list-carbon}'
-          schedule-weekly: 'H 23 * * 6'
           csit-high-frequency-list: '{csit-high-frequency-list-carbon}'
-          schedule-high-frequency: 'H H/4 * * *'
 
       - boron:
           branch: 'stable/boron'
@@ -61,7 +55,6 @@
           csit-list: !include: csit-jobs-boron.lst
           csit-sanity-list: '{csit-sanity-list-boron}'
           csit-weekly-list: '{csit-weekly-list-boron}'
-          schedule-weekly: 'H 23 * * 6'
           csit-high-frequency-list: ''
           schedule-high-frequency: ''
 
index 9ec7e2a3cf0a6f1f273b5400b57d3ea47290ab78..707f2d6e6dfcdded08c361b01eaf6eb561dee0f1 100644 (file)
@@ -35,8 +35,6 @@
     # TODO: Update the line above when stable/carbon is created.
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index d0ddf734d75f309fb0f37431e9c3944348fd5d13..c09dbf4bf45da6c300205cc63705c86040be227a 100644 (file)
@@ -28,8 +28,6 @@
           karaf-version: karaf3
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index 188af6995c97fbefe7d0fe8835bdca088173a09e..2c73bc107ccfc57b646faa8d0e9b590da3442e49 100644 (file)
@@ -29,8 +29,6 @@
           karaf-version: karaf3
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index ed3621fdeeebb7b7dd065384c56bba2bc53f2e54..47a8aeab6c7fa9dc636137d79b0a94feaa40ae82 100644 (file)
@@ -28,5 +28,5 @@
       - all:
           csit-list: >
               l2switch-csit-1node-periodic-host-scalability-daily-only-{stream},
-              l2switch-csit-1node-scalability-only-{stream},
-              l2switch-csit-1node-switch-only-{stream}
+              l2switch-csit-1node-scalability-all-{stream},
+              l2switch-csit-1node-switch-all-{stream}
index f8312e2cee61c2b7b530a87a1c524e9e77c8f801..2eb271518c84a7e6cd0a3639375f60ab5578fdf7 100644 (file)
@@ -29,8 +29,6 @@
           karaf-version: karaf3
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index f6a46f2bc8ec127c3d6c726a932ce28bcf2ce69f..6aca633f8e7a3bdc85d11c82621bbb144463f19a 100644 (file)
 - project:
     name: lf-infra-lftools
     jobs:
+      - '{project-name}-rtd-jobs'
       - gerrit-tox-verify
 
     project-name: lf-infra-lftools
     project: releng/lftools
+    project-pattern: releng/lftools
     build-node: centos7-java-builder-2c-4g
+    rtd-project: lf-releng-tools
     stream: master
 
     git-url: https://gerrit.linuxfoundation.org/infra/$GERRIT_PROJECT
index 314909df00b4bf50d923a4d9b2f613befe008dc0..5e2f7f9ec20e47bf464a68f39a9e6c9e43146a4a 100644 (file)
@@ -30,8 +30,6 @@
           karaf-version: karaf3
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index a921b9506dcaffd961e0d9988e043cc76c53263a..da33a84e4da7d647461d767bf56a1beb2f2c5eef 100644 (file)
@@ -29,8 +29,6 @@
           karaf-version: karaf3
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index 19e1713c24b005fa82b93f63439ed45fbdd699e8..18e1f1bc5de0bb8520934f62a52776ac822a1da8 100644 (file)
@@ -29,8 +29,6 @@
           karaf-version: karaf3
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index 2a57ab55f2b9adc1d531bcf12af8d89f0db0a9e1..6e15e0c5a898f69a8a19e7bf865aeea7df5f2e68 100644 (file)
@@ -29,8 +29,6 @@
           karaf-version: karaf3
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index 8cab4579a13a203cb874bdd99c1489790ab488ec..553106a95e80020d198bfdbaca7c3be6fc00754e 100644 (file)
@@ -28,8 +28,6 @@
           karaf-version: karaf3
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index c2db31a0e8ac565d322d2892be64ba39a148e775..bde252c8e1c94a1da2f03f3f7a8953a8af6163ba 100644 (file)
@@ -28,8 +28,6 @@
           karaf-version: karaf3
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index 6d932287f86c3c3f214d082f345b31e2a5097bd1..141e30170f218409071005498e599f2a5bb9cc59 100644 (file)
@@ -28,8 +28,6 @@
           karaf-version: karaf3
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index c85887f5d0c709290e2fab739e0405cd23e50e1a..4a29408ba9910691985b9bb35c318ad52d568b98 100644 (file)
@@ -27,5 +27,5 @@
     feature:
       - core:
           csit-list: >
-                netconf-csit-1node-gate-userfeatures-only-{stream},
+                netconf-csit-1node-gate-userfeatures-all-{stream},
                 netconf-csit-1node-gate-callhome-only-{stream}
index a3837366928282159c41925cf2130f8046460968..e1677af41db3f196ac452a38b100ce20413a3e9f 100644 (file)
@@ -35,8 +35,6 @@
           robot-options: '-v USE_NETCONF_CONNECTOR:True'
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index adfedde4db6110476d3d80f7c747d7e8b2a29ef2..5c34f200e518d65bc3f2fdc0e61ad13177e591d5 100644 (file)
@@ -39,8 +39,6 @@
           robot-options: '-v NETOPEER_USER:root -v USE_NETCONF_CONNECTOR:True'
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index f653dc9c7fb9cd9b89e290ed48c66df30fee4c6b..fffd7f02c2ac47210445ce537186eaa9272417f3 100644 (file)
@@ -29,8 +29,6 @@
           karaf-version: karaf3
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index 2c1e79f52ad48b353d337562971ad15be94cc4b0..52cee01d90d8ca59c552da0f8b212603ee1c6c14 100644 (file)
 ---
 - project:
-    name: netvirt-csit-hwvtep-openstack-integration
+    name: netvirt-csit-hwvtep-openstack-integration-oxygen
     jobs:
       - '{project}-csit-hwvtep-{topology}-openstack-{openstack}-{functionality}-{stream}'
 
     project: 'netvirt'
+    stream: 'oxygen'
+    branch: 'master'
+    jre: 'openjdk8'
 
     topology:
       - 1node:
-          openstack_system_count: 1
+          openstack_system1_count: 1
           openstack_system2_count: 2
           odl_system_count: 1
           enable-haproxy: 'no'
           install-features: 'odl-netvirt-openstack'
       - 3node:
-          openstack_system_count: 1
+          openstack_system1_count: 1
+          openstack_system2_count: 3
+          odl_system_count: 3
+          enable-haproxy: 'yes'
+          install-features: 'odl-jolokia,odl-netvirt-openstack'
+
+    testplan: '{project}-{topology}-l2gw-openstack.txt'
+
+    functionality:
+      - upstream-stateful:
+          sg-mode: 'stateful'
+      - gate-stateful:
+          sg-mode: 'stateful'
+
+    openstack:
+      - ocata:
+          openstack-branch: 'stable/ocata'
+          odl-ml2-branch: 'stable/ocata'
+          openstack_system_image: 'CentOS 7 - devstack-ocata - 20170808-0528'
+          openstack_system2_image: 'CentOS 7 - devstack-ocata - 20170808-0528'
+      - pike:
+          openstack-branch: 'stable/pike'
+          devstack-hash: 'c2bb1020ac4f18df5aa90a13f3b6ee8eb2c15d65'
+          odl-ml2-branch: 'stable/pike'
+          odl-ml2-port-binding: 'pseudo-agentdb-binding'
+          openstack_system_image: 'CentOS 7 - devstack-pike - 20170901-2223'
+          openstack_system2_image: 'CentOS 7 - devstack-pike - 20170901-2223'
+      - queens:
+          openstack-branch: 'master'
+          devstack-hash: '2d5494cfc57b95b61f8b33240eff65f1a339a53e'
+          odl-ml2-branch: 'master'
+          odl-ml2-port-binding: 'pseudo-agentdb-binding'
+          openstack_system_image: 'CentOS 7 - devstack-pike - 20170901-2223'
+          openstack_system2_image: 'CentOS 7 - devstack-pike - 20170901-2223'
+
+    odl-ml2-driver-version: 'v2'
+    enable-openstack-services: 'placement-api,l2gw-plugin'
+    enable-openstack-compute-services: 'placement-client'
+    security-group-mode: '{sg-mode}'
+    tools_system_count: 2
+    tools_system_image: 'Ubuntu 16.04 - mininet-ovs-26 - 20170829-0548'
+
+    # TODO: remove this flag and instead use the enable-openstack-services list to know if l2gw is enabled
+    enable-networking-l2gw: 'yes'
+
+- project:
+    name: netvirt-csit-hwvtep-openstack-integration-nitrogen
+    jobs:
+      - '{project}-csit-hwvtep-{topology}-openstack-{openstack}-{functionality}-{stream}'
+
+    project: 'netvirt'
+    stream: 'nitrogen'
+    branch: 'stable/nitrogen'
+    jre: 'openjdk8'
+
+    topology:
+      - 1node:
+          openstack_system1_count: 1
+          openstack_system2_count: 2
+          odl_system_count: 1
+          enable-haproxy: 'no'
+          install-features: 'odl-netvirt-openstack'
+      - 3node:
+          openstack_system1_count: 1
+          openstack_system2_count: 3
+          odl_system_count: 3
+          enable-haproxy: 'yes'
+          install-features: 'odl-jolokia,odl-netvirt-openstack'
+
+    testplan: '{project}-{topology}-l2gw-openstack.txt'
+
+    functionality:
+      - upstream-stateful:
+          schedule: ''
+          sg-mode: 'stateful'
+      - gate-stateful:
+          schedule: ''
+          sg-mode: 'stateful'
+
+    openstack:
+      - ocata:
+          openstack-branch: 'stable/ocata'
+          odl-ml2-branch: 'stable/ocata'
+          openstack_system_image: 'CentOS 7 - devstack-ocata - 20170808-0528'
+          openstack_system2_image: 'CentOS 7 - devstack-ocata - 20170808-0528'
+      - pike:
+          openstack-branch: 'stable/pike'
+          devstack-hash: 'c2bb1020ac4f18df5aa90a13f3b6ee8eb2c15d65'
+          odl-ml2-branch: 'stable/pike'
+          odl-ml2-port-binding: 'pseudo-agentdb-binding'
+          openstack_system_image: 'CentOS 7 - devstack-pike - 20170901-2223'
+          openstack_system2_image: 'CentOS 7 - devstack-pike - 20170901-2223'
+      - queens:
+          openstack-branch: 'master'
+          devstack-hash: '2d5494cfc57b95b61f8b33240eff65f1a339a53e'
+          odl-ml2-branch: 'master'
+          odl-ml2-port-binding: 'pseudo-agentdb-binding'
+          openstack_system_image: 'CentOS 7 - devstack-pike - 20170901-2223'
+          openstack_system2_image: 'CentOS 7 - devstack-pike - 20170901-2223'
+
+    odl-ml2-driver-version: 'v2'
+    enable-openstack-services: 'placement-api,l2gw-plugin'
+    enable-openstack-compute-services: 'placement-client'
+    security-group-mode: '{sg-mode}'
+    tools_system_count: 2
+    tools_system_image: 'Ubuntu 16.04 - mininet-ovs-26 - 20170829-0548'
+
+    # TODO: remove this flag and instead use the enable-openstack-services list to know if l2gw is enabled
+    enable-networking-l2gw: 'yes'
+
+- project:
+    name: netvirt-csit-hwvtep-openstack-integration-carbon
+    jobs:
+      - '{project}-csit-hwvtep-{topology}-openstack-{openstack}-{functionality}-{stream}'
+
+    project: 'netvirt'
+
+    stream: 'carbon'
+    branch: 'stable/carbon'
+    jre: 'openjdk8'
+    karaf-version: karaf3
+
+    topology:
+      - 1node:
+          openstack_system1_count: 1
+          openstack_system2_count: 2
+          odl_system_count: 1
+          enable-haproxy: 'no'
+          install-features: 'odl-netvirt-openstack'
+      - 3node:
+          openstack_system1_count: 1
+          openstack_system2_count: 3
+          odl_system_count: 3
+          enable-haproxy: 'yes'
+          install-features: 'odl-jolokia,odl-netvirt-openstack'
+
+    testplan: '{project}-{topology}-l2gw-openstack.txt'
+
+    functionality:
+      - upstream-stateful:
+          schedule: ''
+          sg-mode: 'stateful'
+      - gate-stateful:
+          schedule: ''
+          sg-mode: 'stateful'
+
+    openstack:
+      - ocata:
+          openstack-branch: 'stable/ocata'
+          odl-ml2-branch: 'stable/ocata'
+          openstack_system_image: 'CentOS 7 - devstack-ocata - 20170808-0528'
+          openstack_system2_image: 'CentOS 7 - devstack-ocata - 20170808-0528'
+      - pike:
+          openstack-branch: 'stable/pike'
+          devstack-hash: 'c2bb1020ac4f18df5aa90a13f3b6ee8eb2c15d65'
+          odl-ml2-branch: 'stable/pike'
+          odl-ml2-port-binding: 'pseudo-agentdb-binding'
+          openstack_system_image: 'CentOS 7 - devstack-pike - 20170901-2223'
+          openstack_system2_image: 'CentOS 7 - devstack-pike - 20170901-2223'
+
+    odl-ml2-driver-version: 'v2'
+    enable-openstack-services: 'placement-api,l2gw-plugin'
+    enable-openstack-compute-services: 'placement-client'
+    security-group-mode: '{sg-mode}'
+    tools_system_count: 2
+    tools_system_image: 'Ubuntu 16.04 - mininet-ovs-26 - 20170829-0548'
+
+    # TODO: remove this flag and instead use the enable-openstack-services list to know if l2gw is enabled
+    enable-networking-l2gw: 'yes'
+
+- project:
+    name: netvirt-csit-hwvtep-openstack-integration-boron
+    jobs:
+      - '{project}-csit-hwvtep-{topology}-openstack-{openstack}-{functionality}-{stream}'
+
+    project: 'netvirt'
+
+    stream: 'boron'
+    branch: 'stable/boron'
+    jre: 'openjdk8'
+    karaf-version: karaf3
+
+    topology:
+      - 1node:
+          openstack_system1_count: 1
+          openstack_system2_count: 2
+          odl_system_count: 1
+          enable-haproxy: 'no'
+          install-features: 'odl-netvirt-openstack'
+      - 3node:
+          openstack_system1_count: 1
           openstack_system2_count: 3
           odl_system_count: 3
           enable-haproxy: 'yes'
       - upstream-learn:
           schedule: ''
           sg-mode: 'learn'
-      - gate-transparent:
+      - gate-stateful:
           schedule: ''
-          sg-mode: 'transparent'
-
-    stream:
-      - oxygen:
-          branch: 'master'
-          jre: 'openjdk8'
-      - nitrogen:
-          branch: 'stable/nitrogen'
-          jre: 'openjdk8'
-      - carbon:
-          branch: 'stable/carbon'
-          jre: 'openjdk8'
-          karaf-version: karaf3
-      - boron:
-          branch: 'stable/boron'
-          jre: 'openjdk8'
-          karaf-version: karaf3
+          sg-mode: 'stateful'
 
     openstack:
       - newton:
           openstack-branch: 'stable/newton'
           odl-ml2-branch: 'stable/newton'
-          openstack_system_image: 'CentOS 7 - devstack-newton - 20170808-0528'
       - newton-nodl-v2:
           openstack-branch: 'stable/newton'
           odl-ml2-branch: 'stable/newton'
           odl-ml2-driver-version: 'v2'
-          openstack_system_image: 'CentOS 7 - devstack-newton - 20170808-0528'
 
-    tools_system_count: 2
+    openstack_system_image: 'CentOS 7 - devstack-newton - 20170808-0528'
+    openstack_system2_image: 'CentOS 7 - devstack-newton - 20170808-0528'
+    security-group-mode: '{sg-mode}'
 
+    tools_system_count: 2
     tools_system_image: 'Ubuntu 16.04 - mininet-ovs-26 - 20170829-0548'
 
+    # TODO: remove this flag and instead use the enable-openstack-services list to know if l2gw is enabled
     enable-networking-l2gw: 'yes'
+    enable-openstack-services: 'neutron,nova,l2gw-plugin'
 
-    enable-openstack-services: 'q-svc,q-dhcp,q-meta,n-cauth,tempest,l2gw-plugin'
-
-    security-group-mode: '{sg-mode}'
index ff3593cb6957e9e725d1523fa1571106901c4d9b..80180632ad38bf659043f6ed450246b107e856bc 100644 (file)
 ---
 - project:
-    name: netvirt-csit-openstack-integration
+    name: netvirt-csit-openstack-integration-oxygen
     jobs:
       - '{project}-csit-{topology}-openstack-{openstack}-{functionality}-{stream}'
 
     project: 'netvirt'
+    stream: 'oxygen'
+    branch: 'master'
+    jre: 'openjdk8'
+
+    topology:
+      - 1node:
+          openstack_system2_count: 2
+          odl_system_count: 1
+          enable-haproxy: 'no'
+          install-features: 'odl-netvirt-openstack'
+      - 3node:
+          openstack_system2_count: 3
+          odl_system_count: 3
+          enable-haproxy: 'yes'
+          install-features: 'odl-jolokia,odl-netvirt-openstack'
+
+    testplan: '{project}-{topology}-openstack.txt'
+
+    functionality:
+      - upstream-stateful:
+          sg-mode: 'stateful'
+      - upstream-stateful-snat-conntrack:
+          sg-mode: 'stateful'
+          odl-snat-mode: 'conntrack'
+      - gate-stateful:
+          sg-mode: 'stateful'
+      - gate-stateful-snat-conntrack:
+          sg-mode: 'stateful'
+          odl-snat-mode: 'conntrack'
+      - gate-minimal-cluster:
+          sg-mode: 'stateful'
+          testplan: '{project}-{topology}-minimal-openstack.txt'
+
+    openstack:
+      - ocata:
+          openstack-branch: 'stable/ocata'
+          odl-ml2-branch: 'stable/ocata'
+          openstack_system_image: 'CentOS 7 - devstack-ocata - 20170808-0528'
+          openstack_system2_image: 'CentOS 7 - devstack-ocata - 20170808-0528'
+      - pike:
+          openstack-branch: 'stable/pike'
+          devstack-hash: 'c2bb1020ac4f18df5aa90a13f3b6ee8eb2c15d65'
+          odl-ml2-branch: 'stable/pike'
+          odl-ml2-port-binding: 'pseudo-agentdb-binding'
+          openstack_system_image: 'CentOS 7 - devstack-pike - 20170901-2223'
+          openstack_system2_image: 'CentOS 7 - devstack-pike - 20170901-2223'
+      - queens:
+          openstack-branch: 'master'
+          devstack-hash: '2d5494cfc57b95b61f8b33240eff65f1a339a53e'
+          odl-ml2-branch: 'master'
+          odl-ml2-port-binding: 'pseudo-agentdb-binding'
+          openstack_system_image: 'CentOS 7 - devstack-pike - 20170901-2223'
+          openstack_system2_image: 'CentOS 7 - devstack-pike - 20170901-2223'
+
+    odl-ml2-driver-version: 'v2'
+    enable-openstack-services: 'placement-api,tempest'
+    enable-openstack-compute-services: 'placement-client'
+    security-group-mode: '{sg-mode}'
+
+- project:
+    name: netvirt-csit-openstack-integration-nitrogen
+    jobs:
+      - '{project}-csit-{topology}-openstack-{openstack}-{functionality}-{stream}'
+
+    project: 'netvirt'
+    stream: 'nitrogen'
+    branch: 'stable/nitrogen'
+    jre: 'openjdk8'
+
+    topology:
+      - 1node:
+          openstack_system2_count: 2
+          odl_system_count: 1
+          enable-haproxy: 'no'
+          install-features: 'odl-netvirt-openstack'
+      - 3node:
+          openstack_system2_count: 3
+          odl_system_count: 3
+          enable-haproxy: 'yes'
+          install-features: 'odl-jolokia,odl-netvirt-openstack'
+
+    testplan: '{project}-{topology}-openstack.txt'
+
+    functionality:
+      - upstream-stateful:
+          sg-mode: 'stateful'
+      - upstream-stateful-snat-conntrack:
+          sg-mode: 'stateful'
+          odl-snat-mode: 'conntrack'
+      - gate-stateful:
+          sg-mode: 'stateful'
+      - gate-stateful-snat-conntrack:
+          sg-mode: 'stateful'
+          odl-snat-mode: 'conntrack'
+      - gate-minimal-cluster:
+          sg-mode: 'stateful'
+          testplan: '{project}-{topology}-minimal-openstack.txt'
+
+    openstack:
+      - ocata:
+          openstack-branch: 'stable/ocata'
+          odl-ml2-branch: 'stable/ocata'
+          openstack_system_image: 'CentOS 7 - devstack-ocata - 20170808-0528'
+          openstack_system2_image: 'CentOS 7 - devstack-ocata - 20170808-0528'
+      - pike:
+          openstack-branch: 'stable/pike'
+          devstack-hash: 'c2bb1020ac4f18df5aa90a13f3b6ee8eb2c15d65'
+          odl-ml2-branch: 'stable/pike'
+          odl-ml2-port-binding: 'pseudo-agentdb-binding'
+          openstack_system_image: 'CentOS 7 - devstack-pike - 20170901-2223'
+          openstack_system2_image: 'CentOS 7 - devstack-pike - 20170901-2223'
+      - queens:
+          openstack-branch: 'master'
+          devstack-hash: '2d5494cfc57b95b61f8b33240eff65f1a339a53e'
+          odl-ml2-branch: 'master'
+          odl-ml2-port-binding: 'pseudo-agentdb-binding'
+          openstack_system_image: 'CentOS 7 - devstack-pike - 20170901-2223'
+          openstack_system2_image: 'CentOS 7 - devstack-pike - 20170901-2223'
+
+    odl-ml2-driver-version: 'v2'
+    enable-openstack-services: 'placement-api,tempest'
+    enable-openstack-compute-services: 'placement-client'
+    security-group-mode: '{sg-mode}'
+
+- project:
+    name: netvirt-csit-openstack-integration-carbon
+    jobs:
+      - '{project}-csit-{topology}-openstack-{openstack}-{functionality}-{stream}'
+
+    project: 'netvirt'
+    stream: 'carbon'
+    branch: 'stable/carbon'
+    jre: 'openjdk8'
+    karaf-version: karaf3
+
+    topology:
+      - 1node:
+          openstack_system2_count: 2
+          odl_system_count: 1
+          enable-haproxy: 'no'
+          install-features: 'odl-netvirt-openstack'
+      - 3node:
+          openstack_system2_count: 3
+          odl_system_count: 3
+          enable-haproxy: 'yes'
+          install-features: 'odl-jolokia,odl-netvirt-openstack'
+
+    testplan: '{project}-{topology}-openstack.txt'
+
+    functionality:
+      - upstream-stateful:
+          sg-mode: 'stateful'
+      - upstream-stateful-snat-conntrack:
+          sg-mode: 'stateful'
+          odl-snat-mode: 'conntrack'
+      - gate-stateful:
+          sg-mode: 'stateful'
+      - gate-stateful-snat-conntrack:
+          sg-mode: 'stateful'
+          odl-snat-mode: 'conntrack'
+
+    openstack:
+      - ocata:
+          openstack-branch: 'stable/ocata'
+          odl-ml2-branch: 'stable/ocata'
+          openstack_system_image: 'CentOS 7 - devstack-ocata - 20170808-0528'
+          openstack_system2_image: 'CentOS 7 - devstack-ocata - 20170808-0528'
+      - pike:
+          openstack-branch: 'stable/pike'
+          devstack-hash: 'c2bb1020ac4f18df5aa90a13f3b6ee8eb2c15d65'
+          odl-ml2-branch: 'stable/pike'
+          odl-ml2-port-binding: 'pseudo-agentdb-binding'
+          openstack_system_image: 'CentOS 7 - devstack-pike - 20170901-2223'
+          openstack_system2_image: 'CentOS 7 - devstack-pike - 20170901-2223'
+
+    odl-ml2-driver-version: 'v2'
+    enable-openstack-services: 'placement-api,tempest'
+    enable-openstack-compute-services: 'placement-client'
+    security-group-mode: '{sg-mode}'
+
+- project:
+    name: netvirt-csit-openstack-integration-boron
+    jobs:
+      - '{project}-csit-{topology}-openstack-{openstack}-{functionality}-{stream}'
+
+    project: 'netvirt'
+    stream: 'boron'
+    branch: 'stable/boron'
+    jre: 'openjdk8'
+    karaf-version: karaf3
 
     topology:
       - 1node:
-          openstack_system_count: 1
           openstack_system2_count: 2
           odl_system_count: 1
           enable-haproxy: 'no'
           install-features: 'odl-netvirt-openstack'
       - 3node:
-          openstack_system_count: 1
           openstack_system2_count: 3
           odl_system_count: 3
           enable-haproxy: 'yes'
 
     functionality:
       - upstream-transparent:
-          schedule: ''
           sg-mode: 'transparent'
       - upstream-stateful:
-          schedule: ''
           sg-mode: 'stateful'
       - upstream-stateful-snat-conntrack:
-          schedule: ''
           sg-mode: 'stateful'
           odl-snat-mode: 'conntrack'
       - upstream-learn:
-          schedule: ''
           sg-mode: 'learn'
       - gate-learn:
-          schedule: ''
           sg-mode: 'learn'
       - gate-transparent:
-          schedule: ''
           sg-mode: 'transparent'
       - gate-stateful:
-          schedule: ''
-          sg-mode: 'stateful'
-      - gate-stateful-snat-conntrack:
-          schedule: ''
-          sg-mode: 'stateful'
-          odl-snat-mode: 'conntrack'
-      - gate-minimal-cluster:
-          schedule: ''
           sg-mode: 'stateful'
-          testplan: '{project}-{topology}-minimal-openstack.txt'
       - gate-minimal-transparent:
-          schedule: ''
           sg-mode: 'transparent'
           testplan: '{project}-{topology}-minimal-openstack.txt'
       - gate-tempest-transparent:
-          schedule: ''
           sg-mode: 'transparent'
           testplan: '{project}-{topology}-tempest-openstack.txt'
 
-    stream:
-      - oxygen:
-          branch: 'master'
-          jre: 'openjdk8'
-      - nitrogen:
-          branch: 'stable/nitrogen'
-          jre: 'openjdk8'
-      - carbon:
-          branch: 'stable/carbon'
-          jre: 'openjdk8'
-          karaf-version: karaf3
-      - boron:
-          branch: 'stable/boron'
-          jre: 'openjdk8'
-          karaf-version: karaf3
-
     openstack:
       - newton:
           openstack-branch: 'stable/newton'
           odl-ml2-branch: 'stable/newton'
-          openstack_system_image: 'CentOS 7 - devstack-newton - 20170808-0528'
-          openstack_system2_image: 'CentOS 7 - devstack-newton - 20170808-0528'
       - newton-nodl-v2:
           openstack-branch: 'stable/newton'
           odl-ml2-branch: 'stable/newton'
           odl-ml2-driver-version: 'v2'
-          openstack_system_image: 'CentOS 7 - devstack-newton - 20170808-0528'
-          openstack_system2_image: 'CentOS 7 - devstack-newton - 20170808-0528'
-      - ocata:
-          openstack-branch: 'stable/ocata'
-          odl-ml2-branch: 'stable/ocata'
-          odl-ml2-driver-version: 'v2'
-          openstack_system_image: 'CentOS 7 - devstack-newton - 20170808-0528'
-          openstack_system2_image: 'CentOS 7 - devstack-newton - 20170808-0528'
 
+    enable-openstack-services: 'tempest'
+    openstack_system_image: 'CentOS 7 - devstack-newton - 20170808-0528'
+    openstack_system2_image: 'CentOS 7 - devstack-newton - 20170808-0528'
     security-group-mode: '{sg-mode}'
 
 - project:
-    name: netvirt-csit-extensions-site-openstack-integration
+    name: netvirt-csit-sfc-openstack-integration
     jobs:
       - '{project}-csit-{topology}-openstack-{openstack}-{functionality}-{stream}'
 
 
     topology:
       - 1node:
-          openstack_system_count: 1
           openstack_system2_count: 2
           odl_system_count: 1
           enable-haproxy: 'no'
           install-features: 'odl-netvirt-sfc'
 
     functionality:
-      - extensions-sfc:
-          schedule: ''
+      - sfc:
+          enable-openstack-services: 'placement-api,tempest'
+          enable-openstack-compute_services: 'placement-client'
           enable-openstack-plugins: 'networking-odl,networking-sfc'
           testplan: '{project}-extensions-sfc.txt'
 
     stream:
-      - nitrogen:
+      - oxygen:
           branch: 'master'
           jre: 'openjdk8'
+      - nitrogen:
+          branch: 'stable/nitrogen'
+          jre: 'openjdk8'
       - carbon:
           branch: 'stable/carbon'
           jre: 'openjdk8'
           karaf-version: karaf3
 
     openstack:
-      - newton-nodl-v2:
-          openstack-branch: 'stable/newton'
-          odl-ml2-branch: 'stable/newton'
-          odl-ml2-driver-version: 'v2'
-          openstack_system_image: 'CentOS 7 - devstack-newton - 20170808-0528'
+      - pike:
+          openstack-branch: 'stable/pike'
+          devstack-hash: 'c2bb1020ac4f18df5aa90a13f3b6ee8eb2c15d65'
+          odl-ml2-branch: 'stable/pike'
+          odl-ml2-port-binding: 'pseudo-agentdb-binding'
+          openstack_system_image: 'CentOS 7 - devstack-pike - 20170901-2223'
+          openstack_system2_image: 'CentOS 7 - devstack-pike - 20170901-2223'
 
     security-group-mode: 'stateful'
index 4c29c7dcb93b2cc612d42fb646d2cf72405b3588..34c1fda885e71fe8f51f996ec2f1d7208b039fcf 100644 (file)
 
     # The project name
     functionality:
-      - upstream:
-          schedule: ''
-      - gate:
-          schedule: ''
+      - upstream
+      - gate
 
     stream:
       - boron:
index 3e94b1f831835761a704c006a13e48184626de02..48bec1cccfa6eb95a58b16e2b01f546b072885d6 100644 (file)
@@ -19,8 +19,6 @@
           karaf-version: karaf3
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index 160b4695e56c66dd685931dfce280f4a8e64fc1e..282b5a0fe184a0ccf99dfb90bd81024fcefee81f 100644 (file)
     stream:
       - oxygen:
           branch: 'master'
-          jdk: 'openjdk8'
+          # ideally, master (oxygen) would gate against Queens (current master) or 'R' release
+          # bug even the pike devstack environment is still unreliable. so sticking with Ocata
+          # for now
+          os-branch: 'ocata'
       - nitrogen:
           branch: 'stable/nitrogen'
-          jdk: 'openjdk8'
+          # ideally, master (oxygen) would gate against Queens (current master)
+          # bug even the pike devstack environment is still unreliable. so sticking with Ocata
+          # for now
+          os-branch: 'ocata'
       - carbon:
           branch: 'stable/carbon'
-          jdk: 'openjdk8'
+          os-branch: 'ocata'
           karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
-          jdk: 'openjdk8'
+          os-branch: 'newton'
           karaf-version: karaf3
 
+    jdk: 'openjdk8'
+
     feature:
       - current:
           csit-list: >
-              netvirt-csit-1node-openstack-ocata-gate-stateful-{stream}
-      - minimal-current:
-          csit-list: >
-              netvirt-csit-1node-openstack-ocata-gate-minimal-stateful-{stream}
-      - tempest-current:
-          csit-list: >
-              netvirt-csit-1node-openstack-ocata-gate-tempest-stateful-{stream}
+              netvirt-csit-1node-openstack-{os-branch}-gate-stateful-{stream}
       - cluster-current:
           csit-list: >
-              netvirt-csit-3node-openstack-ocata-gate-stateful-{stream}
+              netvirt-csit-3node-openstack-{os-branch}-gate-stateful-{stream}
       - cluster-minimal-current:
           csit-list: >
-               netvirt-csit-3node-openstack-ocata-gate-minimal-cluster-{stream}
-      - nodl-v1-current:
-          csit-list: >
-              netvirt-csit-1node-openstack-newton-gate-stateful-{stream}
-      - learn-current:
-          csit-list: >
-              netvirt-csit-1node-openstack-ocata-gate-learn-{stream}
-      - stateful-current:
-          csit-list: >
-              netvirt-csit-1node-openstack-ocata-gate-stateful-{stream}
-      - transparent-current:
-          csit-list: >
-              netvirt-csit-1node-openstack-ocata-gate-transparent-{stream}
+               netvirt-csit-3node-openstack-{os-branch}-gate-minimal-cluster-{stream}
       - snat-conntrack:
           csit-list: >
-              netvirt-csit-1node-openstack-ocata-gate-stateful-snat-conntrack-{stream}
+              netvirt-csit-1node-openstack-{os-branch}-gate-stateful-snat-conntrack-{stream}
       - hwvtep:
           csit-list: >
-              netvirt-csit-hwvtep-1node-openstack-ocata-gate-stateful-{stream}
+              netvirt-csit-hwvtep-1node-openstack-{os-branch}-gate-stateful-{stream}
 
 - project:
     name: netvirt-legacy-patch-test
@@ -78,7 +68,7 @@
       - legacy:
           csit-list: >
               netvirt-legacy-csit-1node-openstack-newton-nodl-v2-gate-{stream},
-              netvirt-legacy-csit-1node-openstack-basic-only-{stream}
+              netvirt-legacy-csit-1node-openstack-basic-all-{stream}
       - cluster-legacy:
           csit-list: >
               netvirt-legacy-csit-3node-openstack-newton-nodl-v2-gate-{stream},
index b544579d68cd6af7de05ecb2490224d0f4945107..3bd2307ab52a0e87b12af8fe9987f80c7feea9a6 100644 (file)
           karaf-version: karaf3
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
     # Features to install
-    install-features: 'odl-nic-console'
+    install-features: 'odl-nic-intent-common'
 
     # Robot custom options
     robot-options: ''
index c35fc9ed113119e9d0d1a31807edebc52e6859c7..2863f1159346f2be610bfb61823c9301c666ee81 100644 (file)
@@ -29,8 +29,6 @@
           karaf-version: karaf3
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index a78ea3e49514051cfa487f0711cb48123b520785..484d47e99e5a3fa412698849e10975601df6b228 100644 (file)
@@ -29,8 +29,6 @@
           karaf-version: karaf3
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index 34a0d95417b98a8321f14e1ead836630d9fe40ab..ba2541c9af8b7c8ff85ef9f03c657156d738085c 100644 (file)
@@ -29,8 +29,6 @@
           karaf-version: karaf3
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index d6b5d045b0a2f6899c33d874351c78941da6b671..94820c9aa67a69623cf54c86743c86b173500c2a 100644 (file)
@@ -30,8 +30,6 @@
           karaf-version: karaf3
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index 173c6bad676b3168859c7a298bf4981567943692..a1ee79ddfd3c9ba7ac43feb85171823d93fffc0b 100644 (file)
@@ -45,5 +45,4 @@
     # mininet image
     tools_system_image: Ubuntu 16.04 - mininet-ovs-25 - 20170808-0158
 
-    # Trigger jobs (on saturday)
-    schedule: 'H H * * 6'
+    schedule: '{schedule-saturday}'
index d1104aa11b78378b450ab514432a19c86b505c7b..2f789e50b8e71f0c53e2fde4199b51e3ba31843e 100644 (file)
     stream:
       - oxygen:
           branch: 'master'
-          jdk: 'openjdk8'
+          os-branch: 'ocata'
       - nitrogen:
           branch: 'stable/nitrogen'
-          jdk: 'openjdk8'
+          os-branch: 'ocata'
       - carbon:
           branch: 'stable/carbon'
-          jdk: 'openjdk8'
+          os-branch: 'ocata'
           karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
-          jdk: 'openjdk8'
+          os-branch: 'newton'
           karaf-version: karaf3
 
+    jdk: 'openjdk8'
+
     feature:
       - core:
           csit-list: >
-              openflowplugin-csit-1node-gate-flow-services-only-{stream},
               openflowplugin-csit-1node-gate-flow-services-all-{stream},
               openflowplugin-csit-1node-gate-scalability-only-{stream},
               openflowplugin-csit-1node-periodic-gate-scale-stats-collection-daily-only-{stream},
@@ -38,8 +39,8 @@
 
       - netvirt:
           csit-list: >
-              netvirt-csit-1node-openstack-ocata-gate-stateful-{stream}
+              netvirt-csit-1node-openstack-{os-branch}-gate-stateful-{stream}
 
       - cluster-netvirt:
           csit-list: >
-              netvirt-csit-3node-openstack-ocata-gate-stateful-{stream}
+              netvirt-csit-3node-openstack-{os-branch}-gate-stateful-{stream}
diff --git a/jjb/opflex/deps-inc-v1/libuv_tgz-build.sh b/jjb/opflex/deps-inc-v1/libuv_tgz-build.sh
deleted file mode 100644 (file)
index 54130ed..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-#!/bin/bash
-
-set -e
-set -x
-
-./autogen.sh
-ROOT=/tmp/opflex-prefix
-./configure --prefix=$ROOT
-mkdir install-root
-DESTDIR=`pwd`/install-root make clean install
-pushd install-root
-tar -czf libuv.tgz *
-popd
diff --git a/jjb/opflex/deps-inc-v1/openvswitch_tgz-build.sh b/jjb/opflex/deps-inc-v1/openvswitch_tgz-build.sh
deleted file mode 100644 (file)
index d939f6e..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-#!/bin/bash
-# Build script for openvswitch
-
-set -e
-set -x
-
-ROOT=/tmp/opflex-prefix
-DESTDIR=install-root
-
-mkdir -p "$DESTDIR"
-
-./boot.sh
-./configure --prefix="$ROOT" --enable-shared
-make -j4
-DESTDIR=`pwd`/$DESTDIR make install
-find lib ofproto -name "*.h" -exec cp --parents -t "$DESTDIR/$ROOT/include/openvswitch/" {} \;
-
-pushd $DESTDIR
-tar -czf openvswitch.tgz *
-popd
diff --git a/jjb/opflex/deps-inc-v1/rapidjson_tgz-build.sh b/jjb/opflex/deps-inc-v1/rapidjson_tgz-build.sh
deleted file mode 100644 (file)
index 47b1fa0..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-#!/bin/bash
-# Build script for rapidjson
-
-set -e
-set -x
-
-ROOT=/tmp/opflex-prefix
-DESTDIR=install-root
-
-mkdir -p "$DESTDIR/$ROOT/lib/pkgconfig"
-mkdir -p "$DESTDIR/$ROOT/include"
-
-cp -R include/rapidjson "$DESTDIR/$ROOT/include"
-sed -e "s|@INCLUDE_INSTALL_DIR@|$ROOT/include|" \
-    -e "s|@PROJECT_NAME@|RapidJSON|" \
-    -e "s|@LIB_VERSION_STRING@|1.0.2|" RapidJSON.pc.in > \
-    "$DESTDIR/$ROOT/lib/pkgconfig/RapidJSON.pc"
-
-pushd $DESTDIR
-tar -czf rapidjson.tgz *
diff --git a/jjb/opflex/deps-inc-v2/openvswitch_tgz-build.sh b/jjb/opflex/deps-inc-v2/openvswitch_tgz-build.sh
deleted file mode 100644 (file)
index 182fec2..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-#!/bin/bash
-# Build script for openvswitch
-
-set -e
-set -x
-
-ROOT=/tmp/opflex-prefix
-DESTDIR=install-root
-
-mkdir -p "$DESTDIR"
-
-./boot.sh
-./configure --prefix="$ROOT" --enable-shared
-make -j4
-DESTDIR=`pwd`/$DESTDIR make install
-
-# OVS headers get installed to weird and inconsistent locations.  Try
-# to clean things up
-mkdir -p $DESTDIR/$ROOT/include/openvswitch/openvswitch
-mv $DESTDIR/$ROOT/include/openvswitch/*.h $DESTDIR/$ROOT/include/openvswitch/openvswitch
-mv $DESTDIR/$ROOT/include/openflow $DESTDIR/$ROOT/include/openvswitch
-cp -t "$DESTDIR/$ROOT/include/openvswitch/" include/*.h
-find lib -name "*.h" -exec cp --parents -t "$DESTDIR/$ROOT/include/openvswitch/" {} \;
-
-pushd $DESTDIR
-tar -czf openvswitch.tgz *
-popd
-
index 6d2699c8860f1b8a698705ef4c6c5ff49d003631..bc59fd09a6558e9aa0926cdc8b026e7e9d81c426 100644 (file)
@@ -8,37 +8,28 @@
     stream:
       - oxygen:
           branch: 'master'
-          jdk: 'openjdk8'
+          libuv-version: '1.8.0'
+          rapidjson-version: '1.0.2'
+          openvswitch-version: '2.6.0'
       - nitrogen:
           branch: 'stable/nitrogen'
-          jdk: openjdk8
+          libuv-version: '1.8.0'
+          rapidjson-version: '1.0.2'
+          openvswitch-version: '2.6.0'
       - carbon:
           branch: 'stable/carbon'
-          jdk: openjdk8
+          libuv-version: '1.8.0'
+          rapidjson-version: '1.0.2'
+          openvswitch-version: '2.6.0'
       - boron:
           branch: 'stable/boron'
-          jdk: openjdk8
+          libuv-version: '1.7.5'
+          rapidjson-version: '1.0.1'
+          openvswitch-version: 'noiro'
 
     project: 'opflex'
     archive-artifacts: '**/*.tar.gz'
-
-- builder:
-    name: opflex-build
-    builders:
-      - maven-target:
-          maven-version: 'mvn33'
-          pom: genie/pom.xml
-          goals: compile
-      - copyartifact:
-          project: opflex-libuv_tgz-{stream}
-          flatten: true
-      - copyartifact:
-          project: opflex-rapidjson_tgz-{stream}
-          flatten: true
-      - copyartifact:
-          project: opflex-openvswitch_tgz-{stream}
-          flatten: true
-      - shell: !include-raw-escape: opflex-build.sh
+    jdk: 'openjdk8'
 
 - job-template:
     name: 'opflex-verify-{stream}'
           branch: '{branch}'
           refspec: 'refs/heads/{branch}'
           artifacts: '{archive-artifacts}'
+      - string:
+          name: LIBUV_VERSION
+          # yamllint disable-line rule:line-length
+          default: '{libuv-version}'
+          description: 'libuv version'
+      - string:
+          name: RAPIDJSON_VERSION
+          # yamllint disable-line rule:line-length
+          default: '{rapidjson-version}'
+          description: 'rapidjson version'
+      - string:
+          name: OPENVSWITCH_VERSION
+          # yamllint disable-line rule:line-length
+          default: '{openvswitch-version}'
+          description: 'openvswitch-version'
 
     scm:
       - gerrit-trigger-scm:
           branch: '{branch}'
           refspec: 'refs/heads/{branch}'
           artifacts: ''
+      - string:
+          name: LIBUV_VERSION
+          # yamllint disable-line rule:line-length
+          default: '{libuv-version}'
+          description: 'libuv version'
+      - string:
+          name: RAPIDJSON_VERSION
+          # yamllint disable-line rule:line-length
+          default: '{rapidjson-version}'
+          description: 'rapidjson version'
+      - string:
+          name: OPENVSWITCH_VERSION
+          # yamllint disable-line rule:line-length
+          default: '{openvswitch-version}'
+          description: 'openvswitch version'
 
     scm:
       - gerrit-trigger-scm:
index 963228095cda3832b30d5d5936d45db318355d53..69555d3bb64b13dd9403f3bae9dc3117a7169243 100644 (file)
 - project:
     name: opflex-dependencies
     jobs:
-      - 'opflex-libuv_tgz-{stream}'
-      - 'opflex-rapidjson_tgz-{stream}'
-      - 'opflex-openvswitch_tgz-{stream}'
+      - 'opflex-libuv-{stream}'
+      - 'opflex-rapidjson-{stream}'
+      - 'opflex-openvswitch-{stream}'
 
+    # todo: remove 'ovs-scm' after boron EOL
     stream:
       - oxygen:
           branch: 'master'
-          libuv-build: v1
-          libuv-scm: v2
-          rapidjson-build: v1
-          rapidjson-scm: v2
-          openvswitch-build: v2
-          openvswitch-scm: v2
+          libuv-version: '1.8.0'
+          rapidjson-version: '1.0.2'
+          openvswitch-version: '2.6.0'
+          ovs-scm: v2
       - nitrogen:
           branch: 'stable/nitrogen'
-          libuv-build: v1
-          libuv-scm: v2
-          rapidjson-build: v1
-          rapidjson-scm: v2
-          openvswitch-build: v2
-          openvswitch-scm: v2
+          libuv-version: '1.8.0'
+          rapidjson-version: '1.0.2'
+          openvswitch-version: '2.6.0'
+          ovs-scm: v2
       - carbon:
           branch: 'stable/carbon'
-          libuv-build: v1
-          libuv-scm: v2
-          rapidjson-build: v1
-          rapidjson-scm: v2
-          openvswitch-build: v2
-          openvswitch-scm: v2
+          libuv-version: '1.8.0'
+          rapidjson-version: '1.0.2'
+          openvswitch-version: '2.6.0'
+          ovs-scm: v2
       - boron:
           branch: 'stable/boron'
-          libuv-build: v1
-          libuv-scm: v1
-          rapidjson-build: v1
-          rapidjson-scm: v1
-          openvswitch-build: v1
-          openvswitch-scm: v1
+          libuv-version: '1.7.5'
+          rapidjson-version: '1.0.1'
+          openvswitch-version: 'noiro'
+          ovs-scm: v1
 
     project: 'opflex'
 
-- scm:
-    name: 'git-opflex-libuv-v1'
-    scm:
-      - git:
-          url: https://github.com/libuv/libuv.git
-          branches:
-            - 'refs/tags/v1.7.5'
-          wipe-workspace: true
-
-- scm:
-    name: 'git-opflex-libuv-v2'
-    scm:
-      - git:
-          url: https://github.com/libuv/libuv.git
-          branches:
-            - 'refs/tags/v1.8.0'
-          wipe-workspace: true
-
-- scm:
-    name: 'git-opflex-rapidjson-v1'
-    scm:
-      - git:
-          url: https://github.com/miloyip/rapidjson.git
-          branches:
-            - 'refs/tags/v1.0.1'
-          wipe-workspace: true
-
-- scm:
-    name: 'git-opflex-rapidjson-v2'
-    scm:
-      - git:
-          url: https://github.com/miloyip/rapidjson.git
-          branches:
-            - 'refs/tags/v1.0.2'
-          wipe-workspace: true
-
-- scm:
-    name: 'git-opflex-ovs-v1'
-    scm:
-      - git:
-          url: https://github.com/noironetworks/ovs.git
-          branches:
-            - 'origin/noiro'
-          wipe-workspace: true
-
-- scm:
-    name: 'git-opflex-ovs-v2'
-    scm:
-      - git:
-          url: https://github.com/openvswitch/ovs.git
-          branches:
-            - 'refs/tags/v2.6.0'
-          wipe-workspace: true
-
-- builder:
-    name: 'builder-opflex-libuv-v1'
-    builders:
-      - shell: !include-raw-escape: deps-inc-v1/libuv_tgz-build.sh
+    mvn-opts: ''
+    mvn-params: ''
+    mvn-version: mvn33
+
+    # common parameters required for 'lf-infra-deploy-maven-file' builder
+    repo-id: 'thirdparty'
+    upload-files-dir: '$WORKSPACE/upload_files'
 
 - job-template:
-    name: 'opflex-libuv_tgz-{stream}'
+    name: 'opflex-libuv-{stream}'
 
     project-type: freestyle
     node: centos7-java-builder-2c-8g
     concurrent: true
 
+    group-id: 'libuv'
+
     properties:
       - opendaylight-infra-properties:
           build-days-to-keep: '{build-days-to-keep}'
 
+    parameters:
+      - opendaylight-infra-parameters:
+          os-cloud: '{os-cloud}'
+          project: '{project}'
+          branch: '{branch}'
+          refspec: 'refs/heads/{branch}'
+          artifacts: '{archive-artifacts}'
+      - lf-infra-maven-parameters:
+          mvn-opts: '{mvn-opts}'
+          mvn-params: '{mvn-params}'
+          mvn-version: '{mvn-version}'
+          staging-profile-id: ''
+      - string:
+          name: LIBUV_VERSION
+          # yamllint disable-line rule:line-length
+          default: '{libuv-version}'
+          description: 'libuv version'
+
     scm:
-      - git-opflex-libuv-{libuv-scm}
+      - git-opflex-libuv
 
     wrappers:
       - opendaylight-infra-wrappers:
           build-timeout: '{build-timeout}'
 
     builders:
-      - builder-opflex-libuv-{libuv-build}
+      - opflex-build-libuv
+      - lf-infra-deploy-maven-file:
+          global-settings-file: 'global-settings'
+          settings-file: 'opflex-settings'
+          mvn-version: '{mvn-version}'
+          repo-id: '{repo-id}'
+          group-id: '{group-id}'
+          upload-files-dir: '{upload-files-dir}'
+          maven-repo-url: '$NEXUS_URL/content/repositories/thirdparty'
 
     publishers:
       - email-notification:
           email-recipients: '{email-recipients}'
           email-prefix: '[opflex]'
-      - archive:
-          artifacts: 'install-root/*.tgz'
-
-- builder:
-    name: 'builder-opflex-rapidjson-v1'
-    builders:
-      - shell: !include-raw-escape: deps-inc-v1/rapidjson_tgz-build.sh
+      - lf-infra-publish
 
 - job-template:
-    name: 'opflex-rapidjson_tgz-{stream}'
+    name: 'opflex-rapidjson-{stream}'
 
     project-type: freestyle
     node: centos7-java-builder-2c-8g
     concurrent: true
 
+    group-id: 'rapidjson'
+
     properties:
       - opendaylight-infra-properties:
           build-days-to-keep: '{build-days-to-keep}'
 
+    parameters:
+      - opendaylight-infra-parameters:
+          os-cloud: '{os-cloud}'
+          project: '{project}'
+          branch: '{branch}'
+          refspec: 'refs/heads/{branch}'
+          artifacts: '{archive-artifacts}'
+      - lf-infra-maven-parameters:
+          mvn-opts: '{mvn-opts}'
+          mvn-params: '{mvn-params}'
+          mvn-version: '{mvn-version}'
+          staging-profile-id: ''
+      - string:
+          name: RAPIDJSON_VERSION
+          # yamllint disable-line rule:line-length
+          default: '{rapidjson-version}'
+          description: 'rapidjson version'
+
     scm:
-      - git-opflex-rapidjson-{rapidjson-scm}
+      - git-opflex-rapidjson
 
     wrappers:
       - opendaylight-infra-wrappers:
           build-timeout: '{build-timeout}'
 
     builders:
-      - builder-opflex-rapidjson-{rapidjson-build}
+      - opflex-build-rapidjson
+      - lf-infra-deploy-maven-file:
+          global-settings-file: 'global-settings'
+          settings-file: 'opflex-settings'
+          mvn-version: '{mvn-version}'
+          repo-id: '{repo-id}'
+          group-id: '{group-id}'
+          upload-files-dir: '{upload-files-dir}'
+          maven-repo-url: '$NEXUS_URL/content/repositories/thirdparty'
 
     publishers:
       - email-notification:
           email-recipients: '{email-recipients}'
           email-prefix: '[opflex]'
-      - archive:
-          artifacts: 'install-root/*.tgz'
-
-- builder:
-    name: 'builder-opflex-openvswitch-v1'
-    builders:
-      - shell: !include-raw: deps-inc-v1/openvswitch_tgz-build.sh
-
-- builder:
-    name: 'builder-opflex-openvswitch-v2'
-    builders:
-      - shell: !include-raw: deps-inc-v2/openvswitch_tgz-build.sh
+      - lf-infra-publish
 
 - job-template:
-    name: 'opflex-openvswitch_tgz-{stream}'
+    name: 'opflex-openvswitch-{stream}'
 
     project-type: freestyle
     node: centos7-java-builder-2c-8g
     concurrent: true
 
+    group-id: 'openvswitch'
+
     properties:
       - opendaylight-infra-properties:
           build-days-to-keep: '{build-days-to-keep}'
 
+    parameters:
+      - opendaylight-infra-parameters:
+          os-cloud: '{os-cloud}'
+          project: '{project}'
+          branch: '{branch}'
+          refspec: 'refs/heads/{branch}'
+          artifacts: '{archive-artifacts}'
+      - lf-infra-maven-parameters:
+          mvn-opts: '{mvn-opts}'
+          mvn-params: '{mvn-params}'
+          mvn-version: '{mvn-version}'
+          staging-profile-id: ''
+      - string:
+          name: OPENVSWITCH_VERSION
+          # yamllint disable-line rule:line-length
+          default: '{openvswitch-version}'
+          description: 'openvswitch-version'
+
     scm:
-      - git-opflex-ovs-{openvswitch-scm}
+      - git-opflex-ovs-{ovs-scm}
 
     wrappers:
       - opendaylight-infra-wrappers:
           build-timeout: '{build-timeout}'
 
     builders:
-      - builder-opflex-openvswitch-{openvswitch-build}
+      - opflex-build-openvswitch
+      - lf-infra-deploy-maven-file:
+          global-settings-file: 'global-settings'
+          settings-file: 'opflex-settings'
+          mvn-version: '{mvn-version}'
+          repo-id: '{repo-id}'
+          group-id: '{group-id}'
+          upload-files-dir: '{upload-files-dir}'
+          maven-repo-url: '$NEXUS_URL/content/repositories/thirdparty'
 
     publishers:
       - email-notification:
           email-recipients: '{email-recipients}'
           email-prefix: '[opflex]'
-      - archive:
-          artifacts: 'install-root/*.tgz'
+      - lf-infra-publish
diff --git a/jjb/opflex/opflex-macros.yaml b/jjb/opflex/opflex-macros.yaml
new file mode 100644 (file)
index 0000000..44ebfef
--- /dev/null
@@ -0,0 +1,114 @@
+---
+# OpFlex macros
+
+- builder:
+    name: opflex-build
+    builders:
+      - maven-target:
+          maven-version: 'mvn33'
+          pom: genie/pom.xml
+          goals: compile
+      - shell: !include-raw-escape: scripts/opflex-build.sh
+
+- builder:
+    name: 'opflex-build-libuv'
+    builders:
+      - shell: !include-raw-escape: scripts/libuv-build.sh
+
+- builder:
+    name: 'opflex-build-openvswitch'
+    builders:
+      - shell: !include-raw: scripts/openvswitch-build.sh
+
+- builder:
+    name: 'opflex-build-rapidjson'
+    builders:
+      - shell: !include-raw-escape: scripts/rapidjson-build.sh
+
+- builder:
+    name: opflex-deploy-maven-file
+    # Todo: Remove this builder when the generic version of the builder is
+    # available in global-jjb. Change no: 5753
+    # Deploy artifacts to a repository.
+    #
+    # The builder requires passing the following parameters
+    # REPO_ID:           Repository ID
+    # GROUP_ID:          Group ID of the repository
+    # UPLOAD_FILES_PATH: Path to directory containing one or more files
+    builders:
+      - lf-maven-install:
+          mvn-version: '{mvn-version}'
+      - lf-provide-maven-settings:
+          global-settings-file: '{global-settings-file}'
+          settings-file: '{settings-file}'
+      - inject:
+          properties-content: |
+              MAVEN_REPO_URL=file://$WORKSPACE/m2repo
+              REPO_ID={repo-id}
+              GROUP_ID={group-id}
+              UPLOAD_FILES_PATH={upload-files-dir}
+      - shell: !include-raw-escape:
+          - ../global-jjb/shell/lftools-install.sh
+          - ../global-jjb/shell/common-variables.sh
+          - scripts/deploy-opflex.sh
+
+- builder:
+    name: opflex-maven-stage
+    # Todo: Migrate to the generic version of the builders available in
+    # global-jjb. Change no: 5753
+    # Stage files to Nexus repository.
+    #
+    # The builder requires passing the following parameters
+    # REPO_ID             : Repository ID
+    # GROUP_ID            : Group ID of the repository
+    # UPLOAD_FILES_PATH   : Path to directory containing one or more files
+    # STAGING_PROFILE_ID  : Staging profile id created on Nexus
+    builders:
+      - lf-provide-maven-settings:
+          global-settings-file: '{global-settings-file}'
+          settings-file: '{settings-file}'
+      - lf-infra-create-netrc:
+          server-id: opendaylight-staging
+      - inject:
+          properties-content: |
+              STAGING_PROFILE_ID={staging-profile-id}
+      - shell: !include-raw-escape:
+          - ../global-jjb/shell/lftools-install.sh
+          - ../global-jjb/shell/maven-stage.sh
+
+- scm:
+    name: 'git-opflex-libuv'
+    scm:
+      - git:
+          url: https://github.com/libuv/libuv.git
+          branches:
+            - 'refs/tags/v$LIBUV_VERSION'
+          wipe-workspace: true
+
+- scm:
+    name: 'git-opflex-ovs-v2'
+    scm:
+      - git:
+          url: https://github.com/openvswitch/ovs.git
+          branches:
+            - 'refs/tags/v$OPENVSWITCH_VERSION'
+          wipe-workspace: true
+
+# todo: remove 'git-opflex-ovs-v1' after boron EOL
+- scm:
+    name: 'git-opflex-ovs-v1'
+    scm:
+      - git:
+          url: https://github.com/noironetworks/ovs.git
+          branches:
+            - 'origin/noiro'
+          wipe-workspace: true
+
+- scm:
+    name: 'git-opflex-rapidjson'
+    scm:
+      - git:
+          url: https://github.com/miloyip/rapidjson.git
+          branches:
+            - 'refs/tags/v$RAPIDJSON_VERSION'
+          wipe-workspace: true
index 09927a0c2431b9ca9301cd10c97f996005bc9f9b..7dd048e1ae472a35ebafee2a8c7e6f87584238ab 100644 (file)
@@ -7,20 +7,30 @@
     stream:
       - oxygen:
           branch: 'master'
-          jdk: 'openjdk8'
+          libuv-version: '1.8.0'
+          rapidjson-version: '1.0.2'
+          openvswitch-version: '2.6.0'
       - nitrogen:
           branch: 'stable/nitrogen'
-          jdk: openjdk8
+          libuv-version: '1.8.0'
+          rapidjson-version: '1.0.2'
+          openvswitch-version: '2.6.0'
       - carbon:
           branch: 'stable/carbon'
-          jdk: openjdk8
+          libuv-version: '1.8.0'
+          rapidjson-version: '1.0.2'
+          openvswitch-version: '2.6.0'
       - boron:
           branch: 'stable/boron'
-          jdk: openjdk8
+          libuv-version: '1.7.5'
+          rapidjson-version: '1.0.1'
+          openvswitch-version: 'origin/noiro'
 
     project: 'opflex'
     project-name: 'opflex'
 
+    jdk: 'openjdk8'
+
     branch: master
     global-settings-file: global-settings
     settings-file: opflex-settings
     # Used by the release job
     staging-profile-id: 906b0d53d714e
 
-
-- builder:
-    name: opflex-deploy-maven-file
-    # Todo: Remove this builder when the generic version of the builder is
-    # available in global-jjb. Change no: 5753
-    # Deploy artifacts to a repository.
-    #
-    # The builder requires passing the following parameters
-    # REPO_ID:           Repository ID
-    # GROUP_ID:          Group ID of the repository
-    # UPLOAD_FILES_PATH: Path to directory containing one or more files
-    builders:
-      - lf-maven-install:
-          mvn-version: '{mvn-version}'
-      - lf-provide-maven-settings:
-          global-settings-file: '{global-settings-file}'
-          settings-file: '{settings-file}'
-      - inject:
-          properties-content: |
-              MAVEN_REPO_URL=file://$WORKSPACE/m2repo
-              REPO_ID={repo-id}
-              GROUP_ID={group-id}
-              UPLOAD_FILES_PATH={upload-files-dir}
-      - shell: !include-raw-escape:
-          - ../global-jjb/shell/lftools-install.sh
-          - ../global-jjb/shell/common-variables.sh
-          - deploy-opflex.sh
-
-- builder:
-    name: opflex-maven-stage
-    # Todo: Migrate to the generic version of the builders available in
-    # global-jjb. Change no: 5753
-    # Stage files to Nexus repository.
-    #
-    # The builder requires passing the following parameters
-    # REPO_ID             : Repository ID
-    # GROUP_ID            : Group ID of the repository
-    # UPLOAD_FILES_PATH   : Path to directory containing one or more files
-    # STAGING_PROFILE_ID  : Staging profile id created on Nexus
-    builders:
-      - lf-provide-maven-settings:
-          global-settings-file: '{global-settings-file}'
-          settings-file: '{settings-file}'
-      - lf-infra-create-netrc:
-          server-id: opendaylight-staging
-      - inject:
-          properties-content: |
-              STAGING_PROFILE_ID={staging-profile-id}
-      - shell: !include-raw-escape:
-          - ../global-jjb/shell/lftools-install.sh
-          - ../global-jjb/shell/maven-stage.sh
-
 - job-template:
     name: 'opflex-release-{stream}'
 
           mvn-params: '{mvn-params}'
           mvn-version: '{mvn-version}'
           staging-profile-id: '{staging-profile-id}'
+      - string:
+          name: LIBUV_VERSION
+          # yamllint disable-line rule:line-length
+          default: '{libuv-version}'
+          description: 'libuv version to pull from thirdparty repository'
+      - string:
+          name: RAPIDJSON_VERSION
+          # yamllint disable-line rule:line-length
+          default: '{rapidjson-version}'
+          description: 'rapidjson version to pull from thirdparty repository'
+      - string:
+          name: OPENVSWITCH_VERSION
+          # yamllint disable-line rule:line-length
+          default: '{openvswitch-version}'
+          description: 'openvswitch version to pull from thirdparty repository'
 
     scm:
       - gerrit-trigger-scm:
similarity index 97%
rename from jjb/opflex/deploy-opflex.sh
rename to jjb/opflex/scripts/deploy-opflex.sh
index 4d7b95a3847c019c42b8ea192ec7d7f626137029..2fa61bd60e63dd22c5c6f550b8ea8548e89dc23b 100644 (file)
@@ -16,7 +16,7 @@
 # $REPO_ID                 :  Provided by a job parameter.
 # $GROUP_ID                :  Provided by a job parameter.
 # $UPLOAD_FILES_PATH        :  Provided by a job parameter.
-echo "---> deploy-opflex.sh"
+echo "---> scripts/deploy-opflex.sh"
 
 # DO NOT enable -u because $MAVEN_PARAMS and $MAVEN_OPTIONS could be unbound.
 # Ensure we fail the job if any steps fail.
diff --git a/jjb/opflex/scripts/libuv-build.sh b/jjb/opflex/scripts/libuv-build.sh
new file mode 100644 (file)
index 0000000..eea1bef
--- /dev/null
@@ -0,0 +1,27 @@
+#!/bin/bash
+# SPDX-License-Identifier: EPL-1.0
+##############################################################################
+# Copyright (c) 2017 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
+##############################################################################
+echo "---> scripts/libuv-build.sh"
+
+set -e
+set -x
+
+./autogen.sh
+ROOT=/tmp/opflex-prefix
+./configure --prefix=$ROOT
+mkdir install-root
+DESTDIR=`pwd`/install-root make clean install
+pushd install-root
+tar -cvzf "libuv-$LIBUV_VERSION.tar.gz" *
+# Move tarball to dir of files that will be uploaded to Nexus
+UPLOAD_FILES_PATH="$WORKSPACE/upload_files"
+mkdir -p "$UPLOAD_FILES_PATH"
+mv *.tar.gz "$_"
+popd
diff --git a/jjb/opflex/scripts/openvswitch-build.sh b/jjb/opflex/scripts/openvswitch-build.sh
new file mode 100644 (file)
index 0000000..2d379c7
--- /dev/null
@@ -0,0 +1,44 @@
+#!/bin/bash
+# SPDX-License-Identifier: EPL-1.0
+##############################################################################
+# Copyright (c) 2017 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
+##############################################################################
+# Build script for openvswitch
+
+set -e
+set -x
+
+echo "---> scripts/openvswitch-build.sh"
+
+ROOT=/tmp/opflex-prefix
+DESTDIR=install-root
+
+mkdir -p "$DESTDIR"
+
+./boot.sh
+./configure --prefix="$ROOT" --enable-shared
+make -j4
+DESTDIR=`pwd`/$DESTDIR make install
+
+if [[ $OPENVSWITCH_VERSION =~ 2.6.0 ]]; then
+    mkdir -p $DESTDIR/$ROOT/include/openvswitch/openvswitch
+    mv $DESTDIR/$ROOT/include/openvswitch/*.h $DESTDIR/$ROOT/include/openvswitch/openvswitch
+    mv $DESTDIR/$ROOT/include/openflow $DESTDIR/$ROOT/include/openvswitch
+    cp -t "$DESTDIR/$ROOT/include/openvswitch/" include/*.h
+    find lib -name "*.h" -exec cp --parents -t "$DESTDIR/$ROOT/include/openvswitch/" {} \;
+elif [[ $OPENVSWITCH_VERSION =~ noiro ]]; then
+    find lib ofproto -name "*.h" -exec cp --parents -t "$DESTDIR/$ROOT/include/openvswitch/" {} \;
+fi
+
+pushd $DESTDIR
+tar -cvzf "openvswitch-$OPENVSWITCH_VERSION.tar.gz" *
+# Move tarball to dir of files that will be uploaded to Nexus
+UPLOAD_FILES_PATH="$WORKSPACE/upload_files"
+mkdir -p "$UPLOAD_FILES_PATH"
+mv *.tar.gz "$_"
+popd
similarity index 52%
rename from jjb/opflex/opflex-build.sh
rename to jjb/opflex/scripts/opflex-build.sh
index a35cecd8d74bfbf20b6f90539c9e34d72ce7dd81..ed202bff8c00df7d47ea02629da053aaf3e44ea3 100644 (file)
@@ -1,4 +1,15 @@
 #!/bin/bash
+# SPDX-License-Identifier: EPL-1.0
+##############################################################################
+# Copyright (c) 2017 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
+##############################################################################
+echo "---> scripts/opflex-build.sh"
+
 # Build script for opflex
 
 set -e
@@ -15,9 +26,14 @@ cleanup
 mkdir -p "$ROOT"
 trap cleanup EXIT
 
-tar -xz -C "$ROOT" --strip-components=2 -f libuv.tgz
-tar -xz -C "$ROOT" --strip-components=2 -f rapidjson.tgz
-tar -xz -C "$ROOT" --strip-components=2 -f openvswitch.tgz
+# Download the artifacts from nexus thirdparty
+wget -nv ${NEXUS_URL}/service/local/repositories/thirdparty/content/openvswitch/openvswitch/${OPENVSWITCH_VERSION}/openvswitch-${OPENVSWITCH_VERSION}.tar.gz
+wget -nv ${NEXUS_URL}/service/local/repositories/thirdparty/content/rapidjson/rapidjson/${RAPIDJSON_VERSION}/rapidjson-${RAPIDJSON_VERSION}.tar.gz
+wget -nv ${NEXUS_URL}/service/local/repositories/thirdparty/content/libuv/libuv/${LIBUV_VERSION}/libuv-${LIBUV_VERSION}.tar.gz
+
+tar -xz -C "$ROOT" --strip-components=2 -f libuv-${LIBUV_VERSION}.tar.gz
+tar -xz -C "$ROOT" --strip-components=2 -f rapidjson-${RAPIDJSON_VERSION}.tar.gz
+tar -xz -C "$ROOT" --strip-components=2 -f openvswitch-${OPENVSWITCH_VERSION}.tar.gz
 
 export PATH="$ROOT/bin:$PATH"
 export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$ROOT/lib"
diff --git a/jjb/opflex/scripts/rapidjson-build.sh b/jjb/opflex/scripts/rapidjson-build.sh
new file mode 100644 (file)
index 0000000..2ed6560
--- /dev/null
@@ -0,0 +1,36 @@
+#!/bin/bash
+# SPDX-License-Identifier: EPL-1.0
+##############################################################################
+# Copyright (c) 2017 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
+##############################################################################
+echo "---> scripts/rapidjson-build.sh"
+
+# Build script for rapidjson
+
+set -e
+set -x
+
+ROOT=/tmp/opflex-prefix
+DESTDIR=install-root
+
+mkdir -p "$DESTDIR/$ROOT/lib/pkgconfig"
+mkdir -p "$DESTDIR/$ROOT/include"
+
+cp -R include/rapidjson "$DESTDIR/$ROOT/include"
+sed -e "s|@INCLUDE_INSTALL_DIR@|$ROOT/include|" \
+    -e "s|@PROJECT_NAME@|RapidJSON|" \
+    -e "s|@LIB_VERSION_STRING@|1.0.2|" RapidJSON.pc.in > \
+    "$DESTDIR/$ROOT/lib/pkgconfig/RapidJSON.pc"
+
+pushd $DESTDIR
+tar -cvzf "rapidjson-$RAPIDJSON_VERSION.tar.gz" *
+# Move tarball to dir of files that will be uploaded to Nexus
+UPLOAD_FILES_PATH="$WORKSPACE/upload_files"
+mkdir -p "$UPLOAD_FILES_PATH"
+mv *.tar.gz "$_"
+popd
index 32f8f7eb50e9c6e386880be5af7fff875b449b45..df7fbf19b631f44c784cc3694223699c83edc156 100644 (file)
@@ -30,8 +30,6 @@
           karaf-version: karaf3
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index 496716dc097c2422148d46a07766099caf42b39f..c2c0364675bf765dcdee75e53baec704df4919eb 100644 (file)
     stream:
       - oxygen:
           branch: 'master'
-          jdk: 'openjdk8'
+          os-branch: 'pike'
       - nitrogen:
           branch: 'stable/nitrogen'
-          jdk: 'openjdk8'
+          os-branch: 'ocata'
       - carbon:
           branch: 'stable/carbon'
-          jdk: 'openjdk8'
+          os-branch: 'ocata'
           karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
-          jdk: 'openjdk8'
+          os-branch: 'ocata'
           karaf-version: karaf3
 
+    jdk: 'openjdk8'
+
     feature:
       - genius:
           csit-list: >
-              genius-csit-1node-genius-only-{stream}
+              genius-csit-1node-genius-all-{stream}
       - netvirt:
           csit-list: >
-              netvirt-csit-1node-openstack-ocata-gate-stateful-{stream}
+              netvirt-csit-1node-openstack-{os-branch}-gate-stateful-{stream}
       - l2gw:
           csit-list: >
-              netvirt-csit-hwvtep-1node-openstack-newton-gate-transparent-{stream}
+              netvirt-csit-hwvtep-1node-openstack-{os-branch}-gate-stateful-{stream}
 
       - core:
           csit-list: >
-              ovsdb-csit-1node-gate-southbound-only-{stream},
               ovsdb-csit-1node-gate-southbound-all-{stream},
               ovsdb-csit-3node-gate-clustering-only-{stream}
index 0fd1c418af72c5a85edf9ccff9f10d8873a5000d..fd529707c7b52e64430437fa8c848f987994d528 100644 (file)
@@ -36,7 +36,7 @@
           build-timeout: '{build-timeout}'
 
     triggers:
-      - timed: 'H H * * 6'
+      - timed: '{schedule-saturday}'
       - gerrit-trigger-patch-sonar:
           server-name: '{server-name}'
           name: 'ovsdb'
index cd627056a9d5b1aa6b822412d2a9f37af0659932..eeb61529704f2318443b713d310609bac7fead95 100644 (file)
@@ -29,8 +29,6 @@
           karaf-version: karaf3
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index eb2e88d2f118c0dad2614c53ee71e382c0ed16ca..224b98e54f1959f2e1b9128fb5a1403df8f07f86 100644 (file)
     # Timeout in minutes
     build-timeout: 360
     build-node: centos7-java-builder-2c-8g
+    schedule: ''
+    schedule-saturday: 'H H * * 6'
+    schedule-weekly: 'H 23 * * 6'
+    schedule-high-frequency: 'H H/4 * * *'
 
     email-recipients: 'jenkins@lists.opendaylight.org'
     odl-ml2-driver-repo: 'https://github.com/openstack/networking-odl'
     lftools-version: <1.0.0
 
     # defaults for parameters installing openstack for csit jobs
+    devstack-hash: ''
     create-initial-networks: 'False'
     disable-odl-l3-service-plugin: 'no'
-    disable-openstack-services: 'swift,cinder,n-net,q-vpn,n-cpu'
+    disable-openstack-services: ''
     enable-networking-l2gw: 'no'
     enable-openstack-plugins: 'networking-odl'
-    enable-openstack-services: 'q-svc,q-dhcp,q-meta,n-cauth,tempest'
+    enable-openstack-services: ''
+    enable-openstack-compute-services: ''
     ipsec-vxlan-tunnels-enabled: 'no'
     lbaas-service-provider: ''
     num-openstack-sites: 1
index 1c58b82896eeca8eba7d7d50c2273f4777a078fa..e25c33e1ba2d578fbc71b2263cfa1baa6fad2e2e 100644 (file)
@@ -44,6 +44,8 @@
           build-timeout: 75
       - devstack-pre-pip-ocata:
           build-timeout: 60
+      - devstack-pre-pip-pike:
+          build-timeout: 75
       - docker
       - gbp
       - java-builder:
@@ -62,6 +64,8 @@
         templates: mininet
       - platforms: centos
         templates: mininet-ovs-2.5
+      - platforms: centos
+        templates: mininet-ovs-2.6
       - platforms: ubuntu-14.04
         templates: java-builder
       - platforms: ubuntu-14.04
@@ -70,6 +74,8 @@
         templates: devstack-pre-pip-newton
       - platforms: ubuntu-14.04
         templates: devstack-pre-pip-ocata
+      - platforms: ubuntu-14.04
+        templates: devstack-pre-pip-pike
       - platforms: ubuntu-14.04
         templates: devstack
       - platforms: ubuntu-14.04
index 0eff4f9c51762ae81543124daa745dc040c30d60..9b0da3c32eed6ff647fb3a01026de4675e83902a 100644 (file)
@@ -35,7 +35,7 @@
           build-timeout: '{build-timeout}'
 
     triggers:
-      - timed: 'H H * * 6'
+      - timed: '{schedule-saturday}'
 
     builders:
       - provide-maven-settings:
           build-timeout: '{build-timeout}'
 
     triggers:
-      - timed: 'H H * * 6'
+      - timed: '{schedule-saturday}'
       - gerrit-trigger-patch-sonar:
           server-name: '{server-name}'
           name: '{project}'
index 6d086ea9287dc2454b1ffb5dd0937d87d0451c86..0417bfbeb7622a701a1f354613ac0e8887738ace 100644 (file)
@@ -24,8 +24,6 @@
           karaf-version: karaf3
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index 12edbb574cf6c1cf7f620fdceb00cf5b4714bc64..8f9c41f0e7ecc37603e29a1a4f5763cd37726b0d 100644 (file)
@@ -29,8 +29,6 @@
           karaf-version: karaf3
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index 294350f69ab92a6108713866a10ac3a0921cfab2..ce0c0bddbeeaadb7ce79e75934f6138f3d3d35a6 100644 (file)
@@ -29,8 +29,6 @@
           karaf-version: karaf3
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index 2d0877b36ce68128785b5bfb896625d0d190e31d..2fbba9cb2c0da908a6363f53abceef10f91a42a3 100644 (file)
@@ -28,8 +28,6 @@
           karaf-version: karaf3
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index ea209ced02c2ca3045af7ea1fe2df293e8f331ac..9f999fc8ee08cd4b7211e2267047298c33008d5e 100644 (file)
@@ -25,8 +25,6 @@
           install-features: 'odl-restconf,odl-sxp-controller,odl-sxp-route'
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index b594da84ed39b50045f449e0bb899b61d736063a..eb881946eb580918a34556e95c6c6fdd67914229 100644 (file)
@@ -28,8 +28,6 @@
           karaf-version: karaf3
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index b8d4c0b5cdf48d1d3dbb6ad04869765d943d2554..0cd47f9e30a21fc41792df019e98f09c2454bdf1 100644 (file)
@@ -28,8 +28,6 @@
           karaf-version: karaf3
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index d095e90c11bbfcf13f2764c9719963dd0a89b3f9..9b3eac025786493c9098a6dacd59ae0632135b57 100644 (file)
@@ -24,8 +24,6 @@
           karaf-version: karaf3
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index 52da04d67c11cd0815f127950f5a966f18743965..cfbb2e49ab8ebffe53d96d3dc3d8bfe65c2099af 100644 (file)
@@ -28,8 +28,6 @@
           karaf-version: karaf3
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index 6fd28578953784f6598ec3170854dd284a711173..d938c4393f3176fae0e041e19712cc5498a2c1dd 100644 (file)
@@ -29,8 +29,6 @@
           karaf-version: karaf3
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index fd70cdcda101abfbb1f33cb2d1c8d2f4d2f448c8..fa4b354ab1fd7d9d0dec6735de335a3b872e599e 100644 (file)
@@ -29,8 +29,6 @@
           karaf-version: karaf3
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index 30a587e4ba9b60a4ac2274d615e1b0687e5d5e5b..86585e6fdb2cec9caa2c6db8da52340bb7a16b43 100644 (file)
@@ -29,8 +29,6 @@
           karaf-version: karaf3
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index 438cc895672bfead3efe0ac740c931cbe5bbbb51..06723b8677398ec1e76f21447474a53d8fe0648b 100644 (file)
@@ -29,8 +29,6 @@
           karaf-version: karaf3
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index 626627b24e1090adde60be9337f837ff1006a894..5ecb7595a4fb103ec2f16a8cdae74a1ea4d77c36 100644 (file)
@@ -29,8 +29,6 @@
           karaf-version: karaf3
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index bfb25dd190e00a864c4757bc7be44870261a83da..8d52960070e2e11dc07863c7a611fdb9699880dc 100644 (file)
@@ -29,8 +29,6 @@
           karaf-version: karaf3
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index 542cfb2cbc847b0d54fb9d941f803ffe426f5d22..cd97e33142624a85e46e59670c9b7efe3e916ecc 100644 (file)
@@ -29,8 +29,6 @@
           karaf-version: karaf3
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index b6af34d0330b40804174cf89c44efe8d587c31c9..415f977bb2e7d15665a8dd164c5ac38043c84a5b 100644 (file)
@@ -19,8 +19,6 @@
           karaf-version: karaf3
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index 4e5b12f12f0f11c323133117da1b01e6b0aa581b..afb8d0a467a2e6426ce1f37e73d14f8ad43ac04d 100644 (file)
@@ -29,8 +29,6 @@
           karaf-version: karaf3
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index 7612002a67b7114f378cdaf0961ea75fda9c627c..cc057faac5298a71067d8b91ed0eb3a6581b970a 100644 (file)
@@ -29,8 +29,6 @@
           karaf-version: karaf3
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index 96ad8e82ba8bc6b787c8ae7c87ef6eaf2b34fdf5..5599d9468952fc07342d075af13f79fd0f81cb7a 100644 (file)
@@ -29,8 +29,6 @@
           karaf-version: karaf3
 
     install:
-      - only:
-          scope: 'only'
       - all:
           scope: 'all'
 
index a1c158bc38480ef8cd2d4d2bad21f9efd2a5963e..2a68a273dded472876bd8e28191e20b95c6b3773 100644 (file)
@@ -41,8 +41,6 @@
           odl-ml2-branch: 'stable/newton'
           openstack_system_image: 'CentOS 7 - devstack-newton - 20170808-0528'
 
-    schedule: ''
-
     odl-enable-l3: 'no'
 
     public-bridge: 'br-ex'
index 880b93cf7b3444a826fd23a89447ae7bd01b83fd..47376ae7bada0f0310b9b633c1deda5cb8a4050e 100644 (file)
           branch: 'master'
           jdk: 'openjdk8'
           csit-list: >
-             vtn-csit-1node-manager-only-{stream},
-             vtn-csit-3node-manager-only-{stream}
+             vtn-csit-1node-manager-all-{stream},
+             vtn-csit-3node-manager-all-{stream}
       - nitrogen:
           branch: 'stable/nitrogen'
           jdk: 'openjdk8'
           csit-list: >
-             vtn-csit-1node-manager-only-{stream},
-             vtn-csit-3node-manager-only-{stream}
+             vtn-csit-1node-manager-all-{stream},
+             vtn-csit-3node-manager-all-{stream}
       - carbon:
           branch: 'stable/carbon'
           jdk: 'openjdk8'
           karaf-version: karaf3
           csit-list: >
-             vtn-csit-1node-manager-only-{stream},
-             vtn-csit-3node-manager-only-{stream}
+             vtn-csit-1node-manager-all-{stream},
+             vtn-csit-3node-manager-all-{stream}
       - boron:
           branch: 'stable/boron'
           jdk: 'openjdk8'
           karaf-version: karaf3
           csit-list: >
-             vtn-csit-1node-manager-only-{stream},
-             vtn-csit-3node-manager-only-{stream}
+             vtn-csit-1node-manager-all-{stream},
+             vtn-csit-3node-manager-all-{stream}
index a081c84e9b5cb138d12b8f52d0be4398e99a5ccf..5153a4a6d5c2d6279a746b311da5fea0ce391d1e 100644 (file)
@@ -24,6 +24,8 @@ echo '---> Pre-installing yum and pip packages'
 projs="requirements keystone glance cinder neutron nova horizon"
 # shellcheck disable=SC2154
 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
@@ -44,9 +46,8 @@ do
     pip install -c requirements/upper-constraints.txt -r ${proj}/test-requirements.txt
 done
 
-# the ocata release has ovs 2.6.1
-echo '---> Installing openvswitch from openstack Ocata repo (2.6.1)'
-yum install -y http://rdoproject.org/repos/openstack-ocata/rdo-release-ocata.rpm
+echo '---> Installing openvswitch from relevant openstack branch'
+yum install -y centos-release-openstack-${branch_name}
 
 yum install -y --nogpgcheck openvswitch
 
diff --git a/packer/templates/devstack-pre-pip-pike.json b/packer/templates/devstack-pre-pip-pike.json
new file mode 100644 (file)
index 0000000..3a88914
--- /dev/null
@@ -0,0 +1,71 @@
+{
+  "variables": {
+    "public_base_image": null,
+    "public_network": null,
+    "public_cloud_user": null,
+    "public_auth_url": null,
+    "public_tenant": null,
+    "public_user": null,
+    "public_pass": null,
+    "private_base_image": null,
+    "private_network": null,
+    "private_cloud_user": null,
+    "private_auth_url": null,
+    "private_tenant": null,
+    "private_user": null,
+    "private_pass": null,
+    "distro": null,
+    "cloud_user_data": null
+  },
+  "builders": [
+    {
+      "type": "openstack",
+      "name": "public_cloud",
+      "identity_endpoint": "{{user `public_auth_url`}}",
+      "tenant_name": "{{user `public_tenant`}}",
+      "username": "{{user `public_user`}}",
+      "password": "{{user `public_pass`}}",
+      "region": "DFW",
+      "ssh_username": "{{user `public_cloud_user`}}",
+      "image_name": "{{user `distro`}} - devstack-pike - {{isotime \"20060102-1504\"}}",
+      "source_image": "{{user `public_base_image`}}",
+      "flavor": "general1-1",
+      "networks": [
+        "{{user `public_network`}}"
+      ],
+      "user_data_file": "{{user `cloud_user_data`}}"
+    },
+    {
+      "type": "openstack",
+      "name": "private_cloud",
+      "identity_endpoint": "{{user `private_auth_url`}}",
+      "tenant_name": "{{user `private_tenant`}}",
+      "username": "{{user `private_user`}}",
+      "password": "{{user `private_pass`}}",
+      "ssh_username": "{{user `private_cloud_user`}}",
+      "image_name": "{{user `distro`}} - devstack-pike - {{isotime \"20060102-1504\"}}",
+      "source_image_name": "{{user `private_base_image`}}",
+      "flavor": "general1-1",
+      "networks": [
+        "{{user `private_network`}}"
+      ],
+      "user_data_file": "{{user `cloud_user_data`}}"
+    }
+  ],
+  "provisioners": [
+    {
+      "type": "shell",
+      "environment_vars": [
+        "os_branch=stable/pike",
+        "rdo_branch=pike"
+      ],
+      "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"
+    }
+  ]
+}