Merge "Update releng/global-jjb repository information"
authorThanh Ha <thanh.ha@linuxfoundation.org>
Tue, 23 May 2017 14:18:29 +0000 (14:18 +0000)
committerGerrit Code Review <gerrit@opendaylight.org>
Tue, 23 May 2017 14:18:29 +0000 (14:18 +0000)
262 files changed:
.coafile
.gitmodules [new file with mode: 0644]
docs/cloud-images.rst
jjb/aaa/aaa-csit-authn.yaml
jjb/aaa/aaa-csit-idmlite.yaml
jjb/aaa/aaa-csit-keystone.yaml
jjb/aaa/aaa-csit-tls.yaml
jjb/aaa/aaa-patch-test.yaml
jjb/aaa/aaa.yaml
jjb/alto/alto-csit-setup.yaml
jjb/alto/alto.yaml
jjb/armoury/armoury.yaml
jjb/atrium/atrium.yaml
jjb/autorelease/autorelease-macros.yaml
jjb/autorelease/autorelease-projects.yaml
jjb/autorelease/autorelease-templates.yaml
jjb/autorelease/include-raw-autorelease-collect-sar.sh [new file with mode: 0644]
jjb/autorelease/include-raw-autorelease-get-integration-test-variables.sh
jjb/autorelease/include-raw-autorelease-maven-deploy.sh
jjb/autorelease/include-raw-autorelease-notify-build-failure.sh
jjb/bgpcep/bgpcep-csit-bgp-ingest.yaml
jjb/bgpcep/bgpcep-csit-bgpclustering-ha.yaml
jjb/bgpcep/bgpcep-csit-bgpclustering-longevity.yaml [new file with mode: 0644]
jjb/bgpcep/bgpcep-csit-bgpclustering.yaml
jjb/bgpcep/bgpcep-csit-throughpcep.yaml
jjb/bgpcep/bgpcep-csit-userfeatures.yaml
jjb/bgpcep/bgpcep.yaml
jjb/bier/bier-csit-basic.yaml
jjb/bier/bier.yaml
jjb/capwap/capwap-csit-ac.yaml
jjb/capwap/capwap.yaml
jjb/cardinal/cardinal.yaml
jjb/centinel/centinel-csit-basic.yaml
jjb/centinel/centinel.yaml
jjb/coe/coe.yaml
jjb/controller/controller-csit-akka1.yaml
jjb/controller/controller-csit-clustering.yaml
jjb/controller/controller-csit-cs-chasing-leader.yaml [new file with mode: 0644]
jjb/controller/controller-csit-cs-partnheal.yaml [new file with mode: 0644]
jjb/controller/controller-csit-ddb-expl-lead-movement.yaml [new file with mode: 0644]
jjb/controller/controller-csit-dnb-noloss.yaml
jjb/controller/controller-csit-drb-partnheal.yaml [new file with mode: 0644]
jjb/controller/controller-csit-drb-precedence.yaml [new file with mode: 0644]
jjb/controller/controller-csit-periodic-dsbenchmark-cluster.yaml
jjb/controller/controller-csit-periodic-dsbenchmark.yaml
jjb/controller/controller-csit-rest-cars-perf.yaml
jjb/controller/controller-csit-rest-clust-cars-perf.yaml
jjb/controller/controller.yaml
jjb/coretutorials/coretutorials.yaml
jjb/daexim/daexim-csit-basic.yaml
jjb/daexim/daexim.yaml
jjb/didm/didm-csit-discovery.yaml
jjb/didm/didm.yaml
jjb/discovery/discovery.yaml
jjb/dlux/dlux.yaml
jjb/dluxapps/dluxapps-csit-yangman.yaml [moved from jjb/armoury/armoury-csit-basic.yaml with 57% similarity]
jjb/dluxapps/dluxapps.yaml
jjb/docs/docs-rtd.yaml
jjb/eman/eman.yaml
jjb/faas/faas.yaml
jjb/federation/federation.yaml
jjb/genius/genius-csit-genius.yaml
jjb/genius/genius-patch-test.yaml
jjb/genius/genius.yaml
jjb/global-jjb [new submodule]
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/groupbasedpolicy/groupbasedpolicy-csit-sxp.yaml
jjb/groupbasedpolicy/groupbasedpolicy.yaml
jjb/honeycomb/vbd/vbd.yaml
jjb/include-raw-deploy-archives.sh
jjb/infrautils/infrautils.yaml
jjb/integration/distribution-deploy-offline.sh [moved from jjb/integration/include-raw-integration-deploy-controller-offline.sh with 59% similarity]
jjb/integration/distribution-deploy-verify.sh [moved from jjb/integration/include-raw-integration-deploy-controller-verify.sh with 60% similarity]
jjb/integration/distribution-jobs.yaml [deleted file]
jjb/integration/distribution/distribution-check.yaml [deleted file]
jjb/integration/distribution/distribution-csit-userfeatures.yaml
jjb/integration/distribution/distribution-jobs.yaml [new file with mode: 0644]
jjb/integration/distribution/distribution-templates.yaml [new file with mode: 0644]
jjb/integration/distribution/distribution.yaml
jjb/integration/include-raw-integration-compare-distributions.sh
jjb/integration/include-raw-integration-configure-clustering.sh
jjb/integration/include-raw-integration-deploy-controller-run-test.sh
jjb/integration/include-raw-integration-deploy-openstack-run-test.sh
jjb/integration/include-raw-integration-get-bundle-url-root.sh [deleted file]
jjb/integration/include-raw-integration-get-bundle-url.sh [deleted file]
jjb/integration/include-raw-integration-get-bundle-vars.sh [deleted file]
jjb/integration/include-raw-integration-install-robotframework.sh
jjb/integration/include-raw-integration-multipatch-distribution-test.sh
jjb/integration/include-raw-integration-start-cluster-run-test.sh
jjb/integration/integration-detect-variables.sh [new file with mode: 0644]
jjb/integration/integration-distribution-check.sh [moved from jjb/integration/include-raw-integration-distribution-check.sh with 58% similarity]
jjb/integration/integration-macros.yaml
jjb/integration/integration-set-variables.sh [new file with mode: 0644]
jjb/integration/integration-templates.yaml
jjb/integration/integration-test-jobs.yaml
jjb/integration/integration-upload-distribution.sh [new file with mode: 0644]
jjb/integration/integration4-templates.yaml [new file with mode: 0644]
jjb/iotdm/iotdm-csit-basic.yaml
jjb/iotdm/iotdm.yaml
jjb/jsonrpc/jsonrpc.yaml
jjb/l2switch/l2switch-csit-host-scalability-daily.yaml
jjb/l2switch/l2switch-csit-scalability.yaml
jjb/l2switch/l2switch-csit-switch.yaml
jjb/l2switch/l2switch-patch-test.yaml
jjb/l2switch/l2switch.yaml
jjb/lacp/lacp-csit-lacp.yaml
jjb/lacp/lacp.yaml
jjb/lispflowmapping/lispflowmapping-csit-msmr.yaml
jjb/lispflowmapping/lispflowmapping-csit-performance.yaml
jjb/lispflowmapping/lispflowmapping.yaml
jjb/mdsal/mdsal-csit-bindingv1.yaml
jjb/mdsal/mdsal.yaml
jjb/messaging4transport/messaging4transport-csit-basic.yaml
jjb/messaging4transport/messaging4transport.yaml
jjb/natapp/natapp-csit-basic.yaml
jjb/natapp/natapp.yaml
jjb/nemo/nemo-csit-engine.yaml
jjb/nemo/nemo.yaml
jjb/netconf/netconf-cluster-stress.yaml
jjb/netconf/netconf-clustering-scale.yaml
jjb/netconf/netconf-clustering.yaml
jjb/netconf/netconf-csit-callhome.yaml [moved from jjb/eman/eman-csit-model.yaml with 56% similarity]
jjb/netconf/netconf-scale.yaml
jjb/netconf/netconf-userfeatures.yaml
jjb/netconf/netconf.yaml
jjb/netide/netide-csit-basic.yaml
jjb/netide/netide.yaml
jjb/netvirt/netvirt-csit-hwvtep-openstack.yaml
jjb/netvirt/netvirt-csit-multi-openstack.yaml
jjb/netvirt/netvirt-full-integration.yaml
jjb/netvirt/netvirt-legacy-csit-clustering.yaml
jjb/netvirt/netvirt-legacy-csit-multi-openstack.yaml
jjb/netvirt/netvirt-legacy-csit.yaml
jjb/netvirt/netvirt-patch-test.yaml
jjb/netvirt/netvirt.yaml
jjb/neutron/neutron.yaml
jjb/next/next.yaml
jjb/nic/nic-csit-basic.yaml
jjb/nic/nic-csit-vtnrenderer.yaml
jjb/nic/nic.yaml
jjb/ocpplugin/ocpplugin-csit-basic.yaml
jjb/ocpplugin/ocpplugin-csit-scalability.yaml
jjb/ocpplugin/ocpplugin.yaml
jjb/odlparent/odlparent.yaml
jjb/of-config/of-config-csit-basic.yaml
jjb/of-config/of-config.yaml
jjb/ofextensions/circuitsw/circuitsw.yaml
jjb/opendaylight-infra-cleanup-stale-stacks.sh
jjb/opendaylight-infra-push-gerrit-patch.sh
jjb/opendaylight-infra-stack.sh
jjb/openflowjava/openflowjava.yaml
jjb/openflowplugin/openflowplugin-csit-bulkomatic-clustering-daily-old.yaml
jjb/openflowplugin/openflowplugin-csit-bulkomatic-clustering-daily.yaml
jjb/openflowplugin/openflowplugin-csit-bulkomatic-clustering-perf-daily-old.yaml
jjb/openflowplugin/openflowplugin-csit-bulkomatic-clustering-perf-daily.yaml
jjb/openflowplugin/openflowplugin-csit-bulkomatic-perf-daily-old.yaml
jjb/openflowplugin/openflowplugin-csit-bulkomatic-perf-daily.yaml
jjb/openflowplugin/openflowplugin-csit-cbench-daily-old.yaml
jjb/openflowplugin/openflowplugin-csit-cbench-daily.yaml
jjb/openflowplugin/openflowplugin-csit-clustering-old.yaml
jjb/openflowplugin/openflowplugin-csit-clustering.yaml
jjb/openflowplugin/openflowplugin-csit-flow-services-frs.yaml
jjb/openflowplugin/openflowplugin-csit-flow-services-old.yaml
jjb/openflowplugin/openflowplugin-csit-flow-services.yaml
jjb/openflowplugin/openflowplugin-csit-link-scalability-daily-old.yaml
jjb/openflowplugin/openflowplugin-csit-link-scalability-daily.yaml
jjb/openflowplugin/openflowplugin-csit-longevity-old.yaml
jjb/openflowplugin/openflowplugin-csit-longevity.yaml
jjb/openflowplugin/openflowplugin-csit-restconf-clustering-perf-daily-old.yaml
jjb/openflowplugin/openflowplugin-csit-restconf-clustering-perf-daily.yaml
jjb/openflowplugin/openflowplugin-csit-restconf-perf-daily-old.yaml
jjb/openflowplugin/openflowplugin-csit-restconf-perf-daily.yaml
jjb/openflowplugin/openflowplugin-csit-sanity.yaml
jjb/openflowplugin/openflowplugin-csit-scalability-old.yaml
jjb/openflowplugin/openflowplugin-csit-scalability.yaml
jjb/openflowplugin/openflowplugin-csit-scale-stats-collection-daily-frs.yaml
jjb/openflowplugin/openflowplugin-csit-scale-stats-collection-daily-old.yaml
jjb/openflowplugin/openflowplugin-csit-scale-stats-collection-daily.yaml
jjb/openflowplugin/openflowplugin-csit-sw-scalability-daily-old.yaml
jjb/openflowplugin/openflowplugin-csit-sw-scalability-daily.yaml
jjb/openflowplugin/openflowplugin-patch-test.yaml
jjb/openflowplugin/openflowplugin.yaml
jjb/opflex/opflex-custom.yaml
jjb/opflex/opflex-dependencies.yaml
jjb/ovsdb/ovsdb-csit-clustering.yaml
jjb/ovsdb/ovsdb-csit-southbound.yaml
jjb/ovsdb/ovsdb-full-integration.yaml
jjb/ovsdb/ovsdb-patch-test.yaml
jjb/ovsdb/ovsdb.yaml
jjb/packaging/include-raw-build-rpm.sh
jjb/packaging/include-raw-test-ansible-deb.sh
jjb/packaging/include-raw-test-deb.sh
jjb/packaging/include-raw-test-puppet.sh
jjb/packaging/include-raw-test-rpm.sh
jjb/packaging/packaging.yaml
jjb/packaging/puppet.yaml [new file with mode: 0644]
jjb/packetcable/packetcable-csit-pcmm.yaml
jjb/packetcable/packetcable.yaml
jjb/persistence/persistence.yaml
jjb/releng-defaults.yaml
jjb/releng-jobs.yaml
jjb/releng-macros.yaml
jjb/releng-templates-java.yaml
jjb/reservation/reservation.yaml
jjb/sdninterfaceapp/sdninterfaceapp-csit-basic.yaml
jjb/sdninterfaceapp/sdninterfaceapp.yaml
jjb/sfc/sfc-csit-full-deploy.yaml
jjb/sfc/sfc-csit-rest-basic.yaml
jjb/sfc/sfc-patch-test.yaml
jjb/sfc/sfc-python.yaml
jjb/sfc/sfc.yaml
jjb/snbi/snbi.yaml
jjb/snmp/snmp-csit-basic.yaml
jjb/snmp/snmp.yaml
jjb/snmp4sdn/snmp4sdn.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/sxp/sxp.yaml
jjb/systemmetrics/systemmetrics.yaml
jjb/tcpmd5/tcpmd5.yaml
jjb/topoprocessing/topoprocessing-csit-topology-operation.yaml
jjb/topoprocessing/topoprocessing.yaml
jjb/transportpce/transportpce.yaml
jjb/tsdr/tsdr-csit-cassandra.yaml
jjb/tsdr/tsdr-csit-elasticsearch.yaml
jjb/tsdr/tsdr-csit-hbase.yaml
jjb/tsdr/tsdr-csit-hsqldb.yaml
jjb/tsdr/tsdr.yaml
jjb/ttp/ttp.yaml
jjb/unimgr/unimgr-csit-basic.yaml
jjb/unimgr/unimgr-csit-legato.yaml
jjb/unimgr/unimgr.yaml
jjb/usc/usc-csit-channel.yaml
jjb/usc/usc-csit-tcp.yaml
jjb/usc/usc-csit-udp.yaml
jjb/usc/usc.yaml
jjb/usecplugin/usecplugin-csit-basic.yaml
jjb/usecplugin/usecplugin.yaml
jjb/vpnservice/vpnservice.yaml
jjb/vtn/vtn-csit-3node-manager.yaml
jjb/vtn/vtn-csit-coordinator.yaml
jjb/vtn/vtn-csit-manager.yaml
jjb/vtn/vtn-manager-csit-1node-openstack.yaml
jjb/vtn/vtn-patch-test.yaml
jjb/vtn/vtn.yaml
jjb/yang-push/yang-push.yaml
jjb/yangide/yangide.yaml
jjb/yangtools/yangtools-csit-system.yaml
jjb/yangtools/yangtools.yaml
packer/provision/devstack-pre-pip.sh
packer/provision/java-builder.sh
packer/templates/devstack-pre-pip-mitaka.json [deleted file]
scripts/branch_cut/branch_cut.awk [new file with mode: 0755]
scripts/branch_cut/branch_cutter.sh [new file with mode: 0755]
tox.ini

index 40e4c3ac1a4b5f5ef2bcc956b52efaa96fcfedf3..5d48e1d318a45b0e5529c077b81b0f406d6727ad 100644 (file)
--- a/.coafile
+++ b/.coafile
@@ -24,6 +24,7 @@ files = jenkins-scripts/**/*.sh,
     jjb/**/*.sh,
     scripts/**/*.sh
 ignore = jenkins-scripts/*-local-env.sh,
+    jjb/global-jjb/shell/*.sh,
     jjb/integration/include-raw-integration-compare-distributions.sh,
     jjb/integration/include-raw-integration-configure-clustering.sh,
     jjb/integration/include-raw-integration-deploy-controller-offline.sh,
@@ -31,8 +32,6 @@ ignore = jenkins-scripts/*-local-env.sh,
     jjb/integration/include-raw-integration-deploy-controller-verify.sh,
     jjb/integration/include-raw-integration-deploy-openstack-run-test.sh,
     jjb/integration/include-raw-integration-distribution-check.sh,
-    jjb/integration/include-raw-integration-get-bundle-url-root.sh,
-    jjb/integration/include-raw-integration-get-bundle-url.sh,
     jjb/integration/include-raw-integration-get-bundle-vars.sh,
     jjb/integration/include-raw-integration-get-slave-addresses.sh,
     jjb/integration/include-raw-integration-list-jobs.sh,
diff --git a/.gitmodules b/.gitmodules
new file mode 100644 (file)
index 0000000..0f6b73e
--- /dev/null
@@ -0,0 +1,3 @@
+[submodule "jjb/global-jjb"]
+       path = jjb/global-jjb
+       url = https://gerrit.linuxfoundation.org/infra/releng/global-jjb
index 58beb477bc3152d1d4de9086360337acdb7c4755..75631bed7706ca3ed7e36e2efb06974759f18977 100644 (file)
@@ -40,4 +40,5 @@ Following are the list of published images available to be used with Jenkins job
 * Ubuntu 14.04 LTS Trusty Tahr (cloudimg)
 * Ubuntu 16.04 - gbp - 20170308-0321
 * Ubuntu 16.04 - mininet-ovs-25 - 20170308-0230
+* Ubuntu 16.04 - mininet-ovs-25 - 20170516-0740
 * Ubuntu 16.04 LTS (2016-05-03 cloudimg)
index fd55fdb28661b60314187014090aaca462ffb61b..7e9c1c2b4dd7bb73bd926f90aaecc223ab8b20f7 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
index 0f785768ee2daebea6f8a62594641e15f71f7598..b9b99b998998fb76f4907e7185fcfff9346ba674 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
@@ -34,8 +40,6 @@
         odl-openflowplugin-flow-services-ui,
         odl-aaa-api,
         odl-aaa-authn,
-        odl-aaa-authz,
-        odl-aaa-sssd-plugin,
         odl-aaa-netconf-plugin
 
     # Robot custom options
index cf1bfc1c6486a7b3ebb46778e20499fa604a517f..4c79a92b9b54d415531ae8361c6f8526c600322c 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
 
     install:
       - only:
index 11423ffd268af1ec761d465658637a61833d51aa..269dc52e6c4c715eeebd5cf945a9cf7124416c90 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
 
     install:
       - only:
index e4547aff135af0b8a825d731790d5411bc37dcf9..b50d7b35b7f24f0a5bb76e39e5a709b7f49d3050 100644 (file)
@@ -9,9 +9,13 @@
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jdk: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jdk: 'openjdk8'
+          karaf-version: karaf3
 
     feature:
       - authn:
index 42787db265f4f232ac917b6645e2f2868735e410..137b7ff43e7f07955c857ed1b0c183db1fbe0350 100644 (file)
@@ -1,4 +1,32 @@
 ---
+- project:
+    name: aaa-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-distribution3-check-nitrogen'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-validate-autorelease-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'aaa'
+    project-name: 'aaa'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'aaa-settings'
+    mvn-goals: 'clean install'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: 'odlparent-merge-{stream},yangtools-merge-{stream},controller-merge-{stream}'
+    email-upstream: '[aaa] [odlparent] [yangtools] [controller]'
+    archive-artifacts: ''
+
 - project:
     name: aaa-carbon
     jobs:
@@ -12,7 +40,8 @@
     stream: carbon
     project: 'aaa'
     project-name: 'aaa'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -40,6 +69,7 @@
     project: 'aaa'
     project-name: 'aaa'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -67,6 +97,7 @@
     project: 'aaa'
     project-name: 'aaa'
     branch: 'stable/beryllium'
+    karaf-version: karaf3
     jdk: openjdk7
     jdks:
       - openjdk7
index de3886864d1fe0038c985f8f6cce83f8648d72f0..5042a631608cdb92f3f69f9fa7aeaec7fc01667b 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
index e9fe7bb41ce6ebe3dfe446d43d3e8923fb9e8ddf..8615853d10801b973b256b082f675f724f546e6a 100644 (file)
@@ -1,4 +1,32 @@
 ---
+- project:
+    name: alto-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-distribution3-check-nitrogen'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-validate-autorelease-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'alto'
+    project-name: 'alto'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'alto-settings'
+    mvn-goals: 'clean install'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: 'l2switch-merge-{stream}'
+    email-upstream: '[alto] [l2switch]'
+    archive-artifacts: ''
+
 - project:
     name: alto-carbon
     jobs:
@@ -12,7 +40,8 @@
     stream: carbon
     project: 'alto'
     project-name: 'alto'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -40,6 +69,7 @@
     project: 'alto'
     project-name: 'alto'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -67,6 +97,7 @@
     project: 'alto'
     project-name: 'alto'
     branch: 'stable/beryllium'
+    karaf-version: karaf3
     jdk: openjdk7
     jdks:
       - openjdk7
index 1f72008266f38afca18021451d3d59162711363e..85b83efe28243c3d113533362866ca1e0677dd52 100644 (file)
@@ -1,4 +1,30 @@
 ---
+- project:
+    name: armoury-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'armoury'
+    project-name: 'armoury'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk7
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'armoury-settings'
+    mvn-goals: 'clean install'
+    mvn-opts: '-Xmx2048m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
+    dependencies: ''
+    email-upstream: '[armoury]'
+    archive-artifacts: ''
+
 - project:
     name: armoury-carbon
     jobs:
@@ -10,7 +36,8 @@
     stream: carbon
     project: 'armoury'
     project-name: 'armoury'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk7
@@ -37,6 +64,7 @@
     project: 'armoury'
     project-name: 'armoury'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk7
@@ -63,6 +91,7 @@
     project: 'armoury'
     project-name: 'armoury'
     branch: 'stable/beryllium'
+    karaf-version: karaf3
     jdk: openjdk7
     jdks:
       - openjdk7
index 04e31cf99b32ceed84e64f7e3b5a0abc1379a20e..f216efb5c1ca59b8a1d6cf538190819cd3e833bf 100644 (file)
@@ -1,4 +1,32 @@
 ---
+- project:
+    name: atrium-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-distribution3-check-nitrogen'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-validate-autorelease-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'atrium'
+    project-name: 'atrium'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'atrium-settings'
+    mvn-goals: 'clean install'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: ''
+    email-upstream: '[atrium]'
+    archive-artifacts: ''
+
 - project:
     name: atrium-carbon
     jobs:
@@ -12,7 +40,8 @@
     stream: carbon
     project: 'atrium'
     project-name: 'atrium'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -40,6 +69,7 @@
     project: 'atrium'
     project-name: 'atrium'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
index bc95076cae2d1477f602640cf64a33230d9878d6..0d85280568111b5ab66e67646f11f18d5133230b 100644 (file)
 - builder:
     name: autorelease-distribute-taglist
     builders:
+      - integration-set-variables
       - shell: |
           if [ -d "integration/distribution/distributions" ]; then
               cp -vf "$WORKSPACE/taglist.log" "integration/distribution/distributions/karaf/src/main/assembly/"
           else
-              cp -vf "$WORKSPACE/taglist.log" "integration/distribution/distribution-karaf/src/main/assembly/"
+              cp -vf "$WORKSPACE/taglist.log" "integration/distribution/$KARAF_ARTIFACT/src/main/assembly/"
           fi
 
 - builder:
     builders:
       - shell: !include-raw: include-raw-autorelease-release-versions.sh
 
-- builder:
-    name: autorelease-sys-stats
-    builders:
-      - shell: |
-          uname -a
-          df -h
-
 - builder:
     name: autorelease-get-integration-test-variables
     builders:
+      - integration-set-variables
       - shell: !include-raw: include-raw-autorelease-get-integration-test-variables.sh
       - inject:
           properties-file: variables.prop
       - shell: |
           ./scripts/fix-relativepaths.sh
 
+- builder:
+    name: autorelease-generate-release-notes
+    builders:
+      - shell: |
+          cd $WORKSPACE/scripts/release_notes_management
+          java -jar target/autonotes.jar
+          if [ -f  "$WORKSPACE/scripts/release_notes_management/projects/release-notes.rst" ]; then
+              mkdir -p $WORKSPACE/archives
+              cp -vf "$WORKSPACE/scripts/release_notes_management/projects/release-notes.rst" "$WORKSPACE/archives"
+          fi
+
 - publisher:
     # include-raw-autorelease-notify-build-failure.sh searches console log for
     # failures and emails the status to the release mailing list.
             - shell: !include-raw: include-raw-autorelease-notify-build-failure.sh
           script-only-if-succeeded: 'False'
           script-only-if-failed: 'True'
+
+- publisher:
+    # generate sar accounting summary and copy sar data to archive
+    name: opendaylight-infra-sysstats
+    publishers:
+      - postbuildscript:
+          builders:
+            - shell: !include-raw: include-raw-autorelease-collect-sar.sh
+          script-only-if-succeeded: false
+          script-only-if-failed: false
index 671fd7d3eeb7f71368dc5e01207deffb629249b4..6e5fa31f47dea54dc76d7a29b29a33173813d7e2 100644 (file)
@@ -5,16 +5,24 @@
       - 'autorelease-release-{stream}'
 
     stream:
+      - nitrogen:
+          next-release-tag: Nitrogen
+          branch: 'master'
+          jdk: 'openjdk8'
+          integration-test: nitrogen
       - carbon:
           next-release-tag: Carbon
-          branch: 'master'
+          branch: 'stable/carbon'
           jdk: 'openjdk8'
           integration-test: carbon
+          karaf-version: karaf3
+          extra-mvn-opts: -Dskip.karaf.featureTest=true
       - boron:
-          next-release-tag: Boron-SR3
+          next-release-tag: Boron-SR4
           branch: 'stable/boron'
           jdk: 'openjdk8'
           integration-test: boron
+          karaf-version: karaf3
       - beryllium:
           # Only run once a week since Beryllium is in maintenance mode
           cron: 'H H * * 0'
@@ -22,6 +30,7 @@
           branch: 'stable/beryllium'
           jdk: 'openjdk7'
           integration-test: beryllium
+          karaf-version: karaf3
 
     project: 'releng/autorelease'
     archive-artifacts: >
         **/*.log
         patches/**
         patches.tar.gz
+        error.log.gz
+
+
+- project:
+    name: autorelease-release-notes
+    jobs:
+      - 'autorelease-generate-release-notes-{stream}'
+
+    stream:
+      - nitrogen:
+          branch: 'master'
+          jdk: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jdk: 'openjdk8'
+      - boron:
+          branch: 'stable/boron'
+          jdk: 'openjdk8'
+
+    project: 'releng/autorelease'
+    archive-artifacts: >
+        **/*.log
+
 
 ###
 # TODO: Remove this job once guava21 testing is complete
           branch: '{branch}'
           refspec: 'refs/heads/{branch}'
           artifacts: '{archive-artifacts}'
+      - distribution-karaf-version:
+          karaf-version: '{karaf-version}'
       - autorelease-release-tag:
           release-tag: '{next-release-tag}'
       - autorelease-release-branch:
           settings: 'autorelease-settings'
           global-settings: 'odl-global-settings'
       - autorelease-maven-sources-post-process
-      - autorelease-sys-stats
       - shell: |
           mkdir -p archives/
           cp *.log *.prop $_
index c0a15f6c06c834b6a42cec11d3fbbb963e58bd9a..284fdef09c0635d96479e9cabca753b4b42bd26c 100644 (file)
@@ -8,6 +8,9 @@
     jdk: '{jdk}'
     cron: 'H 0 * * *'
 
+    # Default variable values
+    extra-mvn-opts: ''
+
     properties:
       - opendaylight-infra-properties:
           build-days-to-keep: '30'
           branch: '{branch}'
           refspec: 'refs/heads/{branch}'
           artifacts: '{archive-artifacts}'
+      - distribution-karaf-version:
+          karaf-version: '{karaf-version}'
       - autorelease-release-tag:
           release-tag: '{next-release-tag}'
       - autorelease-release-branch:
           release-branch: '{branch}'
+      - string:
+          name: EXTRA_MVN_OPTS
+          default: '{extra-mvn-opts}'
+          description: |
+              Additional optional Maven Options to pass to the Maven Goals
+              parameter.
+
+              Examples:
+              -Dskip.karaf.featureTest=true  # To disable karaf SingleFeatureTests
+              --fail-never   # NEVER fail the build, regardless of project result
+              --fail-at-end  # Only fail the build afterwards; allow all non-impacted builds to continue
 
     scm:
       - git:
@@ -41,7 +57,7 @@
 
     wrappers:
       - opendaylight-infra-wrappers:
-          build-timeout: '1440'
+          build-timeout: '900'
 
     triggers:
       - timed: '{cron}'
@@ -65,7 +81,7 @@
       - autorelease-generate-taglist
       - autorelease-distribute-taglist
       - distribute-build-url:
-          path: 'integration/distribution/distribution-karaf/src/main/assembly'
+          path: 'integration/distribution/$KARAF_ARTIFACT/src/main/assembly'
       - autorelease-generate-release-patches
       # In a perfect world projects should be releasing separately and we consume them
       # via a project that pulls the release bits from each project from Nexus.
@@ -77,6 +93,7 @@
           pom: 'pom.xml'
           goals: |
               clean deploy
+              $EXTRA_MVN_OPTS
               -Pintegrationtests,docs,repoBuild
               -Dcheckstyle.skip=true
               -DaltDeploymentRepository=staging::default::file:hide/from/pom/files/stage
           settings: 'autorelease-settings'
           global-settings: 'odl-global-settings'
       - autorelease-maven-sources-post-process
-      - autorelease-sys-stats
       - shell: |
           mkdir -p archives/
           cp *.log *.prop $_
 
     publishers:
       - opendaylight-infra-notify-status
+      - opendaylight-infra-sysstats
       - archive:
           # Need to archive dependencies.log in Jenkins to provide a simple
           # way for downstream jobs to pull the latest version of this file
           # in their builds.
           artifacts: 'dependencies.log'
       - trigger-parameterized-builds:
+          - project: 'autorelease-generate-release-notes-{stream}'
+            condition: UNSTABLE_OR_BETTER
+            property-file: variables.jenkins-trigger
+            fail-on-missing: true
           - project: 'integration-distribution-test-{integration-test}'
             condition: UNSTABLE_OR_BETTER
             property-file: variables.jenkins-trigger
             fail-on-missing: true
           - project: 'integration-distribution-test-{integration-test}'
             condition: FAILED
+            trigger-with-no-params: true
           - project: 'integration-sanity-test-{integration-test}'
             condition: UNSTABLE_OR_BETTER
             property-file: variables.jenkins-trigger
             fail-on-missing: true
           - project: 'integration-sanity-test-{integration-test}'
             condition: FAILED
+            trigger-with-no-params: true
           - project: 'packaging-build-rpm-master'
             condition: UNSTABLE_OR_BETTER
-            predefined-parameters: DOWNLOAD_URL=$BUNDLEURL
+            predefined-parameters: DOWNLOAD_URL=$BUNDLE_URL
             property-file: variables.jenkins-trigger
             fail-on-missing: true
       - opendaylight-infra-shiplogs:
           maven-version: 'mvn33'
+
+
+- job-template:
+    name: 'autorelease-generate-release-notes-{stream}'
+
+    project-type: freestyle
+    node: centos7-java-builder-2c-8g
+
+    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}'
+
+    scm:
+      - git:
+          credentials-id: 'opendaylight-jenkins-ssh'
+          url: '$GIT_BASE'
+          refspec: '$GERRIT_REFSPEC'
+          branches:
+            - '$GERRIT_BRANCH'
+          choosing-strategy: 'gerrit'
+          skip-tag: true
+          submodule:
+            recursive: true
+
+    wrappers:
+      - opendaylight-infra-wrappers:
+          build-timeout: '30'
+
+    triggers:
+      - timed: '0 0 * * 0'
+
+    builders:
+      # force jenkins install of maven version before any shell scripts use it
+      - maven-target:
+          maven-version: 'mvn33'
+          goals: '-version'
+          settings: 'autorelease-settings'
+          settings-type: cfp
+          global-settings: 'odl-global-settings'
+          global-settings-type: cfp
+      - maven-target:
+          maven-version: 'mvn33'
+          pom: '$WORKSPACE/scripts/release_notes_management/pom.xml'
+          goals: |
+              clean package
+              -Dcheckstyle.skip=true
+              -DaltDeploymentRepository=staging::default::file:hide/from/pom/files/stage
+              {opendaylight-infra-mvn-opts}
+          java-opts:
+            - '-Xmx10g -XX:MaxPermSize=1024m -Dmaven.compile.fork=true'
+          settings: 'autorelease-settings'
+          settings-type: cfp
+          global-settings: 'odl-global-settings'
+          global-settings-type: cfp
+      - autorelease-generate-release-notes
+
+    publishers:
+      - opendaylight-infra-sysstats
+      - opendaylight-infra-shiplogs:
+          maven-version: 'mvn33'
diff --git a/jjb/autorelease/include-raw-autorelease-collect-sar.sh b/jjb/autorelease/include-raw-autorelease-collect-sar.sh
new file mode 100644 (file)
index 0000000..e5af468
--- /dev/null
@@ -0,0 +1,18 @@
+#!/bin/bash
+# @License EPL-1.0 <http://spdx.org/licenses/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
+##############################################################################
+
+mkdir -p archives/sar
+cp /var/log/sa/* $_
+# convert sar data to ascii format
+while IFS="" read -r s
+do
+    [ -f "$s" ] && sar -A -f "$s" > archives/sar/sar${s//[!0-9]/}
+done < <(find /var/log/sa -name "sa[0-9]*")
index c948eb48ad5d0676a15ef16ad0ec202c1ba42f33..b90d959a788a8e96db8917d475239a3db424980c 100644 (file)
 NEXUS_STAGING_URL=${ODLNEXUS_STAGING_URL:-$ODLNEXUSPROXY}
 
 NEXUSURL=${NEXUS_STAGING_URL}/content/repositories/
-VERSION=$(grep -m2 '<version>' "${WORKSPACE}/integration/distribution/distribution-karaf/pom.xml" | tail -n1 | awk -F'[<|>]' '/version/ { printf $3 }')
+VERSION=$(grep -m2 '<version>' "${WORKSPACE}/integration/distribution/${KARAF_ARTIFACT}/pom.xml" | tail -n1 | awk -F'[<|>]' '/version/ { printf $3 }')
 echo "VERSION: ${VERSION}"
 STAGING_REPO_ID=$(grep "Created staging repository with ID" "$WORKSPACE/deploy-staged-repository.log" | cut -d '"' -f2)
-BUNDLEURL="${NEXUSURL}/${STAGING_REPO_ID}/org/opendaylight/integration/distribution-karaf/${VERSION}/distribution-karaf-${VERSION}.zip"
+BUNDLE_URL="${NEXUSURL}/${STAGING_REPO_ID}/org/opendaylight/integration/${KARAF_ARTIFACT}/${VERSION}/${KARAF_ARTIFACT}-${VERSION}.zip"
 echo STAGING_REPO_ID="$STAGING_REPO_ID" >> "$WORKSPACE/variables.prop"
-echo BUNDLEURL="$BUNDLEURL" >> "$WORKSPACE/variables.prop"
-echo "BUNDLEURL: ${BUNDLEURL}"
+echo BUNDLE_URL="$BUNDLE_URL" >> "$WORKSPACE/variables.prop"
+echo "BUNDLE_URL: ${BUNDLE_URL}"
 
 # Copy variables.prop to variables.jenkins-trigger so that the end of build
 # trigger can pick up the file as input for triggering downstream jobs.
index 164349923d50221307ce44e53b760c2a3bd13fd9..8479b95a203cc3083897b30c69b173b0d4bef2a7 100644 (file)
@@ -36,3 +36,13 @@ rsync -avz --remove-source-files \
     -DserverId="$NEXUS_STAGING_SERVER_ID" \
     -s "$SETTINGS_FILE" \
     -gs "$GLOBAL_SETTINGS_FILE" | tee "$WORKSPACE/deploy-staged-repository.log"
+
+# Log all files larger than 200 MB into large-files.log
+while IFS= read -r -d '' file
+do
+    FILE_SIZE=$(du --summarize --block-size 1 "$file" | awk '{print $1}')
+    # Check if file size is larger than 200 MB
+    if [[ $FILE_SIZE -gt 209715200 ]]; then
+        echo "$FILE_SIZE $file" >> "$WORKSPACE/large-files.log"
+    fi
+done <   <(find "$(pwd)/m2repo" -type f -print0)
index e50ec453c0d791b3401413e8df4313ef900878e1..ca31d529c5d3f0bd25894c74f52c4794d0dd29bd 100644 (file)
@@ -1,4 +1,4 @@
-#!/bin/bash -x
+#!/bin/bash
 # @License EPL-1.0 <http://spdx.org/licenses/EPL-1.0>
 ##############################################################################
 # Copyright (c) 2017 The Linux Foundation and others.
@@ -9,13 +9,15 @@
 # http://www.eclipse.org/legal/epl-v10.html
 ##############################################################################
 
+NEWLINE=$'\n'
 RELEASE_EMAIL="release@lists.opendaylight.org"
 ARCHIVES_DIR="$JENKINS_HOSTNAME/$JOB_NAME/$BUILD_NUMBER"
 CONSOLE_LOG="/tmp/autorelease-build.log"
 STREAM=${JOB_NAME#*-*e-}
+ERROR_LOG="$WORKSPACE/error.log.gz"
 
 # get console logs
-wget -O "$CONSOLE_LOG" "${BUILD_URL}consoleText"
+wget --no-verbose -O "$CONSOLE_LOG" "${BUILD_URL}consoleText"
 
 # TODO: This section is still required since some of the projects use
 # description. Remove this section when the reactor info is more consistant.
@@ -37,13 +39,12 @@ if [[ ${REACTOR_INFO} =~ .*::*.*::*. ]]; then
     PROJECT_=$(echo "${REACTOR_INFO}" | awk -F'::' '{ gsub(/^[ \t]+|[ \t]+$/, "", $2); print $2 }')
     NAME=$(echo "${REACTOR_INFO}" | awk -F'::' '{ gsub(/^[ \t]+|[ \t]+$/, "", $3); print $3 }')
 else
-    # set ARTIFACTID to partial format
+    # set project from partial format
     ODL=""
     PROJECT_=""
     NAME=$(echo "${REACTOR_INFO}" | awk '{ gsub(/^[ \t]+|[ \t]+$/, ""); print }')
 fi
 
-
 # determine ARTIFACT_ID for project mailing list
 ARTIFACT_ID=$(awk -F: '/\[ERROR\].*mvn <goals> -rf :/ { print $2}' $CONSOLE_LOG)
 
@@ -86,12 +87,18 @@ fi
 # Construct email subject & body
 PROJECT_STRING=${PROJECT:+" from $PROJECT"}
 SUBJECT="[release] Autorelease $STREAM failed to build $ARTIFACT_ID$PROJECT_STRING"
+# shellcheck disable=SC2034
+ATTACHMENT_INCLUDE="Attached is a snippet of the error message related to the
+failure that we were able to automatically parse as well as console logs."
+# shellcheck disable=SC2034
+ATTACHMENT_EXCLUDE="Unable to attach error message snippet related to the failure
+since this exceeds the mail server attachment size limit. Please
+refer ${ERROR_LOG##*/} in archives directory."
+ATTACHMENT=ATTACHMENT_INCLUDE  # default behaviour
 BODY="Attention ${PROJECT:-"OpenDaylight"}-devs,
 
 Autorelease $STREAM failed to build $ARTIFACT_ID$PROJECT_STRING in build
-$BUILD_NUMBER. Attached is a snippet of the error message related to the
-failure that we were able to automatically parse as well as console logs.
-${PROJECT:+"$GROUPLIST"}
+$BUILD_NUMBER. \${!ATTACHMENT} ${PROJECT:+${NEWLINE}${GROUPLIST}}
 
 Console Logs:
 https://logs.opendaylight.org/$SILO/$ARCHIVES_DIR
@@ -114,21 +121,31 @@ if ([ ! -z "${NAME}" ] || [ ! -z "${ARTIFACT_ID}" ]) && [[ "${BUILD_STATUS}" !=
     # 1. Full format:    ODL :: $PROJECT :: $ARTIFACT_ID
     # 2. Partial format: Building $ARTIFACT_ID
     sed -e "/\[INFO\] Building \(${NAME} \|${ARTIFACT_ID} \|${ODL} :: ${PROJECT_} :: ${NAME} \)/,/Reactor Summary:/!d;//d" \
-          $CONSOLE_LOG > /tmp/error.txt
+          $CONSOLE_LOG | gzip > "$ERROR_LOG"
 
     if [ -n "${PROJECT}" ]; then
         RELEASE_EMAIL="${RELEASE_EMAIL}, ${PROJECT}-dev@lists.opendaylight.org"
     fi
 
+    file_size=$(du -k "$ERROR_LOG" | cut -f1)
+
     # Only send emails in production (releng), not testing (sandbox)
     if [ "${SILO}" == "releng" ]; then
-        echo "${BODY}" | mail -a /tmp/error.txt \
-            -r "Jenkins <jenkins-dontreply@opendaylight.org>" \
-            -s "${SUBJECT}" "${RELEASE_EMAIL}"
+        if [[ "$file_size" -gt 100 ]]; then
+            # shellcheck disable=SC2034
+            ATTACHMENT=ATTACHMENT_EXCLUDE
+            eval echo \""${BODY}"\" | mail \
+                -r "Jenkins <jenkins-dontreply@opendaylight.org>" \
+                -s "${SUBJECT}" "${RELEASE_EMAIL}"
+        else
+            eval echo \""${BODY}"\" | mail -a "$ERROR_LOG" \
+                -r "Jenkins <jenkins-dontreply@opendaylight.org>" \
+                -s "${SUBJECT}" "${RELEASE_EMAIL}"
+        fi
     elif [ "${SILO}" == "sandbox" ]; then
         echo "Running in sandbox, not actually sending notification emails"
         echo "Subject: ${SUBJECT}"
-        echo "Body: ${BODY}"
+        eval echo \""Body: ${BODY}"\"
     else
         echo "Not sure how to notify in \"${SILO}\" Jenkins silo"
     fi
index e39426af19abc9fa89ec1a58787f6ec4a1bcfa93..6a63da2c891d19f163a12dc57c73f047e42fe77c 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
           install-features: >
               odl-restconf,
               odl-bgpcep-data-change-counter,
@@ -36,6 +41,7 @@
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
           install-features: >
               odl-restconf,
               odl-bgpcep-data-change-counter,
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
           install-features: >
               odl-restconf,
               odl-bgpcep-bgp-all,
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
           install-features: >
               odl-restconf,
               odl-bgpcep-bgp-all,
index a65c61db2f69894f5a29e5d4c82a5dad605fdab2..bfb14343158132f73cf6ffa7f83802f006d095e4 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
           install-features: >
               odl-restconf,
               odl-bgpcep-bgp-all,
diff --git a/jjb/bgpcep/bgpcep-csit-bgpclustering-longevity.yaml b/jjb/bgpcep/bgpcep-csit-bgpclustering-longevity.yaml
new file mode 100644 (file)
index 0000000..0fa8040
--- /dev/null
@@ -0,0 +1,33 @@
+---
+- project:
+    name: bgpcep-csit-bgpclustering-longevity
+    jobs:
+      - '{project}-csit-3node-{functionality}-{install}-{stream}'
+
+    # The project name
+    project: 'bgpcep'
+
+    # The functionality under test
+    functionality: 'bgpclustering-longevity'
+
+    # Project branches
+    stream:
+      - nitrogen:
+          branch: 'master'
+          jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
+
+    install:
+      - only:
+          scope: 'only'
+
+    # Features to install
+    install-features: >
+        odl-restconf-noauth,
+        odl-bgpcep-bgp
+
+    # Built timeout
+    build-timeout: '1500'
index 0e6aeaca86cf54524c803b73de147fad68787f04..4091f0f639cd337de58519fc5d28466e138994fa 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
           install-features: 'odl-restconf,odl-bgpcep-bgp-all,odl-bgpcep-bgp,odl-netconf-clustered-topology'
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
           install-features: 'odl-restconf,odl-bgpcep-bgp-all,odl-bgpcep-bgp,odl-netconf-clustered-topology'
 
     install:
@@ -31,7 +37,7 @@
           scope: 'all'
 
     # Features to install
-    install-features: 'odl-restconf,odl-bgpcep-bgp,odl-netconf-clustered-topology'
+    install-features: 'odl-restconf-noauth,odl-bgpcep-bgp,odl-netconf-clustered-topology'
 
     # Robot custom options:
     robot-options: '-v USE_NETCONF_CONNECTOR:False'
index 81961b4c4fa92974372d51a35d5c03b23880770f..106977fffa830a7c6cb866d8d56df3f391bd0256 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
           install-features: 'odl-restconf,odl-bgpcep-pcep-all,odl-bgpcep-pcep'
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
           install-features: 'odl-restconf,odl-bgpcep-pcep-all,odl-bgpcep-pcep'
 
     install:
index 876e4981eb226f1caa8c767e8a87880380c1001c..db797632280082a4691cd0d35ee83706b6d51bb2 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
           install-features: >
               odl-restconf,
               odl-bgpcep-pcep-all,
@@ -32,6 +37,7 @@
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
           install-features: >
               odl-restconf,
               odl-bgpcep-pcep-all,
index 03130a80b0842a3bed4ef40b9647cb4a88e904c8..65fe3a3d85e47288ac918ab32fa859f4f8829a45 100644 (file)
@@ -1,4 +1,38 @@
 ---
+- project:
+    name: bgpcep-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-distribution3-check-nitrogen'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-validate-autorelease-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'bgpcep'
+    project-name: 'bgpcep'
+    build-node: centos7-java-builder-4c-8g
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'bgpcep-settings'
+    mvn-goals: 'clean -DrepoBuild install javadoc:aggregate'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: >
+        odlparent-merge-{stream},
+        yangtools-merge-{stream},
+        controller-merge-{stream},
+        mdsal-merge-{stream},
+        tcpmd5-merge-{stream}
+    email-upstream: '[bgpcep] [odlparent] [yangtools] [controller] [mdsal] [tcpmd5]'
+    archive-artifacts: ''
+
 - project:
     name: bgpcep-carbon
     jobs:
@@ -13,7 +47,8 @@
     project: 'bgpcep'
     project-name: 'bgpcep'
     build-node: centos7-java-builder-4c-8g
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -47,6 +82,7 @@
     project-name: 'bgpcep'
     build-node: centos7-java-builder-4c-8g
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
     project: 'bgpcep'
     project-name: 'bgpcep'
     branch: 'stable/beryllium'
+    karaf-version: karaf3
     jdk: openjdk7
     jdks:
       - openjdk7
index afa92bea6a70575779032d2276c86b1f5c371ea8..ac30ab545f47bbae0b8a87a3320fdf6aeb78d666 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
+
+    # TODO: Delete the following if suites are compatible with Boron again.
+    verify-stream: 'carbon'
+    # TODO: Remove the lines above and below when carbon becomes the default scit-verify stream.
+    verify-branch: 'carbon'
+    # TODO: Update the line above when stable/carbon is created.
 
     install:
       - only:
index 0efb7875a234cbe34a40e078aecfbc94ee7afbe2..f8383a8b8c85e012784d0490a059fab402e5faad 100644 (file)
@@ -1,39 +1,68 @@
 ---
 - project:
-    name: bier-carbon\r
-    jobs:\r
+    name: bier-nitrogen
+    jobs:
       - '{project-name}-clm-{stream}'
       - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-distribution3-check-nitrogen'
       - '{project-name}-integration-{stream}'
       - '{project-name}-merge-{stream}'
       - '{project-name}-validate-autorelease-{stream}'
       - '{project-name}-verify-{stream}-{maven}-{jdks}'
-\r
-    stream: carbon\r
-    project: 'bier'\r
-    project-name: 'bier'\r
-    branch: 'master'\r
-    jdk: openjdk8\r
-    jdks:\r
+
+    stream: nitrogen
+    project: 'bier'
+    project-name: 'bier'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
       - openjdk8
-    maven:\r
+    maven:
       - mvn33:
           mvn-version: 'mvn33'
-    mvn-settings: 'bier-settings'\r
-    mvn-goals: 'clean install'\r
-    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'\r
-    dependencies: ''\r
-    email-upstream: '[bier]'\r
-    archive-artifacts: ''\r
-\r
-- project:\r
-    name: bier-sonar\r
-    jobs:\r
+    mvn-settings: 'bier-settings'
+    mvn-goals: 'clean install'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: ''
+    email-upstream: '[bier]'
+    archive-artifacts: ''
+
+- project:
+    name: bier-carbon
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-validate-autorelease-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: carbon
+    project: 'bier'
+    project-name: 'bier'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'bier-settings'
+    mvn-goals: 'clean install'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: ''
+    email-upstream: '[bier]'
+    archive-artifacts: ''
+
+- project:
+    name: bier-sonar
+    jobs:
       - '{project-name}-sonar'
-\r
-    project: 'bier'\r
-    project-name: 'bier'\r
-    branch: 'master'\r
-    mvn-settings: 'bier-settings'\r
-    mvn-goals: 'clean install'\r
-    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'\r
+
+    project: 'bier'
+    project-name: 'bier'
+    branch: 'master'
+    mvn-settings: 'bier-settings'
+    mvn-goals: 'clean install'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
index 50d83c9d9490db91b7f534adba48fde3f5f67e2e..62294a9451fc0e23bba81c0914debb86a6f97be8 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
index c9b3f09039b09be9c9f92e07d4d3b078315b5518..139bff0e8e4860fbf1a20fc974e1192463cf4c36 100644 (file)
@@ -1,4 +1,32 @@
 ---
+- project:
+    name: capwap-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-distribution3-check-nitrogen'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-validate-autorelease-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'capwap'
+    project-name: 'capwap'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'capwap-settings'
+    mvn-goals: 'clean install'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: ''
+    email-upstream: '[capwap]'
+    archive-artifacts: ''
+
 - project:
     name: capwap-carbon
     jobs:
@@ -12,7 +40,8 @@
     stream: carbon
     project: 'capwap'
     project-name: 'capwap'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -40,6 +69,7 @@
     project: 'capwap'
     project-name: 'capwap'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -67,6 +97,7 @@
     project: 'capwap'
     project-name: 'capwap'
     branch: 'stable/beryllium'
+    karaf-version: karaf3
     jdk: openjdk7
     jdks:
       - openjdk7
index 58b08a2149baa1fac2c223f9c6a14b14af83353d..f1d3fb98caaf6e36bdfb174ec077a08d196d4349 100644 (file)
@@ -1,4 +1,32 @@
 ---
+- project:
+    name: cardinal-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-distribution3-check-nitrogen'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-validate-autorelease-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'cardinal'
+    project-name: 'cardinal'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'cardinal-settings'
+    mvn-goals: 'clean install'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: 'openflowplugin-merge-{stream},iotdm-merge-{stream},sfc-merge-{stream}'
+    email-upstream: '[cardinal] [openflowplugin] [iotdm] [sfc]'
+    archive-artifacts: ''
+
 - project:
     name: cardinal-carbon
     jobs:
@@ -12,7 +40,8 @@
     stream: carbon
     project: 'cardinal'
     project-name: 'cardinal'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -40,6 +69,7 @@
     project: 'cardinal'
     project-name: 'cardinal'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
index eaa5de453539306d4ba169f0ec44008007d86df1..ed02d51247e6f5857078cebc6fb27e9a0ac11103 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
index fac8ade2e2ac2ad48a73e769322e25635837cc70..4ac5b1b5a89cd4a6b68e2c3ada8ad3459a66c66d 100644 (file)
@@ -1,4 +1,32 @@
 ---
+- project:
+    name: centinel-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-distribution3-check-nitrogen'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-validate-autorelease-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'centinel'
+    project-name: 'centinel'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'centinel-settings'
+    mvn-goals: 'clean install'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: ''
+    email-upstream: '[centinel]'
+    archive-artifacts: ''
+
 - project:
     name: centinel-carbon
     jobs:
@@ -12,7 +40,8 @@
     stream: carbon
     project: 'centinel'
     project-name: 'centinel'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -40,6 +69,7 @@
     project: 'centinel'
     project-name: 'centinel'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -67,6 +97,7 @@
     project: 'centinel'
     project-name: 'centinel'
     branch: 'stable/beryllium'
+    karaf-version: karaf3
     jdk: openjdk7
     jdks:
       - openjdk7
index 2686865d95f2467187a6af416bf8de69672ea6d3..dd495752fbd9dc039132fc0bedd573000cb70f74 100644 (file)
@@ -1,4 +1,29 @@
 ---
+- project:
+    name: coe-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    project: 'coe'
+    project-name: 'coe'
+    stream: nitrogen
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'coe-settings'
+    mvn-goals: 'clean install -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: 'odlparent-merge-{stream},yangtools-merge-{stream},controller-merge-{stream}'
+    email-upstream: '[coe] [odlparent] [yangtools] [controller]'
+    archive-artifacts: ''
+
 - project:
     name: coe-carbon
     jobs:
@@ -10,7 +35,8 @@
     project: 'coe'
     project-name: 'coe'
     stream: carbon
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
index 9708367766dbbf6a8fa1acb93b43a2f26dd1eb6d..4bb7e8f2d6000d649329e6fb90a25ec62899c43c 100644 (file)
 
     # Project branches. Boron for actual testing, Beryllium for sanity.
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
index ee70dbfe4e297c06429e8858350e197dc897ec59..8778cf5f32e30e5075bd4b4f0741f48023126f3b 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
@@ -34,7 +40,7 @@
 
     # Features to install
     install-features: >
-        odl-restconf,
+        odl-restconf-noauth,
         odl-clustering-test-app
 
     # Robot custom options
diff --git a/jjb/controller/controller-csit-cs-chasing-leader.yaml b/jjb/controller/controller-csit-cs-chasing-leader.yaml
new file mode 100644 (file)
index 0000000..40dc8c3
--- /dev/null
@@ -0,0 +1,33 @@
+---
+- project:
+    name: mdsal-csit-cluster-singleton-chasing-the-leader-longevity
+    jobs:
+      - '{project}-csit-3node-{functionality}-{install}-{stream}'
+
+    # The project name
+    project: 'controller'
+
+    # The functionality under test
+    functionality: 'cs-chasing-leader-longevity'
+
+    # Project branches
+    stream:
+      - nitrogen:
+          branch: 'master'
+          jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
+
+    install:
+      - only:
+          scope: 'only'
+
+    # Features to install
+    install-features: >
+        odl-restconf-noauth,
+        odl-clustering-test-app
+
+    # Built timeout
+    build-timeout: '1500'
diff --git a/jjb/controller/controller-csit-cs-partnheal.yaml b/jjb/controller/controller-csit-cs-partnheal.yaml
new file mode 100644 (file)
index 0000000..cc5101f
--- /dev/null
@@ -0,0 +1,33 @@
+---
+- project:
+    name: mdsal-csit-cluster-singleton-partition-and-heal-longevity
+    jobs:
+      - '{project}-csit-3node-{functionality}-{install}-{stream}'
+
+    # The project name
+    project: 'controller'
+
+    # The functionality under test
+    functionality: 'cs-partnheal-longevity'
+
+    # Project branches
+    stream:
+      - nitrogen:
+          branch: 'master'
+          jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
+
+    install:
+      - only:
+          scope: 'only'
+
+    # Features to install
+    install-features: >
+        odl-restconf-noauth,
+        odl-clustering-test-app
+
+    # Built timeout
+    build-timeout: '1500'
diff --git a/jjb/controller/controller-csit-ddb-expl-lead-movement.yaml b/jjb/controller/controller-csit-ddb-expl-lead-movement.yaml
new file mode 100644 (file)
index 0000000..4c1b0af
--- /dev/null
@@ -0,0 +1,33 @@
+---
+- project:
+    name: mdsal-csit-dom-data-broker-explicit-leader-movement-longevity
+    jobs:
+      - '{project}-csit-3node-{functionality}-{install}-{stream}'
+
+    # The project name
+    project: 'controller'
+
+    # The functionality under test
+    functionality: 'ddb-expl-lead-movement-longevity'
+
+    # Project branches
+    stream:
+      - nitrogen:
+          branch: 'master'
+          jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
+
+    install:
+      - only:
+          scope: 'only'
+
+    # Features to install
+    install-features: >
+        odl-restconf-noauth,
+        odl-clustering-test-app
+
+    # Built timeout
+    build-timeout: '1500'
index 721966c0535b3d3497b24df5df67b1b909e5ef66..37172087c8756c58778cef469680b04451ee7c58 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
 
     install:
       - only:
diff --git a/jjb/controller/controller-csit-drb-partnheal.yaml b/jjb/controller/controller-csit-drb-partnheal.yaml
new file mode 100644 (file)
index 0000000..bd0bbc1
--- /dev/null
@@ -0,0 +1,33 @@
+---
+- project:
+    name: mdsal-csit-dom-rpc-broker-partition-and-heal-longevity
+    jobs:
+      - '{project}-csit-3node-{functionality}-{install}-{stream}'
+
+    # The project name
+    project: 'controller'
+
+    # The functionality under test
+    functionality: 'drb-partnheal-longevity'
+
+    # Project branches
+    stream:
+      - nitrogen:
+          branch: 'master'
+          jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
+
+    install:
+      - only:
+          scope: 'only'
+
+    # Features to install
+    install-features: >
+        odl-restconf-noauth,
+        odl-clustering-test-app
+
+    # Built timeout
+    build-timeout: '1500'
diff --git a/jjb/controller/controller-csit-drb-precedence.yaml b/jjb/controller/controller-csit-drb-precedence.yaml
new file mode 100644 (file)
index 0000000..039c684
--- /dev/null
@@ -0,0 +1,33 @@
+---
+- project:
+    name: mdsal-csit-dom-rpc-broker-precedence-longevity
+    jobs:
+      - '{project}-csit-3node-{functionality}-{install}-{stream}'
+
+    # The project name
+    project: 'controller'
+
+    # The functionality under test
+    functionality: 'drb-precedence-longevity'
+
+    # Project branches
+    stream:
+      - nitrogen:
+          branch: 'master'
+          jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
+
+    install:
+      - only:
+          scope: 'only'
+
+    # Features to install
+    install-features: >
+        odl-restconf-noauth,
+        odl-clustering-test-app
+
+    # Built timeout
+    build-timeout: '1500'
index a1fa0f355d491c9227e5dd97cf75f6cc648eaccb..af7ff6109449746401fb951094ae56eb5c049672 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
index 8ab95ce935d8e14b19dad9312ec399679b3f1ef5..13f7e0be762d8c887c56c2c2e2f4efffe070fb3c 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
index 6ca973443e56557dd6c6d0eaef073fc09e03b825..09869279379f2dd1cc8190c7912d60711f0cac50 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
index 0537ec216c100d616bad569b96687ebf0abe71c9..8710a4602bf3a035d75cd6db96df0a52621dc397 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
index cfb0d9081cb3857fff4709c3fed6af9c03668916..8d1679134a7ef33fe83dd34fe05d234da59430be 100644 (file)
@@ -1,4 +1,32 @@
 ---
+- project:
+    name: controller-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-distribution3-check-nitrogen'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-validate-autorelease-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'controller'
+    project-name: 'controller'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'controller-settings'
+    mvn-goals: 'clean install -Pintegrationtests,docs'
+    mvn-opts: '-Xmx4096m -XX:MaxPermSize=1024m -Dmaven.compile.fork=true'
+    dependencies: 'odlparent-merge-{stream},yangtools-merge-{stream},aaa-merge-{stream}'
+    email-upstream: '[controller] [odlparent] [yangtools] [aaa]'
+    archive-artifacts: ''
+
 - project:
     name: controller-carbon
     jobs:
@@ -12,7 +40,8 @@
     stream: carbon
     project: 'controller'
     project-name: 'controller'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -40,6 +69,7 @@
     project: 'controller'
     project-name: 'controller'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -67,6 +97,7 @@
     project: 'controller'
     project-name: 'controller'
     branch: 'stable/beryllium'
+    karaf-version: karaf3
     jdk: openjdk7
     jdks:
       - openjdk7
index 6f3cc1e15f63ae959211c29318f108273228d085..367ca6e7f8d66f2a07f7260e854a5117048e8e15 100644 (file)
@@ -1,4 +1,29 @@
 ---
+- project:
+    name: coretutorials-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'coretutorials'
+    project-name: 'coretutorials'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'coretutorials-settings'
+    mvn-goals: 'clean install'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: ''
+    email-upstream: '[coretutorials]'
+    archive-artifacts: ''
+
 - project:
     name: coretutorials-carbon
     jobs:
@@ -10,7 +35,8 @@
     stream: carbon
     project: 'coretutorials'
     project-name: 'coretutorials'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -36,6 +62,7 @@
     project: 'coretutorials'
     project-name: 'coretutorials'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -61,6 +88,7 @@
     project: 'coretutorials'
     project-name: 'coretutorials'
     branch: 'stable/beryllium'
+    karaf-version: karaf3
     jdk: openjdk7
     jdks:
       - openjdk7
index 1c4586b27d70eabe5efaf2ec3fd7f891018ba5c9..cd0cab21d0eb9805fa679008a7eee8473fe5663a 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
           # yamllint disable-line rule:line-length
-          bundleurl: 'https://jenkins.opendaylight.org/releng/view/daexim/job/daexim-merge-carbon/lastSuccessfulBuild/org.opendaylight.daexim$daexim-karaf/artifact/org.opendaylight.daexim/daexim-karaf/1.0.0-SNAPSHOT/daexim-karaf-1.0.0-SNAPSHOT.zip'
+          bundle-url: 'https://jenkins.opendaylight.org/releng/view/daexim/job/daexim-merge-carbon/lastSuccessfulBuild/org.opendaylight.daexim$daexim-karaf/artifact/org.opendaylight.daexim/daexim-karaf/1.0.0-SNAPSHOT/daexim-karaf-1.0.0-SNAPSHOT.zip'
 
     install:
       - only:
index 0cd2f6de3aab0c5109a421e4a3abdb527e245ac3..902fcacf84110ac129f90127db887d864f926c13 100644 (file)
@@ -1,4 +1,29 @@
 ---
+- project:
+    name: daexim-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    project: 'daexim'
+    project-name: 'daexim'
+    stream: nitrogen
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'daexim-settings'
+    mvn-goals: 'clean install -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: 'odlparent-merge-{stream},yangtools-merge-{stream},controller-merge-{stream}'
+    email-upstream: '[daexim] [odlparent] [yangtools] [controller]'
+    archive-artifacts: ''
+
 - project:
     name: daexim-carbon
     jobs:
@@ -10,7 +35,8 @@
     project: 'daexim'
     project-name: 'daexim'
     stream: carbon
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
index bd528f52b87e9cf8c3a74921ab7c7047808e0598..615ce277b5ea9b2eea4e6ba52b0d99c2e71625ab 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
index e0eb6405543fd4954427192e49869d0987cbd2ee..97d50d454805a4746a86ac014dc88dfdca26a96c 100644 (file)
@@ -1,4 +1,32 @@
 ---
+- project:
+    name: didm-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-distribution3-check-nitrogen'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-validate-autorelease-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'didm'
+    project-name: 'didm'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'didm-settings'
+    mvn-goals: 'clean install'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: ''
+    email-upstream: '[didm]'
+    archive-artifacts: ''
+
 - project:
     name: didm-carbon
     jobs:
@@ -12,7 +40,8 @@
     stream: carbon
     project: 'didm'
     project-name: 'didm'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -40,6 +69,7 @@
     project: 'didm'
     project-name: 'didm'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -67,6 +97,7 @@
     project: 'didm'
     project-name: 'didm'
     branch: 'stable/beryllium'
+    karaf-version: karaf3
     jdk: openjdk7
     jdks:
       - openjdk7
index e8b145559f4f3f572dfe5fc7dcc5811a9a0c73cc..b770c2150a1b0283613795003f5cf91e95729984 100644 (file)
@@ -1,4 +1,29 @@
 ---
+- project:
+    name: discovery-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'discovery'
+    project-name: 'discovery'
+    branch: 'master'
+    jdk: openjdk7
+    jdks:
+      - openjdk7
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'discovery-settings'
+    mvn-goals: 'clean install'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: ''
+    email-upstream: '[discovery]'
+    archive-artifacts: ''
+
 - project:
     name: discovery-carbon
     jobs:
@@ -10,7 +35,8 @@
     stream: carbon
     project: 'discovery'
     project-name: 'discovery'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk7
     jdks:
       - openjdk7
@@ -36,6 +62,7 @@
     project: 'discovery'
     project-name: 'discovery'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk7
     jdks:
       - openjdk7
@@ -61,6 +88,7 @@
     project: 'discovery'
     project-name: 'discovery'
     branch: 'stable/beryllium'
+    karaf-version: karaf3
     jdk: openjdk7
     jdks:
       - openjdk7
index 38077fd7e125498698045ea6e6863f372b7ff2d7..30568d2f1366e50e274f803823980ff77c585397 100644 (file)
@@ -1,4 +1,32 @@
 ---
+- project:
+    name: dlux-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-distribution3-check-nitrogen'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-validate-autorelease-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'dlux'
+    project-name: 'dlux'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'dlux-settings'
+    mvn-goals: 'clean install'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: 'odlparent-merge-{stream}'
+    email-upstream: '[dlux] [odlparent]'
+    archive-artifacts: ''
+
 - project:
     name: dlux-carbon
     jobs:
@@ -12,7 +40,8 @@
     stream: carbon
     project: 'dlux'
     project-name: 'dlux'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -40,6 +69,7 @@
     project: 'dlux'
     project-name: 'dlux'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -66,6 +96,7 @@
     stream: beryllium
     project: 'dlux'
     project-name: 'dlux'
+    karaf-version: karaf3
     branch: 'stable/beryllium'
     jdk: openjdk7
     jdks:
similarity index 57%
rename from jjb/armoury/armoury-csit-basic.yaml
rename to jjb/dluxapps/dluxapps-csit-yangman.yaml
index bf9e326ef18e1031c290a501528598bca98c21ac..e475941b8294279aba3d5ab57eac48a67917a509 100644 (file)
@@ -1,27 +1,29 @@
 ---
 - project:
-    name: armoury-csit-basic
+    name: dluxapps-csit-yangman
     jobs:
       - '{project}-csit-1node-{functionality}-{install}-{stream}'
       - '{project}-csit-verify-1node-{functionality}'
 
     # The project name
-    project: 'armoury'
+    project: 'dluxapps'
 
     # The functionality under test
-    functionality: 'basic'
+    functionality: 'yangman'
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
-      - boron:
-          branch: 'stable/boron'
+      - carbon:
+          branch: 'stable/carbon'
           jre: 'openjdk8'
-      - beryllium:
-          branch: 'stable/beryllium'
-          jre: 'openjdk7'
+          karaf-version: karaf3
+
+    # dluxapps started in Carbon project, so current verify with Boron is not working
+    verify-stream: 'carbon'
+    verify-branch: 'stable/carbon'
 
     install:
       - only:
@@ -30,9 +32,7 @@
           scope: 'all'
 
     # Features to install
-    install-features: >
-        odl-restconf,
-        odl-armoury-workloadmanager
+    install-features: 'odl-dluxapps-yangman'
 
     # Robot custom options
     robot-options: ''
index afa1ef03f1d60e5673921120edb597bef992c9a2..df544b9f710223d9741ce6c2c247fe25c83dd13c 100644 (file)
@@ -1,4 +1,32 @@
 ---
+- project:
+    name: dluxapps-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-distribution3-check-nitrogen'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-validate-autorelease-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    project: 'dluxapps'
+    project-name: 'dluxapps'
+    stream: nitrogen
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'dluxapps-settings'
+    mvn-goals: 'clean install -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: 'odlparent-merge-{stream},yangtools-merge-{stream},controller-merge-{stream}'
+    email-upstream: '[dluxapps] [odlparent] [yangtools] [controller]'
+    archive-artifacts: ''
+
 - project:
     name: dluxapps-carbon
     jobs:
@@ -12,7 +40,8 @@
     project: 'dluxapps'
     project-name: 'dluxapps'
     stream: carbon
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
index 2aef3457a49ea983d8b3f3e3ea911acf43f18ee7..3fd3f3ce263fb676a2d6860e2476f2f7de4481d1 100644 (file)
@@ -7,8 +7,11 @@
       - '{project-name}-verify-tox-{stream}'
 
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
+          jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
       - boron:
           branch: 'stable/boron'
       - beryllium:
@@ -72,6 +75,7 @@
     # FIXME: Describe this job in docs/jenkins.rst
     name: 'docs-verify-rtd-{stream}'
     node: centos7-java-builder-2c-8g
+    concurrent: true
 
     project-type: freestyle
 
index 4b889806f3f4cf785d8db8bc80d4415051eedb33..7ae21fed1a493afa3ce27f881207525d3d954dae 100644 (file)
@@ -1,4 +1,32 @@
 ---
+- project:
+    name: eman-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-distribution3-check-nitrogen'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-validate-autorelease-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'eman'
+    project-name: 'eman'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'eman-settings'
+    mvn-goals: 'clean install'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: ''
+    email-upstream: '[eman]'
+    archive-artifacts: ''
+
 - project:
     name: eman-carbon
     jobs:
@@ -12,7 +40,8 @@
     stream: carbon
     project: 'eman'
     project-name: 'eman'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -40,6 +69,7 @@
     project: 'eman'
     project-name: 'eman'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
index ff630de93e7bd03779eec8e4f2f55e7d594fd7c2..ead4febb2d054465ba362937b6112dc2f5b21531 100644 (file)
@@ -1,4 +1,32 @@
 ---
+- project:
+    name: faas-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-distribution3-check-nitrogen'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-validate-autorelease-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'faas'
+    project-name: 'faas'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'faas-settings'
+    mvn-goals: 'clean install'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: ''
+    email-upstream: '[faas]'
+    archive-artifacts: ''
+
 - project:
     name: faas-carbon
     jobs:
@@ -12,7 +40,8 @@
     stream: carbon
     project: 'faas'
     project-name: 'faas'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -40,6 +69,7 @@
     project: 'faas'
     project-name: 'faas'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -67,6 +97,7 @@
     project: 'faas'
     project-name: 'faas'
     branch: 'stable/beryllium'
+    karaf-version: karaf3
     jdk: openjdk7
     jdks:
       - openjdk7
index e79069554b0e8716bc34205b774500c761058444..6d8aede2ce0566895c83e3e2ce55fc628d5a2baf 100644 (file)
@@ -1,4 +1,32 @@
 ---
+- project:
+    name: federation-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+      - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-distribution3-check-nitrogen'
+      - '{project-name}-validate-autorelease-{stream}'
+
+    project: 'federation'
+    project-name: 'federation'
+    stream: nitrogen
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'federation-settings'
+    mvn-goals: 'clean install -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: 'odlparent-merge-{stream},yangtools-merge-{stream},controller-merge-{stream}'
+    email-upstream: '[federation] [odlparent] [yangtools] [controller]'
+    archive-artifacts: ''
+
 - project:
     name: federation-carbon
     jobs:
@@ -12,7 +40,8 @@
     project: 'federation'
     project-name: 'federation'
     stream: carbon
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
index 75afd356c80be13931d1d5d4ae87d7beacb05077..68a31279410b8212b3f7ae38ae789dbbf35f54ee 100644 (file)
@@ -2,23 +2,33 @@
 - project:
     name: genius-csit-genius
     jobs:
+      - '{project}-csit-3node-{functionality}-{install}-{stream}'
       - '{project}-csit-1node-{functionality}-{install}-{stream}'
       - '{project}-csit-verify-1node-{functionality}'
+      - '{project}-csit-verify-3node-{functionality}'
+
 
     # The project name
     project: 'genius'
 
     # The functionality under test
-    functionality: 'genius'
+    functionality:
+      - 'upstream'
+      - 'gate'
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
 
     install:
       - only:
index 243abe5ed33242770c85b90e40f14d6496bef2f6..666c4a37d4d6b6868433360b70539f5cbbcf7766 100644 (file)
@@ -9,12 +9,17 @@
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jdk: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jdk: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jdk: 'openjdk8'
+          karaf-version: karaf3
 
     feature:
       - netvirt:
@@ -27,5 +32,5 @@
 
       - genius:
           csit-list: >
-              genius-csit-1node-genius-only-{stream},
-              genius-csit-1node-genius-all-{stream}
+              genius-csit-1node-gate-only-{stream},
+              genius-csit-1node-gate-all-{stream}
index 816e81ace0ede074f14d3c440f09e4419cc13af0..50659e1460be24a6f5f1fd3fac127df1b6742ca0 100644 (file)
@@ -1,4 +1,37 @@
 ---
+- project:
+    name: genius-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-distribution3-check-nitrogen'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-validate-autorelease-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'genius'
+    project-name: 'genius'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'genius-settings'
+    mvn-goals: 'clean install'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: >
+        controller-merge-{stream},
+        yangtools-merge-{stream},
+        odlparent-merge-{stream},
+        openflowplugin-merge-{stream},
+        neutron-merge-{stream}
+    email-upstream: '[genius] [controller] [yangtools] [odlparent] [openflowplugin] [neutron]'
+    archive-artifacts: ''
+
 - project:
     name: genius-carbon
     jobs:
@@ -12,7 +45,8 @@
     stream: carbon
     project: 'genius'
     project-name: 'genius'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -44,6 +78,7 @@
     stream: boron
     project: 'genius'
     project-name: 'genius'
+    karaf-version: karaf3
     branch: 'stable/boron'
     jdk: openjdk8
     jdks:
diff --git a/jjb/global-jjb b/jjb/global-jjb
new file mode 160000 (submodule)
index 0000000..3078685
--- /dev/null
@@ -0,0 +1 @@
+Subproject commit 307868565936d7a5338e1a76dc8a048d914b29be
index 7c7913813501d559dcd41ee59da1f8d0c3bbaa66..1f598940fa10007d71bf9f95bbc4568bdaad8b16 100644 (file)
     functionality: 'openstack'
 
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
           install-features: 'odl-groupbasedpolicy-neutron-and-ofoverlay,odl-restconf'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
+          install-features: 'odl-groupbasedpolicy-neutron-and-ofoverlay,odl-restconf'
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
           install-features: 'odl-groupbasedpolicy-neutron-and-ofoverlay,odl-restconf'
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
           install-features: 'odl-groupbasedpolicy-neutronmapper,odl-restconf'
 
     openstack:
-      - mitaka:
-          openstack-branch: 'stable/mitaka'
-          odl-ml2-branch: 'stable/mitaka'
-      - liberty:
-          openstack-branch: 'stable/liberty'
-          odl-ml2-branch: 'stable/liberty'
+      - newton:
+          openstack-branch: 'stable/newton'
+          odl-ml2-branch: 'stable/newton'
 
     schedule: 'H H * * *'
 
index e611d0fd71787abf2851839383f0e61531d417c9..1572c351122858c2ca4b4c32d5eee4a3efd45f0b 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
index f54fbb8f7d2e2afb9c5d12aaf6454ea97259fc08..bf8b007676309729e345a084672d0b9a19233c46 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
index 6b386c0fc6594b1fbb0bf7ec09953d2f827e4024..c69f567062a8ca2ec17a784d280ff8ecece07e2b 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
index 970722602f7ad7f710f3662b0b9254b2bbb8ef61..e818a669acded5446c419244acafde775b7325d9 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
 
     install:
       - only:
index b0c69d6223b01885cbdb94092e3c4d9e477a2cc5..5df80371467eae3e3b9085ab6c874a4559f9e7fa 100644 (file)
@@ -1,4 +1,37 @@
 ---
+- project:
+    name: groupbasedpolicy-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-distribution3-check-nitrogen'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-validate-autorelease-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'groupbasedpolicy'
+    project-name: 'groupbasedpolicy'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'groupbasedpolicy-settings'
+    mvn-goals: '-U clean install findbugs:findbugs'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: >
+        openflowjava-merge-{stream},
+        openflowplugin-merge-{stream},
+        neutron-merge-{stream},
+        sfc-merge-{stream},
+        ovsdb-merge-{stream}
+    email-upstream: '[groupbasedpolicy] [openflowjava] [openflowplugin] [neutron] [sfc] [ovsdb]'
+    archive-artifacts: ''
+
 - project:
     name: groupbasedpolicy-carbon
     jobs:
@@ -12,7 +45,8 @@
     stream: carbon
     project: 'groupbasedpolicy'
     project-name: 'groupbasedpolicy'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -45,6 +79,7 @@
     project: 'groupbasedpolicy'
     project-name: 'groupbasedpolicy'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
     project: 'groupbasedpolicy'
     project-name: 'groupbasedpolicy'
     branch: 'stable/beryllium'
+    karaf-version: karaf3
     jdk: openjdk7
     jdks:
       - openjdk7
index 50a1b379724607e8ce6ad842402a5d391faaddca..a8729cee54587b40fe7712de6523d23a11e6792d 100644 (file)
@@ -1,4 +1,32 @@
 ---
+- project:
+    name: vbd-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-distribution3-check-nitrogen'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-validate-autorelease-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'honeycomb/vbd'
+    project-name: 'vbd'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'honeycomb-vbd-settings'
+    mvn-goals: 'clean install'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: ''
+    email-upstream: '[vbd]'
+    archive-artifacts: ''
+
 - project:
     name: vbd-carbon
     jobs:
@@ -12,7 +40,8 @@
     stream: carbon
     project: 'honeycomb/vbd'
     project-name: 'vbd'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -40,6 +69,7 @@
     project: 'honeycomb/vbd'
     project-name: 'vbd'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
index fd25bc2d30391f56f332f8edf48f4c0b75eebb10..4f1e6eb15a75679cf761cc5892b8b21bb39429d4 100644 (file)
@@ -78,7 +78,7 @@ if [ ! -z "$ARCHIVE_ARTIFACTS" ]; then
     for f in $ARCHIVE_ARTIFACTS; do
         [[ -e $f ]] || continue  # handle the case of no files to archive
         echo "Archiving $f" >> "$WORKSPACE/.archives/$ARCHIVES_DIR/_archives.log"
-        dir=$(dirname "$f")
+        dir="$(dirname "$f")"
         mkdir -p "$WORKSPACE/archives/$dir"
         mv "$f" "$WORKSPACE/archives/$f"
     done
@@ -91,7 +91,7 @@ fi
 mv "$WORKSPACE/archives/" "$ARCHIVES_DIR" > /dev/null 2>&1
 touch "$ARCHIVES_DIR/_build-details.txt"
 echo "build-url: ${BUILD_URL}" >> "$ARCHIVES_DIR/_build-details.txt"
-env | grep -v PASSWORD > "$ARCHIVES_DIR/_build-enviroment-variables.txt"
+env | grep -v PASSWORD | sort > "$ARCHIVES_DIR/_build-enviroment-variables.txt"
 
 # capture system info
 touch "$ARCHIVES_DIR/_sys-info.txt"
@@ -102,6 +102,7 @@ touch "$ARCHIVES_DIR/_sys-info.txt"
     echo -e "nproc:\n $(nproc) \n"
     echo -e "lscpu:\n $(lscpu) \n"
     echo -e "ip addr:\n  $(/sbin/ip addr) \n"
+    echo -e "sar -r:\n  $(sar -r) \n"
 } 2>&1 | tee -a "$ARCHIVES_DIR/_sys-info.txt"
 
 # Magic string used to trim console logs at the appropriate level during wget
@@ -119,7 +120,7 @@ find "$ARCHIVES_DIR" -type f -print0 \
                 | cut -d: -f1 \
                 | xargs -d'\n' -r gzip
 # Compress Java heap dumps using xz
-find "$ARCHIVES_DIR" -type f -name \*.hprof -print0 | xargs -0 xz
+find "$ARCHIVES_DIR" -type f -name \*.hprof -print0 | xargs -0 xz -T 0
 
 zip -r archives.zip "$JENKINS_HOSTNAME/" >> "$ARCHIVES_DIR/_archives.log"
 du -sh archives.zip
index 09fbf197b5747a37ca0a73fff4fb2059d3c09309..004da6b48f70e7d13781b36bf9adf7a47dbb244b 100644 (file)
@@ -1,4 +1,32 @@
 ---
+- project:
+    name: infrautils-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-distribution3-check-nitrogen'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-validate-autorelease-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'infrautils'
+    project-name: 'infrautils'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'infrautils-settings'
+    mvn-goals: 'clean install'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: 'odlparent-merge-{stream}'
+    email-upstream: '[infrautils] [odlparent]'
+    archive-artifacts: ''
+
 - project:
     name: infrautils-carbon
     jobs:
@@ -12,7 +40,8 @@
     stream: carbon
     project: 'infrautils'
     project-name: 'infrautils'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -40,6 +69,7 @@
     project: 'infrautils'
     project-name: 'infrautils'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
similarity index 59%
rename from jjb/integration/include-raw-integration-deploy-controller-offline.sh
rename to jjb/integration/distribution-deploy-offline.sh
index bc525171f46ffeafdce86692d40a613eec67ccf6..c71eecb8ea2a7777ca2da6e0797383785c73a293 100644 (file)
@@ -8,44 +8,48 @@ echo "Clean workspace"
 rm -rf *
 
 echo "Downloading the distribution..."
-wget --progress=dot:mega ${ACTUALBUNDLEURL}
+wget --progress=dot:mega "${ACTUAL_BUNDLE_URL}"
 
 echo "Extracting the new controller..."
-unzip -q ${BUNDLE}
+unzip -q "${BUNDLE}"
 
 echo "Configuring the startup features..."
-FEATURESCONF=${WORKSPACE}/${BUNDLEFOLDER}/etc/org.apache.karaf.features.cfg
-sed -ie "s%mvn:org.opendaylight.integration/features-integration-index/${BUNDLEVERSION}/xml/features%mvn:org.opendaylight.integration/features-integration-index/${BUNDLEVERSION}/xml/features,mvn:org.opendaylight.integration/features-integration-test/${BUNDLEVERSION}/xml/features%g" ${FEATURESCONF}
-cat ${FEATURESCONF}
+FEATURESCONF="${WORKSPACE}/${BUNDLEFOLDER}/etc/org.apache.karaf.features.cfg"
+# Add test feature repo if Karaf 4.
+sed -ie "s%mvn:org.opendaylight.integration/features-index/${BUNDLEVERSION}/xml/features%mvn:org.opendaylight.integration/features-index/${BUNDLEVERSION}/xml/features,mvn:org.opendaylight.integration/features-test/${BUNDLEVERSION}/xml/features%g" "${FEATURESCONF}"
+# Add test feature repo if Karaf 3.
+sed -ie "s%mvn:org.opendaylight.integration/features-integration-index/${BUNDLEVERSION}/xml/features%mvn:org.opendaylight.integration/features-integration-index/${BUNDLEVERSION}/xml/features,mvn:org.opendaylight.integration/features-integration-test/${BUNDLEVERSION}/xml/features%g" "${FEATURESCONF}"
+# Feature is instaled later.
+cat "${FEATURESCONF}"
 
 echo "Configuring the log..."
-LOGCONF=${WORKSPACE}/${BUNDLEFOLDER}/etc/org.ops4j.pax.logging.cfg
-sed -ie 's/log4j.appender.out.maxBackupIndex=10/log4j.appender.out.maxBackupIndex=1/g' ${LOGCONF}
+LOGCONF="${WORKSPACE}/${BUNDLEFOLDER}/etc/org.ops4j.pax.logging.cfg"
+sed -ie 's/log4j.appender.out.maxBackupIndex=10/log4j.appender.out.maxBackupIndex=1/g' "${LOGCONF}"
 # FIXME: Make log size limit configurable from build parameter.
-sed -ie 's/log4j.appender.out.maxFileSize=1MB/log4j.appender.out.maxFileSize=30GB/g' ${LOGCONF}
-cat ${LOGCONF}
+sed -ie 's/log4j.appender.out.maxFileSize=1MB/log4j.appender.out.maxFileSize=30GB/g' "${LOGCONF}"
+cat "${LOGCONF}"
 
 echo "Configure the repos..."
-REPOCONF=${WORKSPACE}/${BUNDLEFOLDER}/etc/org.ops4j.pax.url.mvn.cfg
-sed -ie '/http/d' ${REPOCONF}
-sed -ie '$s/...$//' ${REPOCONF}
-cat ${REPOCONF}
+REPOCONF="${WORKSPACE}/${BUNDLEFOLDER}/etc/org.ops4j.pax.url.mvn.cfg"
+sed -ie '/http/d' "${REPOCONF}"
+sed -ie '$s/...$//' "${REPOCONF}"
+cat "${REPOCONF}"
 
 echo "Configure max memory..."
-MEMCONF=${WORKSPACE}/${BUNDLEFOLDER}/bin/setenv
-sed -ie "s/2048m/${CONTROLLERMEM}/g" ${MEMCONF}
-cat ${MEMCONF}
+MEMCONF="${WORKSPACE}/${BUNDLEFOLDER}/bin/setenv"
+sed -ie "s/2048m/${CONTROLLERMEM}/g" "${MEMCONF}"
+cat "${MEMCONF}"
 
-if [ ${JDKVERSION} == 'openjdk8' ]; then
+if [ "${JDKVERSION}" == 'openjdk8' ]; then
     echo "Setting the JRE Version to 8"
     # dynamic_verify does not allow sudo, JAVA_HOME should be enough for karaf start.
     # sudo /usr/sbin/alternatives --set java /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.60-2.b27.el7_1.x86_64/jre/bin/java
-    export JAVA_HOME=/usr/lib/jvm/java-1.8.0
-elif [ ${JDKVERSION} == 'openjdk7' ]; then
+    export JAVA_HOME='/usr/lib/jvm/java-1.8.0'
+elif [ "${JDKVERSION}" == 'openjdk7' ]; then
     echo "Setting the JRE Version to 7"
     # dynamic_verify does not allow sudo, JAVA_HOME should be enough for karaf start.
     # sudo /usr/sbin/alternatives --set java /usr/lib/jvm/java-1.7.0-openjdk-1.7.0.85-2.6.1.2.el7_1.x86_64/jre/bin/java
-    export JAVA_HOME=/usr/lib/jvm/java-1.7.0
+    export JAVA_HOME='/usr/lib/jvm/java-1.7.0'
 fi
 readlink -e "${JAVA_HOME}/bin/java"
 echo "Default JDK Version, JAVA_HOME should override"
@@ -61,7 +65,7 @@ echo "Sleeping 30 seconds to make sure Karaf ssh has started..."
 sleep 30
 
 echo "Installing all features..."
-sshpass -p karaf ${WORKSPACE}/${BUNDLEFOLDER}/bin/client -u karaf "feature:install ${ACTUALFEATURES}" || echo $? > ${WORKSPACE}/error.txt
+sshpass -p karaf ${WORKSPACE}/${BUNDLEFOLDER}/bin/client -u karaf "feature:install ${ACTUALFEATURES}" || echo $? > "${WORKSPACE}/error.txt"
 
 echo "killing karaf process..."
 ps axf | grep karaf | grep -v grep | awk '{print "kill -9 " $1}' | sh
@@ -69,11 +73,11 @@ sleep 5
 
 echo "Fetching Karaf logs"
 # TODO: Move instead of copy? Gzip?
-cp ${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf.log .
-cp ${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf_console.log .
+cp "${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf.log" .
+cp "${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf_console.log" .
 
 echo "Exit with error"
-if [ -f ${WORKSPACE}/error.txt ]; then
+if [ -f "${WORKSPACE}/error.txt" ]; then
     echo "Failed to deploy offline"
     exit 1
 fi
similarity index 60%
rename from jjb/integration/include-raw-integration-deploy-controller-verify.sh
rename to jjb/integration/distribution-deploy-verify.sh
index bd74574dabdb29540cc0fa8a5a0b90a8ef019e61..193d1f944a6f4e402bded9343cd133a8e483bae0 100644 (file)
@@ -8,40 +8,44 @@ echo "Clean workspace"
 rm -rf *
 
 echo "Downloading the distribution..."
-wget --progress=dot:mega  ${ACTUALBUNDLEURL}
+wget --progress=dot:mega  "${ACTUAL_BUNDLE_URL}"
 
 echo "Extracting the new controller..."
-unzip -q ${BUNDLE}
+unzip -q "${BUNDLE}"
 
 echo "Configuring the startup features..."
 FEATURESCONF=${WORKSPACE}/${BUNDLEFOLDER}/etc/org.apache.karaf.features.cfg
-sed -ie "s/\(featuresBoot=\|featuresBoot =\)/featuresBoot = ${ACTUALFEATURES},/g" ${FEATURESCONF}
-sed -ie "s%mvn:org.opendaylight.integration/features-integration-index/${BUNDLEVERSION}/xml/features%mvn:org.opendaylight.integration/features-integration-index/${BUNDLEVERSION}/xml/features,mvn:org.opendaylight.integration/features-integration-test/${BUNDLEVERSION}/xml/features%g" ${FEATURESCONF}
-cat ${FEATURESCONF}
+# Add test feature repo if Karaf 4.
+sed -ie "s%mvn:org.opendaylight.integration/features-index/${BUNDLEVERSION}/xml/features%mvn:org.opendaylight.integration/features-index/${BUNDLEVERSION}/xml/features,mvn:org.opendaylight.integration/features-test/${BUNDLEVERSION}/xml/features%g" "${FEATURESCONF}"
+# Add test feature repo if Karaf 3.
+sed -ie "s%mvn:org.opendaylight.integration/features-integration-index/${BUNDLEVERSION}/xml/features%mvn:org.opendaylight.integration/features-integration-index/${BUNDLEVERSION}/xml/features,mvn:org.opendaylight.integration/features-integration-test/${BUNDLEVERSION}/xml/features%g" "${FEATURESCONF}"
+# Add actual boot features.
+sed -ie "s/\(featuresBoot=\|featuresBoot =\)/featuresBoot = ${ACTUALFEATURES},/g" "${FEATURESCONF}"
+cat "${FEATURESCONF}"
 
 echo "Configuring the log..."
-LOGCONF=${WORKSPACE}/${BUNDLEFOLDER}/etc/org.ops4j.pax.logging.cfg
-sed -ie 's/log4j.appender.out.maxFileSize=1MB/log4j.appender.out.maxFileSize=20MB/g' ${LOGCONF}
-cat ${LOGCONF}
+LOGCONF="${WORKSPACE}/${BUNDLEFOLDER}/etc/org.ops4j.pax.logging.cfg"
+sed -ie 's/log4j.appender.out.maxFileSize=1MB/log4j.appender.out.maxFileSize=20MB/g' "${LOGCONF}"
+cat "${LOGCONF}"
 
 echo "Configure max memory..."
-MEMCONF=${WORKSPACE}/${BUNDLEFOLDER}/bin/setenv
-sed -ie "s/2048m/${CONTROLLERMEM}/g" ${MEMCONF}
-cat ${MEMCONF}
+MEMCONF="${WORKSPACE}/${BUNDLEFOLDER}/bin/setenv"
+sed -ie "s/2048m/${CONTROLLERMEM}/g" "${MEMCONF}"
+cat "${MEMCONF}"
 
 echo "Listing all open ports on controller system"
 netstat -pnatu
 
-if [ ${JDKVERSION} == 'openjdk8' ]; then
+if [ "${JDKVERSION}" == 'openjdk8' ]; then
     echo "Setting the JRE Version to 8"
     # dynamic_verify does not allow sudo, JAVA_HOME should be enough for karaf start.
     # sudo /usr/sbin/alternatives --set java /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.60-2.b27.el7_1.x86_64/jre/bin/java
-    export JAVA_HOME=/usr/lib/jvm/java-1.8.0
-elif [ ${JDKVERSION} == 'openjdk7' ]; then
+    export JAVA_HOME='/usr/lib/jvm/java-1.8.0'
+elif [ "${JDKVERSION}" == 'openjdk7' ]; then
     echo "Setting the JRE Version to 7"
     # dynamic_verify does not allow sudo, JAVA_HOME should be enough for karaf start.
     # sudo /usr/sbin/alternatives --set java /usr/lib/jvm/java-1.7.0-openjdk-1.7.0.85-2.6.1.2.el7_1.x86_64/jre/bin/java
-    export JAVA_HOME=/usr/lib/jvm/java-1.7.0
+    export JAVA_HOME='/usr/lib/jvm/java-1.7.0'
 fi
 readlink -e "${JAVA_HOME}/bin/java"
 echo "Default JDK Version, JAVA_HOME should override"
@@ -56,22 +60,22 @@ ${WORKSPACE}/${BUNDLEFOLDER}/bin/start
 echo "Waiting for controller to come up..."
 COUNT=0
 while true; do
-    RESP="$( curl --user admin:admin -sL -w "%{http_code} %{url_effective}\\n" http://localhost:8181/restconf/modules -o /dev/null || true )"
-    echo ${RESP}
-    if [[ ${RESP} == *"200"* ]]; then
+    RESP="$(curl --user admin:admin -sL -w "%{http_code} %{url_effective}\\n" http://localhost:8181/restconf/modules -o /dev/null || true)"
+    echo "${RESP}"
+    if [[ "${RESP}" == *"200"* ]]; then
         echo Controller is UP
         break
-    elif (( ${COUNT} > 600 )); then
+    elif (( "${COUNT}" > 600 )); then
         echo Timeout Controller DOWN
         echo "Dumping Karaf log..."
-        cat ${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf.log
+        cat "${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf.log"
         echo "Listing all open ports on controller system"
         netstat -pnatu
         exit 1
     else
-        COUNT=$(( ${COUNT} + 5 ))
+        COUNT="$(( ${COUNT} + 5 ))"
         sleep 5
-        echo waiting ${COUNT} secs...
+        echo "waiting ${COUNT} secs..."
     fi
 done
 
@@ -87,26 +91,26 @@ netstat -pnatu
 
 function exit_on_log_file_message {
     echo "looking for \"$1\" in karaf.log file"
-    if grep --quiet "$1" ${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf.log; then
+    if grep --quiet "$1" "${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf.log"; then
         echo ABORTING: found "$1"
         echo "Dumping first 500K bytes of karaf log..."
-        head --bytes=500K  ${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf.log
+        head --bytes=500K "${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf.log"
         echo "Dumping last 500K bytes of karaf log..."
-        tail --bytes=500K  ${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf.log
-        cp ${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf.log .
-        cp ${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf_console.log .
+        tail --bytes=500K "${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf.log"
+        cp "${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf.log" .
+        cp "${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf_console.log" .
         exit 1
     fi
 
     echo "looking for \"$1\" in karaf_console.log file"
-    if grep --quiet "$1" ${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf_console.log; then
+    if grep --quiet "$1" "${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf_console.log"; then
         echo ABORTING: found "$1"
         echo "Dumping first 500K bytes of karaf log..."
-        head --bytes=500K  ${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf_console.log
+        head --bytes=500K "${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf_console.log"
         echo "Dumping last 500K bytes of karaf log..."
-        tail --bytes=500K  ${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf_console.log
-        cp ${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf.log .
-        cp ${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf_console.log .
+        tail --bytes=500K "${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf_console.log"
+        cp "${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf.log" .
+        cp "${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf_console.log" .
         exit 1
     fi
 }
@@ -116,13 +120,13 @@ exit_on_log_file_message 'server is unhealthy'
 
 echo "Fetching Karaf logs"
 # TODO: Move instead of copy? Gzip?
-cp ${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf.log .
-cp ${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf_console.log .
+cp "${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf.log" .
+cp "${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf_console.log" .
 
 echo "Kill controller"
 ps axf | grep karaf | grep -v grep | awk '{print "kill -9 " $1}' | sh
 
-echo "Detecting misplaced config files"
+echo "Bug 4628: Detecting misplaced config files"
 pushd "${WORKSPACE}/${BUNDLEFOLDER}"
 XMLS_FOUND=`echo *.xml`
 popd
diff --git a/jjb/integration/distribution-jobs.yaml b/jjb/integration/distribution-jobs.yaml
deleted file mode 100644 (file)
index ef584dc..0000000
+++ /dev/null
@@ -1,322 +0,0 @@
----
-- project:
-    name: distribution-jobs
-    jobs:
-      - '{project-name}-verify-python-{stream}'
-      - 'distribution-verify-{stream}'
-      - 'distribution-merge-{stream}'
-      - 'distribution-deploy-{stream}'
-      - 'distribution-offline-{stream}'
-
-    project: integration/distribution
-    project-name: distribution
-
-    stream:
-      - carbon:
-          branch: 'master'
-          jre: 'openjdk8'
-      - boron:
-          branch: 'stable/boron'
-          jre: 'openjdk8'
-      - beryllium:
-          branch: 'stable/beryllium'
-          jre: 'openjdk7'
-
-
-- job-template:
-    name: 'distribution-verify-{stream}'
-
-    project-type: maven
-    node: centos7-java-builder-2c-8g
-    concurrent: true
-    jdk: '{jre}'
-
-    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} **/dependency_tree.txt **/*.hprof'
-      - integration-patch-refspec:
-          branch: '$GERRIT_REFSPEC'
-
-    scm:
-      - gerrit-trigger-scm:
-          refspec: '$PATCHREFSPEC'
-          choosing-strategy: 'gerrit'
-
-    wrappers:
-      - opendaylight-infra-wrappers:
-          build-timeout: '{build-timeout}'
-
-    triggers:
-      - gerrit-trigger-patch-submitted:
-          server: '{server-name}'
-          project: '{project}'
-          branch: '{branch}'
-          files: '**'
-
-    prebuilders:
-      - integration-get-bundle-url-root
-      - inject:
-          properties-file: 'bundle.txt'
-      - wipe-org-opendaylight-repo
-      - provide-maven-settings:
-          global-settings-file: 'odl-global-settings'
-          settings-file: 'integration-settings'
-
-    maven:
-      maven-name: 'mvn33'
-      root-pom: 'pom.xml'
-      goals: >
-          clean install dependency:tree -DoutputFile=dependency_tree.txt -V -B
-          -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r
-          -Djenkins -Dstream={stream}
-      maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
-      settings: 'integration-settings'
-      settings-type: cfp
-      global-settings: 'odl-global-settings'
-      global-settings-type: cfp
-      ignore-upstream-changes: true
-      post-step-run-condition: 'SUCCESS'
-
-    postbuilders:
-      - trigger-builds:
-          - project: 'distribution-deploy-{stream}'
-            block: true
-            predefined-parameters:
-              BUNDLEURL=$BUNDLEURL
-
-    reporters:
-      - findbugs
-
-    publishers:
-      - jacoco-report
-      - opendaylight-infra-shiplogs:
-          maven-version: 'mvn33'
-      - email-notification:
-          email-recipients: '{email-recipients}'
-          email-prefix: '[int/dist]'
-
-
-- job-template:
-    name: 'distribution-merge-{stream}'
-
-    # Need to keep jobs that deploy to Nexus at end of build as Maven
-    # projects. Maybe reconsider this once upstream moves deploy to a
-    # separate lifecycle:
-    #     https://issues.apache.org/jira/browse/MNG-5666
-
-    project-type: maven
-    node: '{build-node}'
-    jdk: '{jre}'
-
-    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} **/dependency_tree.txt **/*.hprof **/target/surefire-reports/*-output.txt'
-      - integration-bundleurl:
-          bundleurl: 'last'
-    scm:
-      - gerrit-trigger-scm:
-          refspec: ''
-          choosing-strategy: 'default'
-
-    wrappers:
-      - opendaylight-infra-wrappers:
-          build-timeout: '{build-timeout}'
-
-    triggers:
-      - gerrit-trigger-patch-merged:
-          server-name: '{server-name}'
-          name: 'integration/distribution'
-          branch: '{branch}'
-
-    prebuilders:
-      - wipe-org-opendaylight-repo
-      - jacoco-nojava-workaround
-      - integration-get-bundle-vars
-      - inject:
-          properties-file: 'bundle_vars.txt'
-      - provide-maven-settings:
-          global-settings-file: 'odl-global-settings'
-          settings-file: 'integration-settings'
-      - distribute-build-url:
-          path: 'distribution-karaf/src/main/assembly'
-
-    maven:
-      maven-name: 'mvn33'
-      root-pom: 'pom.xml'
-      goals: >
-          clean install dependency:tree -DoutputFile=dependency_tree.txt -V -B
-          -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r
-          -Djenkins -Dmerge -Dstream={stream}
-      maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
-      settings: 'integration-settings'
-      settings-type: cfp
-      global-settings: 'odl-global-settings'
-      global-settings-type: cfp
-
-    postbuilders:
-      - conditional-step:
-          condition-kind: file-exists
-          condition-filename: deploy-site.xml
-          condition-basedir: workspace
-
-          # The strategy here is intentional to run Maven site:deploy twice
-          # once using regular pom.xml to produce a staged-site which is
-          # then used by deploy-site.xml to push to Nexus. This is a
-          # workaround to Maven Site's default linking code which creates
-          # incorrect URLs for sites due to auto-detection assuming your
-          # project is configured in a certain way which ODL is not.
-          steps:
-            - maven-target:
-                maven-version: 'mvn33'
-                pom: pom.xml
-                goals: 'site:deploy -V -B -Dstream={stream}'
-                java-opts:
-                  - '-Xmx2g'
-                settings: 'integration-settings'
-                settings-type: cfp
-                global-settings: 'odl-global-settings'
-                global-settings-type: cfp
-            - maven-target:
-                maven-version: 'mvn33'
-                pom: deploy-site.xml
-                goals: 'site:deploy -V -B -Dstream={stream}'
-                java-opts:
-                  - '-Xmx2g'
-                settings: 'integration-settings'
-                settings-type: cfp
-                global-settings: 'odl-global-settings'
-                global-settings-type: cfp
-      - integration-compare-distributions
-    # TODO: the output of the above command is not *friendly* for the reader because the most important info
-    # is listed last. This is fine/best for command line output, but for keeping in a file it would be better
-    # to put the summary at the beginning of the file. Some bash magic can be done here to make that happen.
-
-    reporters:
-      - findbugs
-
-    publishers:
-      - maven-deploy:
-          id: ''
-          unique-version: true
-          deploy-unstable: false
-      - jacoco-report
-      - opendaylight-infra-shiplogs:
-          maven-version: 'mvn33'
-      - email-notification:
-          email-recipients: '{email-recipients}'
-          email-prefix: '[int/dist]'
-
-# Template: distribution-deploy-{stream}
-# Goal: Verify distribution starts with no issues when all features are loaded
-# Operation: This job deploys the controller installing odl-integration-all
-
-- job-template:
-    name: 'distribution-deploy-{stream}'
-
-    project-type: freestyle
-    node: centos7-java-builder-2c-8g
-    concurrent: true
-
-    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} **/*.hprof'
-      - integration-distribution-branch:
-          branch: '{branch}'
-      - integration-bundleurl:
-          bundleurl: '{bundleurl}'
-      - integration-jdk-version:
-          jdkversion: '{jre}'
-
-    wrappers:
-      - opendaylight-infra-wrappers:
-          build-timeout: '{build-timeout}'
-
-    triggers:
-      - timed: 'H H * * *'
-
-    builders:
-      - integration-get-bundle-vars
-      - inject:
-          properties-file: 'bundle_vars.txt'
-      - integration-deploy-controller-verify
-
-    publishers:
-      - email-notification:
-          email-recipients: '{email-recipients}'
-          email-prefix: '[int/dist]'
-      - integration-csit-archive-build
-      - opendaylight-infra-shiplogs:
-          maven-version: 'mvn33'
-
-# Template: distribution-offline-{stream}
-# Goal: Verify distribution can start with no internet connection
-# Operation: This job deploys the controller removing any external repository definition
-
-- job-template:
-    name: 'distribution-offline-{stream}'
-
-    project-type: freestyle
-    node: centos7-java-builder-2c-8g
-
-    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} **/*.hprof'
-      - integration-distribution-branch:
-          branch: '{branch}'
-      - integration-bundleurl:
-          bundleurl: '{bundleurl}'
-      - integration-jdk-version:
-          jdkversion: '{jre}'
-
-    wrappers:
-      - opendaylight-infra-wrappers:
-          build-timeout: '{build-timeout}'
-
-    triggers:
-      - timed: 'H H * * *'
-
-    builders:
-      - integration-get-bundle-vars
-      - inject:
-          properties-file: 'bundle_vars.txt'
-      - integration-deploy-controller-offline
-
-    publishers:
-      - email-notification:
-          email-recipients: '{email-recipients}'
-          email-prefix: '[int/dist]'
-      - integration-csit-archive-build
-      - opendaylight-infra-shiplogs:
-          maven-version: 'mvn33'
diff --git a/jjb/integration/distribution/distribution-check.yaml b/jjb/integration/distribution/distribution-check.yaml
deleted file mode 100644 (file)
index 4ce5012..0000000
+++ /dev/null
@@ -1,79 +0,0 @@
----
-- job-template:
-    # Template: distribution-check-{stream}
-    # Goal: Build a patch and make sure it would not break distribution-check jobs for other projects.
-    # Operation: FIXME
-    #            This job template builds a patch, creates a distribution containing
-    #            the patch (making sure dependencies are specified),
-    #            and performs the distribution deploy test.
-
-    name: 'distribution-check-{stream}'
-    disabled: false
-
-    project-type: freestyle
-    node: '{build-node}'
-    concurrent: true
-    jdk: '{jdk}'
-
-    properties:
-      - opendaylight-infra-properties:
-          build-days-to-keep: '{build-days-to-keep}'
-
-    parameters:
-      - opendaylight-infra-parameters:
-          os-cloud: '{os-cloud}'
-          project: '{project}'
-          branch: '{branch}'
-          refspec: 'refs/heads/{branch}'
-          artifacts: '{archive-artifacts} **/dependency_tree.txt **/target/surefire-reports/*-output.txt'
-
-    scm:
-      - integration-gerrit-scm:
-          basedir: 'distribution'
-          refspec: '$GERRIT_REFSPEC'
-          branch: '{branch}'
-
-    wrappers:
-      - opendaylight-infra-wrappers:
-          # Distro-check jobs typically run within 10 - 30 minutes
-          # with 45 minutes being the occassional edge case.
-          # enforce a 60 minute limit to ensure stuck jobs get
-          # cleared up sooner.
-          build-timeout: '60'
-
-    triggers:
-      - gerrit-trigger-patch-submitted:
-          server: '{server-name}'
-          project: '{project}'
-          branch: '{branch}'
-          files: '**'
-
-    builders:
-      - distribution-check-wipe
-      - distribution-check-build-project:
-          pom: 'distribution/pom.xml'
-      - distribution-check-verify-groupid:
-          gerrit-project: 'integration'
-      - distribution-check-delete-snapshots
-      - distribution-check-configure-remotes
-      - distribution-check-repeat-build:
-          dist-pom: 'distribution/pom.xml'
-      - integration-distribution-check
-
-    publishers:
-      - email-notification:
-          email-recipients: '{email-recipients}'
-          email-prefix: '[{project-name}]'
-      - postbuildscript:
-          builders:
-            - shell: |
-                #!/bin/bash
-                mkdir -p $WORKSPACE/archives
-                cp karaf*.log $WORKSPACE/archives
-          script-only-if-succeeded: false
-          script-only-if-failed: false
-          mark-unstable-if-failed: true
-      - archive:
-          artifacts: '*.zip'
-      - opendaylight-infra-shiplogs:
-          maven-version: 'mvn33'
index a6dcd2efd0161a42916a466b16e3f6f1e396d033..a7faae523294a5a8636a0e0c36573f62b9a5b1fb 100644 (file)
@@ -3,6 +3,7 @@
     name: distribution-csit-userfeatures
     jobs:
       - '{project}-csit-1node-{functionality}-{install}-{stream}'
+      - '{project}-csit4-1node-{functionality}-{install}-nitrogen'
 
     # The project name
     project: 'distribution'
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
           install-features: 'odl-restconf,odl-distribution-version,odl-netconf-connector-all,odl-jolokia'
           robot-options: '-v USE_NETCONF_CONNECTOR:True'
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
           install-features: 'odl-restconf,odl-distribution-version,odl-netconf-connector-all,odl-jolokia'
           robot-options: '-v USE_NETCONF_CONNECTOR:True'
 
diff --git a/jjb/integration/distribution/distribution-jobs.yaml b/jjb/integration/distribution/distribution-jobs.yaml
new file mode 100644 (file)
index 0000000..7a6345f
--- /dev/null
@@ -0,0 +1,533 @@
+---
+- project:
+    name: distribution-jobs
+
+- job-template:
+    name: 'distribution-verify-{stream}'
+
+    project-type: freestyle
+    node: centos7-java-builder-2c-8g
+    concurrent: true
+    jdk: '{jre}'
+
+    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} **/dependency_tree.txt **/*.hprof'
+      - integration-patch-refspec:
+          branch: '$GERRIT_REFSPEC'
+
+    scm:
+      - gerrit-trigger-scm:
+          refspec: '$PATCHREFSPEC'
+          choosing-strategy: 'gerrit'
+
+    wrappers:
+      - opendaylight-infra-wrappers:
+          build-timeout: '{build-timeout}'
+
+    triggers:
+      - gerrit-trigger-patch-submitted:
+          server: '{server-name}'
+          project: '{project}'
+          branch: '{branch}'
+          files: '**'
+
+    builders:
+      - wipe-org-opendaylight-repo
+      - provide-maven-settings:
+          global-settings-file: 'odl-global-settings'
+          settings-file: 'integration-settings'
+      - maven-target:
+          maven-version: mvn33
+          pom: pom.xml
+          goals: |
+              clean install dependency:tree -DoutputFile=dependency_tree.txt
+              -Dstream={stream}
+              {opendaylight-infra-mvn-opts}
+          java-opts:
+            - '-Xmx1024m -XX:MaxPermSize=256m'
+          settings: integration-settings
+          settings-type: cfp
+          global-settings: odl-global-settings
+          global-settings-type: cfp
+
+    publishers:
+      - findbugs
+      - jacoco-report
+      - opendaylight-infra-shiplogs:
+          maven-version: 'mvn33'
+      - email-notification:
+          email-recipients: '{email-recipients}'
+          email-prefix: '[int/dist]'
+
+- job-template:
+    name: 'distribution-merge-{stream}'
+
+    # Need to keep jobs that deploy to Nexus at end of build as Maven
+    # projects. Maybe reconsider this once upstream moves deploy to a
+    # separate lifecycle:
+    #     https://issues.apache.org/jira/browse/MNG-5666
+
+    project-type: maven
+    node: '{build-node}'
+    jdk: '{jre}'
+
+    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} **/dependency_tree.txt **/*.hprof **/target/surefire-reports/*-output.txt'
+      - distribution-karaf-version:
+          karaf-version: '{karaf-version}'
+
+    scm:
+      - gerrit-trigger-scm:
+          refspec: ''
+          choosing-strategy: 'default'
+
+    wrappers:
+      - opendaylight-infra-wrappers:
+          build-timeout: '{build-timeout}'
+
+    triggers:
+      - gerrit-trigger-patch-merged:
+          server-name: '{server-name}'
+          name: 'integration/distribution'
+          branch: '{branch}'
+
+    prebuilders:
+      - wipe-org-opendaylight-repo
+      - jacoco-nojava-workaround
+      - provide-maven-settings:
+          global-settings-file: 'odl-global-settings'
+          settings-file: 'integration-settings'
+      - integration-set-variables
+      - distribute-build-url:
+          path: '$KARAF_ARTIFACT/src/main/assembly'
+
+    maven:
+      maven-name: 'mvn33'
+      root-pom: 'pom.xml'
+      goals: >
+          clean install dependency:tree -DoutputFile=dependency_tree.txt -V -B
+          -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r
+          -Djenkins -Dmerge -Dstream={stream}
+      maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+      settings: 'integration-settings'
+      settings-type: cfp
+      global-settings: 'odl-global-settings'
+      global-settings-type: cfp
+
+    postbuilders:
+      - conditional-step:
+          condition-kind: file-exists
+          condition-filename: deploy-site.xml
+          condition-basedir: workspace
+
+          # The strategy here is intentional to run Maven site:deploy twice
+          # once using regular pom.xml to produce a staged-site which is
+          # then used by deploy-site.xml to push to Nexus. This is a
+          # workaround to Maven Site's default linking code which creates
+          # incorrect URLs for sites due to auto-detection assuming your
+          # project is configured in a certain way which ODL is not.
+          steps:
+            - maven-target:
+                maven-version: 'mvn33'
+                pom: pom.xml
+                goals: 'site:deploy -V -B -Dstream={stream}'
+                java-opts:
+                  - '-Xmx2g'
+                settings: 'integration-settings'
+                settings-type: cfp
+                global-settings: 'odl-global-settings'
+                global-settings-type: cfp
+            - maven-target:
+                maven-version: 'mvn33'
+                pom: deploy-site.xml
+                goals: 'site:deploy -V -B -Dstream={stream}'
+                java-opts:
+                  - '-Xmx2g'
+                settings: 'integration-settings'
+                settings-type: cfp
+                global-settings: 'odl-global-settings'
+                global-settings-type: cfp
+      - integration-compare-distributions
+    # TODO: the output of the above command is not *friendly* for the reader because the most important info
+    # is listed last. This is fine/best for command line output, but for keeping in a file it would be better
+    # to put the summary at the beginning of the file. Some bash magic can be done here to make that happen.
+
+    reporters:
+      - findbugs
+
+    publishers:
+      - maven-deploy:
+          id: ''
+          unique-version: true
+          deploy-unstable: false
+      - jacoco-report
+      - opendaylight-infra-shiplogs:
+          maven-version: 'mvn33'
+      - email-notification:
+          email-recipients: '{email-recipients}'
+          email-prefix: '[int/dist]'
+
+- job-template:
+    name: 'distribution-check-{stream}'
+    # Like a {project}-distribution-check, but one step less as there is no upstream project involved.
+    disabled: false
+
+    project-type: freestyle
+    node: '{build-node}'
+    concurrent: true
+    jdk: '{jdk}'
+
+    properties:
+      - opendaylight-infra-properties:
+          build-days-to-keep: '{build-days-to-keep}'
+
+    parameters:
+      - opendaylight-infra-parameters:
+          os-cloud: '{os-cloud}'
+          project: '{project}'
+          branch: '{branch}'
+          refspec: 'refs/heads/{branch}'
+          artifacts: '{archive-artifacts} **/dependency_tree.txt **/target/surefire-reports/*-output.txt'
+      - distribution-karaf-version:
+          karaf-version: '{karaf-version}'
+      - maven-exec:
+          maven-version: mvn33
+
+    scm:
+      - integration-gerrit-scm:
+          basedir: 'distribution'
+          refspec: '$GERRIT_REFSPEC'
+          branch: '{branch}'
+
+    wrappers:
+      - opendaylight-infra-wrappers:
+          # Distro-check jobs typically run within 10 - 30 minutes
+          # with 45 minutes being the occassional edge case.
+          # enforce a 60 minute limit to ensure stuck jobs get
+          # cleared up sooner.
+          # Double that as Karaf 3+4 may take longer.
+          build-timeout: '120'
+
+    triggers:
+      - gerrit-trigger-patch-submitted:
+          server: '{server-name}'
+          project: '{project}'
+          branch: '{branch}'
+          files: '**'
+
+    builders:
+      - distribution-check-wipe
+      - distribution-check-build-project:
+          pom: 'distribution/pom.xml'
+          mvn-opts: '{opendaylight-infra-mvn-opts}'
+      - distribution-check-verify-groupid:
+          gerrit-project: 'integration'
+      - distribution-check-delete-snapshots
+      - distribution-check-configure-remotes
+      - distribution-check-repeat-build:
+          dist-pom: 'distribution/pom.xml'
+          mvn-opts: '{opendaylight-infra-mvn-opts}'
+      - integration-upload-distribution:
+          dist-pom: distribution/pom.xml
+      - integration-distribution-check
+
+    publishers:
+      - email-notification:
+          email-recipients: '{email-recipients}'
+          email-prefix: '[{project-name}]'
+      - postbuildscript:
+          builders:
+            - shell: |
+                #!/bin/bash
+                mkdir -p $WORKSPACE/archives
+                cp karaf*.log $WORKSPACE/archives
+          script-only-if-succeeded: false
+          script-only-if-failed: false
+          mark-unstable-if-failed: true
+      - opendaylight-infra-shiplogs:
+          maven-version: 'mvn33'
+
+- job-template:
+    name: 'distribution-deploy-{stream}'
+    # Goal: Verify distribution starts with no issues when all features are loaded.
+    # Operation: This job deploys the controller installing odl-integration-all.
+    # FIXME: List required variables.
+
+    project-type: freestyle
+    node: centos7-java-builder-2c-8g
+    concurrent: false
+
+    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} **/*.hprof'
+      - integration-distribution-branch:
+          branch: '{branch}'
+      - integration-bundle-url:
+          bundle-url: '{bundle-url}'
+      - integration-jdk-version:
+          jdkversion: '{jre}'
+      - distribution-karaf-version:
+          karaf-version: '{karaf-version}'
+
+    wrappers:
+      - opendaylight-infra-wrappers:
+          build-timeout: '{build-timeout}'
+
+    # TODO: Trigger from sanity (instead of weekly) when this job is stable for {stream}.
+
+    builders:
+      - distribution-deploy-verify
+
+    publishers:
+      - email-notification:
+          email-recipients: '{email-recipients}'
+          email-prefix: '[int/dist]'
+      - integration-csit-archive-build
+      - opendaylight-infra-shiplogs:
+          maven-version: 'mvn33'
+
+- job-template:
+    name: 'distribution-offline-{stream}'
+    # Goal: Verify distribution can start with no internet connection.
+    # Operation: This job deploys the controller removing any external repository definition.
+    # FIXME: List required variables.
+
+    project-type: freestyle
+    node: centos7-java-builder-2c-8g
+    concurrent: false
+
+    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} **/*.hprof'
+      - integration-distribution-branch:
+          branch: '{branch}'
+      - integration-bundle-url:
+          bundle-url: '{bundle-url}'
+      - integration-jdk-version:
+          jdkversion: '{jre}'
+      - distribution-karaf-version:
+          karaf-version: '{karaf-version}'
+
+    wrappers:
+      - opendaylight-infra-wrappers:
+          build-timeout: '{build-timeout}'
+
+    # TODO: Trigger from sanity (instead of weekly) when this job is stable for {stream}.
+
+    builders:
+      - distribution-deploy-offline
+
+    publishers:
+      - email-notification:
+          email-recipients: '{email-recipients}'
+          email-prefix: '[int/dist]'
+      - integration-csit-archive-build
+      - opendaylight-infra-shiplogs:
+          maven-version: 'mvn33'
+
+# Delete these when Karaf 4 becomes Nitrogen default.
+
+# TODO: Is there a way to de-duplicate with generic template parts?
+
+- job-template:
+    name: 'distribution3-check-nitrogen'
+    disabled: false
+
+    project-type: freestyle
+    node: '{build-node}'
+    concurrent: true
+    jdk: '{jdk}'
+
+    properties:
+      - opendaylight-infra-properties:
+          build-days-to-keep: '{build-days-to-keep}'
+
+    parameters:
+      - opendaylight-infra-parameters:
+          os-cloud: '{os-cloud}'
+          project: '{project}'
+          branch: master
+          refspec: refs/heads/master
+          artifacts: '{archive-artifacts} **/dependency_tree.txt **/target/surefire-reports/*-output.txt'
+      - distribution-karaf-version:
+          karaf-version: karaf3
+      - maven-exec:
+          maven-version: mvn33
+
+    scm:
+      - integration-gerrit-scm:
+          basedir: distribution
+          refspec: '$GERRIT_REFSPEC'
+          branch: master
+
+    wrappers:
+      - opendaylight-infra-wrappers:
+          # Distro-check jobs typically run within 10 - 30 minutes
+          # with 45 minutes being the occassional edge case.
+          # enforce a 60 minute limit to ensure stuck jobs get
+          # cleared up sooner.
+          # Double that as Karaf 3+4 may take longer.
+          build-timeout: '120'
+
+    triggers:
+      - gerrit-trigger-patch-submitted:
+          server: '{server-name}'
+          project: '{project}'
+          branch: 'master'
+          files: '**'
+
+    builders:
+      - distribution-check-wipe
+      - distribution-check-build-project:
+          pom: 'distribution/pom.xml'
+          mvn-opts: '{opendaylight-infra-mvn-opts}'
+      - distribution-check-verify-groupid:
+          gerrit-project: 'integration'
+      - distribution-check-delete-snapshots
+      - distribution-check-configure-remotes
+      - distribution-check-repeat-build:
+          dist-pom: 'distribution/pom.xml'
+          mvn-opts: '{opendaylight-infra-mvn-opts}'
+      - integration-upload-distribution:
+          dist-pom: distribution/pom.xml
+      - integration-distribution-check
+
+    publishers:
+      - email-notification:
+          email-recipients: '{email-recipients}'
+          email-prefix: '[{project-name}]'
+      - postbuildscript:
+          builders:
+            - shell: |
+                #!/bin/bash
+                mkdir -p $WORKSPACE/archives
+                cp karaf*.log $WORKSPACE/archives
+          script-only-if-succeeded: false
+          script-only-if-failed: false
+          mark-unstable-if-failed: true
+      - opendaylight-infra-shiplogs:
+          maven-version: 'mvn33'
+
+- job-template:
+    name: 'distribution3-deploy-nitrogen'
+    disabled: false
+
+    project-type: freestyle
+    node: centos7-java-builder-2c-8g
+    concurrent: false
+
+    properties:
+      - opendaylight-infra-properties:
+          build-days-to-keep: '{build-days-to-keep}'
+
+    parameters:
+      - opendaylight-infra-parameters:
+          os-cloud: '{os-cloud}'
+          project: '{project}'
+          branch: 'master'
+          refspec: 'refs/heads/master'
+          artifacts: '{archive-artifacts} **/*.hprof'
+      - integration-distribution-branch:
+          branch: 'master'
+      - integration-bundle-url:
+          bundle-url: '{bundle-url}'
+      - integration-jdk-version:
+          jdkversion: '{jre}'
+      - distribution-karaf-version:
+          karaf-version: karaf3
+
+    wrappers:
+      - opendaylight-infra-wrappers:
+          build-timeout: '{build-timeout}'
+
+    # TODO: Trigger from sanity (instead of weekly) when this job is stable for {stream}.
+
+    builders:
+      - distribution-deploy-verify
+
+    publishers:
+      - email-notification:
+          email-recipients: '{email-recipients}'
+          email-prefix: '[int/dist]'
+      - integration-csit-archive-build
+      - opendaylight-infra-shiplogs:
+          maven-version: 'mvn33'
+
+- job-template:
+    name: 'distribution3-offline-nitrogen'
+    disabled: false
+
+    project-type: freestyle
+    node: centos7-java-builder-2c-8g
+    concurrent: false
+
+    properties:
+      - opendaylight-infra-properties:
+          build-days-to-keep: '{build-days-to-keep}'
+
+    parameters:
+      - opendaylight-infra-parameters:
+          os-cloud: '{os-cloud}'
+          project: '{project}'
+          branch: 'master'
+          refspec: 'refs/heads/master'
+          artifacts: '{archive-artifacts} **/*.hprof'
+      - integration-distribution-branch:
+          branch: 'master'
+      - integration-bundle-url:
+          bundle-url: '{bundle-url}'
+      - integration-jdk-version:
+          jdkversion: '{jre}'
+      - distribution-karaf-version:
+          karaf-version: karaf3
+
+    wrappers:
+      - opendaylight-infra-wrappers:
+          build-timeout: '{build-timeout}'
+
+    # TODO: Trigger from sanity (instead of weekly) when this job is stable for {stream}.
+
+    builders:
+      - distribution-deploy-offline
+
+    publishers:
+      - email-notification:
+          email-recipients: '{email-recipients}'
+          email-prefix: '[int/dist]'
+      - integration-csit-archive-build
+      - opendaylight-infra-shiplogs:
+          maven-version: 'mvn33'
diff --git a/jjb/integration/distribution/distribution-templates.yaml b/jjb/integration/distribution/distribution-templates.yaml
new file mode 100644 (file)
index 0000000..17712cc
--- /dev/null
@@ -0,0 +1,182 @@
+---
+- project:
+    name: distribution-templates
+
+- job-template:
+    name: '{project-name}-distribution-check-{stream}'
+    # Operation: This job template builds a patch, creates a distribution containing
+    #            the patch (making sure dependencies are specified),
+    #            and performs the distribution deploy test.
+    disabled: false
+
+    project-type: freestyle
+    node: '{build-node}'
+    concurrent: true
+    jdk: '{jdk}'
+
+    properties:
+      - opendaylight-infra-properties:
+          build-days-to-keep: '{build-days-to-keep}'
+
+    parameters:
+      - opendaylight-infra-parameters:
+          os-cloud: '{os-cloud}'
+          project: '{project}'
+          branch: '{branch}'
+          refspec: 'refs/heads/{branch}'
+          artifacts: '{archive-artifacts} **/dependency_tree.txt **/target/surefire-reports/*-output.txt'
+      - integration-distribution-git-url:
+          git-url: '{git-url}'
+      - distribution-karaf-version:
+          karaf-version: '{karaf-version}'
+      - maven-exec:
+          maven-version: mvn33
+
+    scm:
+      - integration-gerrit-scm:
+          basedir: '$GERRIT_PROJECT'
+          refspec: '$GERRIT_REFSPEC'
+          branch: '{branch}'
+      - integration-distribution-scm:
+          branch: '{distribution_branch}'
+
+    wrappers:
+      - opendaylight-infra-wrappers:
+          # Distro-check jobs typically run within 10 - 30 minutes
+          # with 45 minutes being the occassional edge case.
+          # enforce a 60 minute limit to ensure stuck jobs get
+          # cleared up sooner.
+          # Double that as Karaf 3+4 may take longer.
+          build-timeout: '120'
+
+    triggers:
+      - gerrit-trigger-patch-submitted:
+          server: '{server-name}'
+          project: '{project}'
+          branch: '{branch}'
+          files: '**'
+
+    builders:
+      - distribution-check-wipe
+      - distribution-check-build-project:
+          pom: '$GERRIT_PROJECT/pom.xml'
+          mvn-opts: '{opendaylight-infra-mvn-opts}'
+      - distribution-check-verify-groupid:
+          gerrit-project: '$GERRIT_PROJECT'
+      - distribution-check-download-deps:
+          dist-pom: 'distribution/pom.xml'
+          mvn-opts: '{opendaylight-infra-mvn-opts}'
+      - distribution-check-delete-snapshots
+      - distribution-check-configure-remotes
+      - distribution-check-repeat-build:
+          dist-pom: 'distribution/pom.xml'
+          mvn-opts: '{opendaylight-infra-mvn-opts}'
+      - integration-upload-distribution:
+          dist-pom: distribution/pom.xml
+      - integration-distribution-check
+
+    publishers:
+      - email-notification:
+          email-recipients: '{email-recipients}'
+          email-prefix: '[{project-name}]'
+      - postbuildscript:
+          builders:
+            - shell: |
+                #!/bin/bash
+                mkdir -p $WORKSPACE/archives
+                cp karaf*.log $WORKSPACE/archives
+          script-only-if-succeeded: false
+          script-only-if-failed: false
+          mark-unstable-if-failed: true
+      - opendaylight-infra-shiplogs:
+          maven-version: 'mvn33'
+
+# Delete these when Karaf 4 becomes Nitrogen default.
+
+# TODO: Is there a way to de-duplicate with generic template parts?
+
+- job-template:
+    name: '{project-name}-distribution3-check-nitrogen'
+    disabled: false
+
+    project-type: freestyle
+    node: '{build-node}'
+    concurrent: true
+    jdk: '{jdk}'
+
+    properties:
+      - opendaylight-infra-properties:
+          build-days-to-keep: '{build-days-to-keep}'
+
+    parameters:
+      - opendaylight-infra-parameters:
+          os-cloud: '{os-cloud}'
+          project: '{project}'
+          branch: 'master'
+          refspec: 'refs/heads/master'
+          artifacts: '{archive-artifacts} **/dependency_tree.txt **/target/surefire-reports/*-output.txt'
+      - integration-distribution-git-url:
+          git-url: '{git-url}'
+      - distribution-karaf-version:
+          karaf-version: karaf3
+      - maven-exec:
+          maven-version: mvn33
+
+    scm:
+      - integration-gerrit-scm:
+          basedir: '$GERRIT_PROJECT'
+          refspec: '$GERRIT_REFSPEC'
+          branch: '$GERRIT_BRANCH'
+      - integration-distribution-scm:
+          branch: 'master'
+
+    wrappers:
+      - opendaylight-infra-wrappers:
+          # Distro-check jobs typically run within 10 - 30 minutes
+          # with 45 minutes being the occassional edge case.
+          # enforce a 60 minute limit to ensure stuck jobs get
+          # cleared up sooner.
+          # Double that as Karaf 3+4 may take longer.
+          build-timeout: '120'
+
+    triggers:
+      - gerrit-trigger-patch-submitted:
+          server: '{server-name}'
+          project: '{project}'
+          branch: 'master'
+          files: '**'
+
+    builders:
+      - distribution-check-wipe
+      - distribution-check-build-project:
+          pom: '$GERRIT_PROJECT/pom.xml'
+          mvn-opts: '{opendaylight-infra-mvn-opts}'
+      - distribution-check-verify-groupid:
+          gerrit-project: '$GERRIT_PROJECT'
+      - distribution-check-download-deps:
+          dist-pom: 'distribution/pom.xml'
+          mvn-opts: '{opendaylight-infra-mvn-opts}'
+      - distribution-check-delete-snapshots
+      - distribution-check-configure-remotes
+      - distribution-check-repeat-build:
+          dist-pom: 'distribution/pom.xml'
+          mvn-opts: '{opendaylight-infra-mvn-opts}'
+      - integration-upload-distribution:
+          dist-pom: distribution/pom.xml
+      - integration-distribution-check
+
+    publishers:
+      - email-notification:
+          email-recipients: '{email-recipients}'
+          email-prefix: '[{project-name}]'
+      - postbuildscript:
+          builders:
+            - shell: |
+                #!/bin/bash
+                mkdir -p $WORKSPACE/archives
+                cp karaf*.log $WORKSPACE/archives
+          script-only-if-succeeded: false
+          script-only-if-failed: false
+          mark-unstable-if-failed: true
+      - opendaylight-infra-shiplogs:
+          maven-version: 'mvn33'
index ec32f448579ab64d1c6ae2235f2142dec031d3cd..057e71ce5d63d2851cd9e8fcc664506a2154aea0 100644 (file)
@@ -3,34 +3,39 @@
 - project:
     name: distribution
     jobs:
+      # {project-name}- is generic template, distribution- is project specific.
       - '{project-name}-clm-{stream}'
       - '{project-name}-sonar'
       - '{project-name}-validate-autorelease-{stream}'
-      - distribution-check-{stream}
+      - '{project-name}-verify-tox-{stream}'
+      - 'distribution-merge-{stream}'
+      - 'distribution-verify-{stream}'
+      - 'distribution-deploy-{stream}'
+      - 'distribution-offline-{stream}'
+      - 'distribution-check-{stream}'
+      - 'distribution3-deploy-nitrogen'
+      - 'distribution3-offline-nitrogen'
+      - 'distribution3-check-nitrogen'
+
+    project: integration/distribution
+    project-name: distribution
+    mvn-settings: integration-distribution-settings
+    mvn-goals: 'clean install dependency:tree -DoutputFile=dependency_tree.txt'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: ''
+    email-upstream: '[int/dist]'
+    jdk: openjdk8
+    jre: openjdk8
 
     stream:
+      - nitrogen:
+          branch: master
       - carbon:
-          branch: 'master'
-          jdk: openjdk8
-          jdks:
-            - openjdk8
+          branch: stable/carbon
+          karaf-version: karaf3
       - boron:
-          branch: 'stable/boron'
-          jdk: openjdk8
-          jdks:
-            - openjdk8
+          branch: stable/boron
+          karaf-version: karaf3
       - beryllium:
-          branch: 'stable/beryllium'
-          jdk: openjdk8
-          jdks:
-            - openjdk8
-            - openjdk7
-
-    project: 'integration/distribution'
-    project-name: 'distribution'
-    mvn-settings: 'integration-distribution-settings'
-    mvn-goals: 'clean install dependency:tree -DoutputFile=dependency_tree.txt'
-    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
-    dependencies: 'odlparent-merge-{stream}'
-    email-upstream: '[int/dist]'
-    archive-artifacts: '**/dependency_tree.txt'
+          branch: stable/beryllium
+          karaf-version: karaf3
index ae172ad368ae3a452f72661455fe39092506a36b..af4d2e8826673e7f014791c95f7b8f679e8bcc5e 100644 (file)
@@ -1,19 +1,45 @@
 #!/bin/bash
 
-# Depends on variables created and published from the get-bundle-vars script
+# Depends on variables created and published from the integration-set-variables script
 
 # Do not fail the build if there is trouble trying to collect distribution patch diffs
 set +e
 
-wget --progress=dot:mega $ACTUALBUNDLEURL
+NEXUSURL_PREFIX=${ODLNEXUSPROXY:-https://nexus.opendaylight.org}
+ODL_NEXUS_REPO=${ODL_NEXUS_REPO:-content/repositories/opendaylight.snapshot}
+GERRIT_PATH=${GERRIT_PATH:-git.opendaylight.org/gerrit}
+DISTROBRANCH=${DISTROBRANCH:-$GERRIT_BRANCH}
+
+# Obtain current pom.xml of integration/distribution, correct branch.
+wget "http://${GERRIT_PATH}/gitweb?p=integration/distribution.git;a=blob_plain;f=pom.xml;hb=refs/heads/$DISTROBRANCH" -O "pom.xml"
+# Extract the BUNDLEVERSION from the pom.xml
+BUNDLEVERSION=$(xpath pom.xml '/project/version/text()' 2> /dev/null)
+echo "Bundle version is ${BUNDLEVERSION}"
+# Acquire the timestamp information from maven-metadata.xml
+NEXUSPATH="${NEXUSURL_PREFIX}/${ODL_NEXUS_REPO}/org/opendaylight/integration/${KARAF_ARTIFACT}"
+wget ${NEXUSPATH}/${BUNDLEVERSION}/maven-metadata.xml
+
+if [ $? -ne 0 ]; then
+  echo "unable to find maven-metadata.xml. no need to continue..."
+  exit 0
+fi
+
+less maven-metadata.xml
+TIMESTAMP=$(xpath maven-metadata.xml "//snapshotVersion[extension='zip'][1]/value/text()" 2>/dev/null)
+echo "Nexus timestamp is ${TIMESTAMP}"
+BUNDLEFOLDER="${KARAF_ARTIFACT}-${BUNDLEVERSION}"
+BUNDLE="${KARAF_ARTIFACT}-${TIMESTAMP}.zip"
+ACTUAL_BUNDLE_URL="${NEXUSPATH}/${BUNDLEVERSION}/${BUNDLE}"
+
+wget --progress=dot:mega $ACTUAL_BUNDLE_URL
 echo "Extracting the last distribution found on nexus..."
 unzip -q $BUNDLE
 mv $BUNDLEFOLDER /tmp/distro_old
 rm $BUNDLE
 
 echo "Extracting the distribution just created by this job..."
-NEW_DISTRO=$(find $WORKSPACE -name distribution-karaf*.zip)
-NEW_DISTRO_BASENAME=$(basename $NEW_DISTRO)
+NEW_DISTRO="$(find $WORKSPACE -name ${KARAF_ARTIFACT}*.zip)"
+NEW_DISTRO_BASENAME="$(basename "$NEW_DISTRO")"
 cp $NEW_DISTRO /tmp/
 cd /tmp/
 # get the name of the folder which will be extracted to
@@ -28,5 +54,5 @@ mkdir -p $WORKSPACE/archives
 # The file/report to be archived will only list the distribution in the comparison and the patches that
 # are different.
 python distcompare.py -r ssh://jenkins-$SILO@git.opendaylight.org:29418 | tee /tmp/dist_diff.txt
-echo -e "Patch differences listed are in comparison to:\n\t$ACTUALBUNDLEURL\n\n" > $WORKSPACE/archives/distribution_differences.txt
+echo -e "Patch differences listed are in comparison to:\n\t$ACTUAL_BUNDLE_URL\n\n" > $WORKSPACE/archives/distribution_differences.txt
 sed -ne '/Patch differences/,$ p' /tmp/dist_diff.txt >> $WORKSPACE/archives/distribution_differences.txt
index bad2f75833d219269c2d61b4ac596777a638a717..ed8e67096ab05e6ba34c63bfe76f1181815e2536 100644 (file)
@@ -63,8 +63,8 @@ cat > ${WORKSPACE}/configuration-script.sh <<EOF
 echo "Changing to /tmp"
 cd /tmp
 
-echo "Downloading the distribution from ${ACTUALBUNDLEURL}"
-wget --progress=dot:mega  '${ACTUALBUNDLEURL}'
+echo "Downloading the distribution from ${ACTUAL_BUNDLE_URL}"
+wget --progress=dot:mega  '${ACTUAL_BUNDLE_URL}'
 
 echo "Extracting the new controller..."
 unzip -q ${BUNDLE}
index 5dd16bb0d5211ac09cb1efe3f21d1da6bd3f51cc..7e7ff6791eb1fb429fcaec25d9c846ac6accb7b5 100644 (file)
@@ -43,7 +43,7 @@ echo "Changing to /tmp"
 cd /tmp
 
 echo "Downloading the distribution..."
-wget --progress=dot:mega '${ACTUALBUNDLEURL}'
+wget --progress=dot:mega '${ACTUAL_BUNDLE_URL}'
 
 echo "Extracting the new controller..."
 unzip -q ${BUNDLE}
@@ -238,21 +238,21 @@ done
 echo "Cool down for ${COOLDOWN_PERIOD} seconds :)..."
 sleep ${COOLDOWN_PERIOD}
 
-if [ ${NUM_OPENSTACK_SYSTEM} -gt 0 ]; then
-   echo "Exiting without running tests to deploy openstack for testing"
-   exit
-fi
-
 echo "Generating controller variables..."
 for i in `seq 1 ${NUM_ODL_SYSTEM}`
 do
     CONTROLLERIP=ODL_SYSTEM_${i}_IP
     odl_variables=${odl_variables}" -v ${CONTROLLERIP}:${!CONTROLLERIP}"
     echo "Lets's take the karaf thread dump"
-    KARAF_PID=$(ssh ${!CONTROLLERIP} "ps aux | grep 'distribution-karaf' | grep -v grep | tr -s ' ' | cut -f2 -d' '")
+    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_before.log || true
 done
 
+if [ ${NUM_OPENSTACK_SYSTEM} -gt 0 ]; then
+   echo "Exiting without running tests to deploy openstack for testing"
+   exit
+fi
+
 echo "Generating mininet variables..."
 for i in `seq 1 ${NUM_TOOLS_SYSTEM}`
 do
@@ -273,7 +273,7 @@ SUITES=$( egrep -v '(^[[:space:]]*#|^[[:space:]]*$)' testplan.txt | tr '\012' '
 
 echo "Starting Robot test suites ${SUITES} ..."
 pybot -N ${TESTPLAN} --removekeywords wuks -c critical -e exclude -v BUNDLEFOLDER:${BUNDLEFOLDER} -v WORKSPACE:/tmp \
--v JAVA_HOME:${JAVA_HOME} -v BUNDLE_URL:${ACTUALBUNDLEURL} -v NEXUSURL_PREFIX:${NEXUSURL_PREFIX} \
+-v JAVA_HOME:${JAVA_HOME} -v BUNDLE_URL:${ACTUAL_BUNDLE_URL} -v NEXUSURL_PREFIX:${NEXUSURL_PREFIX} \
 -v CONTROLLER:${ODL_SYSTEM_IP} -v ODL_SYSTEM_IP:${ODL_SYSTEM_IP} -v ODL_SYSTEM_1_IP:${ODL_SYSTEM_IP} \
 -v CONTROLLER_USER:${USER} -v ODL_SYSTEM_USER:${USER} \
 -v TOOLS_SYSTEM_IP:${TOOLS_SYSTEM_IP} -v TOOLS_SYSTEM_2_IP:${TOOLS_SYSTEM_2_IP} -v TOOLS_SYSTEM_3_IP:${TOOLS_SYSTEM_3_IP} \
@@ -292,7 +292,7 @@ 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 'distribution-karaf' | grep -v grep | tr -s ' ' | cut -f2 -d' '")
+    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 ODL"
     set +e  # We do not want to create red dot just because something went wrong while fetching logs.
index 5143247648dcf9e108bb19017ec0bd4395eec768..a3a38778e844138469ffce1eb164b7aa7282c312 100644 (file)
@@ -8,7 +8,7 @@ source ${ROBOT_VENV}/bin/activate
 echo "showing recent changes that made it in to the distribution used by this job"
 pip install --upgrade urllib3
 python ${WORKSPACE}/test/tools/distchanges/changes.py -d /tmp/distribution_folder \
-                  -u ${ACTUALBUNDLEURL} -b ${DISTROBRANCH} \
+                  -u ${ACTUAL_BUNDLE_URL} -b ${DISTROBRANCH} \
                   -r ssh://jenkins-${SILO}@git.opendaylight.org:29418 || true
 
 echo "#################################################"
@@ -58,6 +58,8 @@ 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}"
+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
@@ -103,6 +105,8 @@ LIBVIRT_TYPE=qemu
 ODL_MGR_IP=${MGRIP}
 
 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
 EOF
 
 if [ "${ENABLE_NETWORKING_L2GW}" == "yes" ]; then
@@ -151,18 +155,20 @@ disable_service q-l3
 PUBLIC_INTERFACE=br100
 EOF
 
-if [ -z ${DISABLE_ODL_L3_PLUGIN} ] || [ "${DISABLE_ODL_L3_PLUGIN}" == "no" ]; then
-if [ "${ODL_ML2_BRANCH}" == "stable/mitaka" ]; then
+if [ "${ENABLE_NETWORKING_L2GW}" == "yes" ]; then
 cat >> ${local_conf_file_name} << EOF
-Q_L3_ENABLED=True
-ODL_L3=${ODL_L3}
 [[post-config|\$NEUTRON_CONF]]
 [DEFAULT]
-service_plugins = networking_odl.l3.l3_odl.OpenDaylightL3RouterPlugin
+service_plugins = networking_odl.l3.l3_odl.OpenDaylightL3RouterPlugin, networking_l2gw.services.l2gateway.plugin.L2GatewayPlugin
 
 EOF
-fi #check for ODL_ML2_BRANCH
-fi #check for DISABLE_ODL_L3_PLUGIN
+else
+cat >> ${local_conf_file_name} << EOF
+[[post-config|\$NEUTRON_CONF]]
+[DEFAULT]
+service_plugins = networking_odl.l3.l3_odl.OpenDaylightL3RouterPlugin
+EOF
+fi #check for ENABLE_NETWORKING_L2GW
 
 fi #ODL_ENABLE_L3_FWD check
 
@@ -172,8 +178,8 @@ cat >> ${local_conf_file_name} << EOF
 minimize_polling=True
 
 [ml2]
-# Needed for VLAN provider tests - because our provider networks are always encapsulated in VXLAN (br-phys1)
-# MTU(1440) + VXLAN(50) + VLAN(4) = 1494 < MTU eth0/br-phys1(1500)
+# Needed for VLAN provider tests - because our provider networks are always encapsulated in VXLAN (br-physnet1)
+# MTU(1440) + VXLAN(50) + VLAN(4) = 1494 < MTU eth0/br-physnet1(1500)
 physical_network_mtus = ${PUBLIC_PHYSICAL_NETWORK}:1440
 path_mtu = 1490
 
@@ -364,6 +370,9 @@ set +e  # We do not want to create red dot just because something went wrong whi
 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
@@ -383,6 +392,8 @@ do
     ${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
@@ -409,7 +420,8 @@ do
     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}:/opt/stack/devstack/local.conf ${OS_CTRL_FOLDER}/local.conf
+    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
 
@@ -426,6 +438,7 @@ do
     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/*.xz ${OS_COMPUTE_FOLDER}/
     mv local.conf_compute_${!OSIP} ${OS_COMPUTE_FOLDER}/local.conf
     mv ${OS_COMPUTE_FOLDER} ${WORKSPACE}/archives/
 done
@@ -473,6 +486,13 @@ cd devstack
 git checkout $OPENSTACK_BRANCH
 EOF
 
+cat > "${WORKSPACE}/setup_host_cell_mapping.sh" << EOF
+sudo nova-manage cell_v2 map_cell0
+sudo nova-manage cell_v2 simple_cell_setup
+sudo nova-manage db sync
+sudo nova-manage cell_v2 discover_hosts
+EOF
+
 [ "$NUM_OPENSTACK_SITES" ] || NUM_OPENSTACK_SITES=1
 compute_index=1
 odl_index=1
@@ -517,20 +537,6 @@ do
     ${SSH} ${!CONTROLIP} "bash /tmp/get_devstack.sh"
     create_control_node_local_conf ${!CONTROLIP} ${ODLMGRIP[$i]} "${ODL_OVS_MGRS[$i]}"
     scp ${WORKSPACE}/local.conf_control_${!CONTROLIP} ${!CONTROLIP}:/opt/stack/devstack/local.conf
-    if [ "${ODL_ML2_BRANCH}" == "stable/mitaka" ]; then
-        # Workaround for problems with latest versions/specified versions in requirements of openstack
-        # Openstacksdk,libvirt-python -> the current version does not work with  Mitaka diue to some requirements
-        # conflict and breaks when trying to stack
-        # paramiko -> Problems with tempest tests due to paramiko incompatibility with pycrypto.
-        # the problem has been solved with  version 1.17. If the latest version of paramiko is used, it causes
-        # other timeout problems
-        ssh ${!CONTROLIP} "cd /opt/stack; git clone https://git.openstack.org/openstack/requirements; cd requirements; git checkout stable/mitaka; sed -i /openstacksdk/d upper-constraints.txt; sed -i /libvirt-python/d upper-constraints.txt; sed -i /paramiko/d upper-constraints.txt"
-        scp "${WORKSPACE}/manual_install_package.sh"  "${!CONTROLIP}:/tmp"
-        ssh ${!CONTROLIP} "sudo pip install deprecation"
-        # Fix for recent requirements update  in the  master branch of the sdk.The section must be replaced with a better fix.
-        ssh "${!CONTROLIP}" "sh /tmp/manual_install_package.sh https://github.com/openstack/python-openstacksdk python-openstacksdk 0.9.14"
-        ssh "${!CONTROLIP}" "sh /tmp/manual_install_package.sh https://github.com/paramiko/paramiko paramiko 1.17"
-    fi
     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"
@@ -553,9 +559,6 @@ do
     ${SSH} ${!COMPUTEIP} "bash /tmp/get_devstack.sh"
     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
-    if [ "${ODL_ML2_BRANCH}" == "stable/mitaka" ]; then
-        ssh ${!COMPUTEIP} "cd /opt/stack; git clone https://git.openstack.org/openstack/requirements; cd requirements; git checkout stable/mitaka; sed -i /libvirt-python/d upper-constraints.txt"
-    fi
     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})
@@ -631,7 +634,7 @@ do
     # will be the same as the number of openstack systems. However, if we are doing multinode openstack then the
     # assumption is we have a single control node and the rest are compute nodes, so the number of expected hypervisors
     # is one less than the total number of openstack systems
-    if [ $((NUM_OPENSTACK_SYSTEM / NUM_OPENSTACK_SITES - 1)) -eq 1 ]; then
+    if [ $((NUM_OPENSTACK_SYSTEM / NUM_OPENSTACK_SITES)) -eq 1 ]; then
         expected_num_hypervisors=1
     else
         expected_num_hypervisors=${NUM_COMPUTES_PER_SITE}
@@ -643,6 +646,14 @@ do
         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.
@@ -709,11 +720,28 @@ do
     fi
 
     # Control Node - PUBLIC_BRIDGE will act as the external router
-    GATEWAY_IP="10.10.10.250" # FIXME this should be a parameter, also shared with integration-test
-    GATEWAY_VLAN_ID=167
-    ${SSH} ${!CONTROLIP} "sudo ip link add link ${PUBLIC_BRIDGE} name ${PUBLIC_BRIDGE}.${GATEWAY_VLAN_ID} type vlan id ${GATEWAY_VLAN_ID}"
-    ${SSH} ${!CONTROLIP} "sudo ifconfig ${PUBLIC_BRIDGE} up"
-    ${SSH} ${!CONTROLIP} "sudo ifconfig ${PUBLIC_BRIDGE}.${GATEWAY_VLAN_ID} up ${GATEWAY_IP}/24"
+    # Parameter values below are used in integration/test - changing them requires updates in intergration/test as well
+    EXTNET_GATEWAY_IP="10.10.10.250"
+    EXTNET_VLAN_ID=167
+    EXTNET_INTERNET_IP="10.9.9.9"
+    EXTNET_PNF_IP="10.10.10.253"
+    ${SSH} ${!CONTROLIP} "sudo ifconfig ${PUBLIC_BRIDGE} up ${EXTNET_GATEWAY_IP}/24"
+
+    # Control Node - external net PNF simulation
+    ${SSH} ${!CONTROLIP} "
+        sudo ip netns add pnf_ns;
+        sudo ip link add pnf_veth0 type veth peer name pnf_veth1;
+        sudo ip link set pnf_veth1 netns pnf_ns;
+        sudo ip link set pnf_veth0 up;
+        sudo ip netns exec pnf_ns ifconfig pnf_veth1 up ${EXTNET_PNF_IP}/24;
+        sudo ovs-vsctl add-port ${PUBLIC_BRIDGE} pnf_veth0;
+    "
+
+    # Control Node - external net internet address simulation
+    ${SSH} ${!CONTROLIP} "
+        sudo ip tuntap add dev internet_tap mode tap;
+        sudo ifconfig internet_tap up ${EXTNET_INTERNET_IP}/24;
+    "
 
     # Computes
     compute_index=1
@@ -760,7 +788,7 @@ 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 \
     -v BUNDLEFOLDER:${BUNDLEFOLDER} \
-    -v BUNDLE_URL:${ACTUALBUNDLEURL} \
+    -v BUNDLE_URL:${ACTUAL_BUNDLE_URL} \
     -v CONTROLLER_USER:${USER} \
     -v DEVSTACK_DEPLOY_PATH:/opt/stack/devstack \
     -v HA_PROXY_IP:${HA_PROXY_IP} \
@@ -773,6 +801,7 @@ pybot -N ${TESTPLAN} --removekeywords wuks -c critical -e exclude \
     -v NUM_OPENSTACK_SITES:${NUM_OPENSTACK_SITES} \
     -v NUM_OS_SYSTEM:${NUM_OPENSTACK_SYSTEM} \
     -v NUM_TOOLS_SYSTEM:${NUM_TOOLS_SYSTEM} \
+    -v ODL_SNAT_MODE:${ODL_SNAT_MODE} \
     -v ODL_STREAM:${DISTROSTREAM} \
     -v ODL_SYSTEM_IP:${ODL_SYSTEM_IP} \
     -v ODL_SYSTEM_1_IP:${ODL_SYSTEM_1_IP} \
diff --git a/jjb/integration/include-raw-integration-get-bundle-url-root.sh b/jjb/integration/include-raw-integration-get-bundle-url-root.sh
deleted file mode 100644 (file)
index 17a2ced..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-# Extract the BUNDLEVERSION from the pom.xml
-BUNDLEVERSION=`xpath pom.xml '/project/version/text()' 2> /dev/null`
-echo "Bundle version is ${BUNDLEVERSION}"
-
-BUNDLEURL=${BUILD_URL}org.opendaylight.integration\$distribution-karaf/artifact/org.opendaylight.integration/distribution-karaf/${BUNDLEVERSION}/distribution-karaf-${BUNDLEVERSION}.zip
-echo "Bundle url is ${BUNDLEURL}"
-
-# Set BUNDLEVERSION & BUNDLEURL
-echo BUNDLEVERSION=${BUNDLEVERSION} > bundle.txt
-echo BUNDLEURL=${BUNDLEURL} >> bundle.txt
-
-# NOTE: BUNDLEVERSION & BUNDLEURL will be re-imported back into the environment with the
-# Inject environment variables plugin (next step)
diff --git a/jjb/integration/include-raw-integration-get-bundle-url.sh b/jjb/integration/include-raw-integration-get-bundle-url.sh
deleted file mode 100644 (file)
index 521fcb6..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-# Extract the BUNDLEVERSION from the pom.xml
-BUNDLEVERSION=`xpath distribution/pom.xml '/project/version/text()' 2> /dev/null`
-echo "Bundle version is ${BUNDLEVERSION}"
-
-BUNDLEURL=${BUILD_URL}org.opendaylight.integration\$distribution-karaf/artifact/org.opendaylight.integration/distribution-karaf/${BUNDLEVERSION}/distribution-karaf-${BUNDLEVERSION}.zip
-echo "Bundle url is ${BUNDLEURL}"
-
-# Set BUNDLEVERSION & BUNDLEURL
-echo BUNDLEVERSION=${BUNDLEVERSION} > bundle.txt
-echo BUNDLEURL=${BUNDLEURL} >> bundle.txt
-
-# NOTE: BUNDLEVERSION & BUNDLEURL will be re-imported back into the environment with the
-# Inject environment variables plugin (next step)
diff --git a/jjb/integration/include-raw-integration-get-bundle-vars.sh b/jjb/integration/include-raw-integration-get-bundle-vars.sh
deleted file mode 100644 (file)
index 6b57c40..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-echo "#################################################"
-echo "##       Inject Global Variables               ##"
-echo "#################################################"
-
-NEXUSURL_PREFIX=${ODLNEXUSPROXY:-https://nexus.opendaylight.org}
-ODL_NEXUS_REPO=${ODL_NEXUS_REPO:-content/repositories/opendaylight.snapshot}
-GERRIT_PATH=${GERRIT_PATH:-git.opendaylight.org/gerrit}
-DISTROBRANCH=${DISTROBRANCH:-$GERRIT_BRANCH}
-
-if [ ${BUNDLEURL} == 'last' ]; then
-    # Obtain current pom.xml of integration/distribution, correct branch.
-    wget "http://${GERRIT_PATH}/gitweb?p=integration/distribution.git;a=blob_plain;f=pom.xml;hb=refs/heads/$DISTROBRANCH" -O "pom.xml"
-    # Extract the BUNDLEVERSION from the pom.xml
-    BUNDLEVERSION=`xpath pom.xml '/project/version/text()' 2> /dev/null`
-    echo "Bundle version is ${BUNDLEVERSION}"
-    # Acquire the timestamp information from maven-metadata.xml
-    NEXUSPATH="${NEXUSURL_PREFIX}/${ODL_NEXUS_REPO}/org/opendaylight/integration/distribution-karaf"
-    wget ${NEXUSPATH}/${BUNDLEVERSION}/maven-metadata.xml
-    less maven-metadata.xml
-    TIMESTAMP=`xpath maven-metadata.xml "//snapshotVersion[extension='zip'][1]/value/text()" 2>/dev/null`
-    echo "Nexus timestamp is ${TIMESTAMP}"
-    BUNDLEFOLDER="distribution-karaf-${BUNDLEVERSION}"
-    BUNDLE="distribution-karaf-${TIMESTAMP}.zip"
-    ACTUALBUNDLEURL="${NEXUSPATH}/${BUNDLEVERSION}/${BUNDLE}"
-elif [[ ${BUNDLEURL} == *"distribution-check"* ]]; then
-    ACTUALBUNDLEURL="${BUNDLEURL}"
-    BUNDLE="${BUNDLEURL##*/}"
-    BUNDLEFOLDER="${BUNDLE//.zip}"
-    BUNDLEVERSION="${BUNDLEFOLDER//distribution-karaf-}"
-else
-    ACTUALBUNDLEURL="${BUNDLEURL}"
-    BUNDLE="${BUNDLEURL##*/}"
-    BUNDLEVERSION="$(basename $(dirname $BUNDLEURL))"
-    BUNDLEFOLDER="distribution-karaf-${BUNDLEVERSION}"
-fi
-
-if [ ${JDKVERSION} == 'openjdk8' ]; then
-    echo "Preparing for JRE Version 8"
-    JAVA_HOME="/usr/lib/jvm/java-1.8.0"
-elif [ ${JDKVERSION} == 'openjdk7' ]; then
-    echo "Preparing for JRE Version 7"
-    JAVA_HOME="/usr/lib/jvm/java-1.7.0"
-fi
-
-echo "Distribution bundle URL is ${ACTUALBUNDLEURL}"
-echo "Distribution bundle is ${BUNDLE}"
-echo "Distribution bundle version is ${BUNDLEVERSION}"
-echo "Distribution folder is ${BUNDLEFOLDER}"
-echo "Nexus prefix is ${NEXUSURL_PREFIX}"
-echo "Java home is ${JAVA_HOME}"
-
-cat > ${WORKSPACE}/bundle_vars.txt <<EOF
-ACTUALBUNDLEURL=${ACTUALBUNDLEURL}
-BUNDLE=${BUNDLE}
-BUNDLEVERSION=${BUNDLEVERSION}
-BUNDLEFOLDER=${BUNDLEFOLDER}
-NEXUSURL_PREFIX=${NEXUSURL_PREFIX}
-JAVA_HOME=${JAVA_HOME}
-EOF
-
-# vim: ts=4 sw=4 sts=4 et ft=sh :
-
index 6ad635cdc16fa34f68c65a7e6249d5b4581f1399..be6b965f39f1448609f9f426df605be26cfa5a94 100644 (file)
@@ -52,6 +52,9 @@ pip install --upgrade tornado jsonpointer
 # Module for TemplatedRequests.robot library
 pip install --upgrade jmespath
 
+# Module for backup-restore support library
+pip install jsonpatch
+
 # Print installed versions.
 pip freeze
 
index 70aa31ace6cf62763cf4b35a031529fccba68c4c..f4d5cfb449a2c4f7556056b96c8492dfecefcfb5 100644 (file)
@@ -9,7 +9,7 @@
 # create a fresh empty place to build this custom distribution
 BUILD_DIR=${WORKSPACE}/patch_tester
 POM_FILE=${WORKSPACE}/patch_tester/pom.xml
-DISTRIBUTION_BRANCH_TO_BUILD=$BRANCH  #renaming variable for clarity
+DISTRIBUTION_BRANCH_TO_BUILD=$DISTROBRANCH  #renaming variable for clarity
 
 rm -rf $BUILD_DIR
 mkdir -p $BUILD_DIR
@@ -32,19 +32,32 @@ export GIT_COMMITTER_NAME="Multipatch Job"
 # TODO: Is "patches" still the correct word?
 IFS=',' read -ra PATCHES <<< "${PATCHES_TO_BUILD}"
 
-# For each patch, clone the project.
-# Optionally checkout a specific patch set.
-# Also optionally, cherry-pick series of patch sets.
-# Each patch is found in the ${PATCHES_TO_BUILD} variable
-# as a comma separated list of project[=checkout][:cherry-pick]* values
+# For each patch:
+# * Clone the project.
+# * Optionally, checkout a specific (typically unmerged) Gerrit patch. If none,
+#   default to Integration/Distribution branch via {branch} JJB param.
+# * Also optionally, cherry-pick series of patchs on top of the checkout.
 #
-# Example:  PATCHES_TO_BUILD='odlparent=45/30045/2,yangtools:53/26853/25,mdsal,controller=61/29761/5:45/29645/6,bgpcep:39/30239/1:59/30059/2'
+# Each patch is found in the ${PATCHES_TO_BUILD} variable as a comma separated
+# list of project[=checkout][:cherry-pick]* values.
 #
+# Checkout a (typically unmerged) Gerrit patch on top of odlparent's git clone:
+#
+# PATCHES_TO_BUILD='odlparent=45/30045/2'
+#
+# Checkout patchs for both odlparent and yangtools.
+#
+# PATCHES_TO_BUILD='odlparent=45/30045/2,yangtools:53/26853/25'
+#
+# Checkout a patch for controller, cherry-pick another patch on top of it.
+#
+# PATCHES_TO_BUILD='controller=61/29761/5:45/29645/6'
 distribution_status="not_included"
-for patch_code in "${PATCHES[@]}"
+for patch in "${PATCHES[@]}"
 do
-    echo "working on ${patch_code}"
-    PROJECT=`echo ${patch_code} | cut -d\: -f 1 | cut -d\= -f 1`
+    echo "working on ${patch}"
+    # For patch=controller=61/29761/5:45/29645/6, this gives controller
+    PROJECT=`echo ${patch} | cut -d\: -f 1 | cut -d\= -f 1`
     if [ "${PROJECT}" == "integration/distribution" ]; then
         distribution_status="included"
     fi
@@ -53,7 +66,8 @@ do
     git clone "https://git.opendaylight.org/gerrit/p/${PROJECT}"
     echo "<module>${PROJECT_SHORTNAME}</module>" >> ${POM_FILE}
     cd ${PROJECT_SHORTNAME}
-    CHECKOUT=`echo ${patch_code} | cut -d\= -s -f 2 | cut -d\: -f 1`
+    # For patch=controller=61/29761/5:45/29645/6, this gives 61/29761/5
+    CHECKOUT=`echo ${patch} | cut -d\= -s -f 2 | cut -d\: -f 1`
     if [ "x${CHECKOUT}" != "x" ]; then
         echo "checking out ${CHECKOUT}"
         git fetch "https://git.opendaylight.org/gerrit/${PROJECT}" "refs/changes/$CHECKOUT"
@@ -62,7 +76,8 @@ do
         echo "checking out ${DISTRIBUTION_BRANCH_TO_BUILD}"
         git checkout "${DISTRIBUTION_BRANCH_TO_BUILD}"
     fi
-    PICK_SEGMENT=`echo "${patch_code}" | cut -d\: -s -f 2-`
+    # For patch=controller=61/29761/5:45/29645/6, this gives 45/29645/6
+    PICK_SEGMENT=`echo "${patch}" | cut -d\: -s -f 2-`
     IFS=':' read -ra PICKS <<< "${PICK_SEGMENT}"
     for pick in "${PICKS[@]}"
     do
@@ -86,14 +101,3 @@ fi
 # finish pom file
 echo "</modules>" >> ${POM_FILE}
 echo "</project>" >> ${POM_FILE}
-
-# Extract the BUNDLEVERSION from the distribution pom.xml
-BUNDLEVERSION=`xpath $BUILD_DIR/distribution/pom.xml '/project/version/text()' 2> /dev/null`
-echo "Bundle version is ${BUNDLEVERSION}"
-
-BUNDLEURL=${BUILD_URL}org.opendaylight.integration\$distribution-karaf/artifact/org.opendaylight.integration/distribution-karaf/${BUNDLEVERSION}/distribution-karaf-${BUNDLEVERSION}.zip
-echo "Bundle url is ${BUNDLEURL}"
-
-# Set BUNDLEVERSION & BUNDLEURL
-echo BUNDLEVERSION=${BUNDLEVERSION} > ${WORKSPACE}/bundle.txt
-echo BUNDLEURL=${BUNDLEURL} >> ${WORKSPACE}/bundle.txt
index ab79025604a601de3b80fc9657a4cb7f4dc0cba4..997a6bd1d9d2e84a33195793a500208919e1e6ec 100644 (file)
@@ -86,7 +86,7 @@ do
     CONTROLLERIP=ODL_SYSTEM_${i}_IP
     odl_variables=${odl_variables}" -v ${CONTROLLERIP}:${!CONTROLLERIP}"
     echo "Lets's take the karaf thread dump"
-    KARAF_PID=$(ssh ${!CONTROLLERIP} "ps aux | grep 'distribution-karaf' | grep -v grep | tr -s ' ' | cut -f2 -d' '")
+    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_before.log || true
 done
 
@@ -111,7 +111,7 @@ SUITES=`egrep -v '(^[[:space:]]*#|^[[:space:]]*$)' testplan.txt | tr '\012' ' '`
 
 echo "Starting Robot test suites ${SUITES} ..."
 pybot -N ${TESTPLAN} --removekeywords wuks -c critical -e exclude -v BUNDLEFOLDER:${BUNDLEFOLDER} \
--v WORKSPACE:/tmp -v BUNDLE_URL:${ACTUALBUNDLEURL} -v JAVA_HOME:${JAVA_HOME} \
+-v WORKSPACE:/tmp -v BUNDLE_URL:${ACTUAL_BUNDLE_URL} -v JAVA_HOME:${JAVA_HOME} \
 -v NEXUSURL_PREFIX:${NEXUSURL_PREFIX} -v JDKVERSION:${JDKVERSION} -v ODL_STREAM:${DISTROSTREAM} \
 -v CONTROLLER:${ODL_SYSTEM_IP} -v CONTROLLER1:${ODL_SYSTEM_2_IP} -v CONTROLLER2:${ODL_SYSTEM_3_IP} -v ODL_SYSTEM_IP:${ODL_SYSTEM_IP} \
 ${odl_variables} -v NUM_ODL_SYSTEM:${NUM_ODL_SYSTEM} -v CONTROLLER_USER:${USER} -v ODL_SYSTEM_USER:${USER} -v \
@@ -133,7 +133,7 @@ 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 'distribution-karaf' | grep -v grep | tr -s ' ' | cut -f2 -d' '")
+    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'
diff --git a/jjb/integration/integration-detect-variables.sh b/jjb/integration/integration-detect-variables.sh
new file mode 100644 (file)
index 0000000..78067e9
--- /dev/null
@@ -0,0 +1,50 @@
+
+# TODO: Document the default values.
+NEXUSURL_PREFIX="${ODLNEXUSPROXY:-https://nexus.opendaylight.org}"
+ODL_NEXUS_REPO="${ODL_NEXUS_REPO:-content/repositories/opendaylight.snapshot}"
+GERRIT_PATH="${GERRIT_PATH:-git.opendaylight.org/gerrit}"
+DISTROBRANCH="${DISTROBRANCH:-$GERRIT_BRANCH}"
+
+if [ ${BUNDLE_URL} == 'last' ]; then
+    # Obtain current pom.xml of integration/distribution, correct branch.
+    wget "http://${GERRIT_PATH}/gitweb?p=integration/distribution.git;a=blob_plain;f=pom.xml;hb=refs/heads/$DISTROBRANCH" -O "pom.xml"
+    # Extract the BUNDLEVERSION from the pom.xml
+    BUNDLEVERSION="$(xpath pom.xml '/project/version/text()' 2> /dev/null)"
+    echo "Bundle version is ${BUNDLEVERSION}"
+    # Acquire the timestamp information from maven-metadata.xml
+    NEXUSPATH="${NEXUSURL_PREFIX}/${ODL_NEXUS_REPO}/org/opendaylight/integration/${KARAF_ARTIFACT}"
+    wget "${NEXUSPATH}/${BUNDLEVERSION}/maven-metadata.xml"
+    less "maven-metadata.xml"
+    TIMESTAMP="$(xpath maven-metadata.xml "//snapshotVersion[extension='zip'][1]/value/text()" 2>/dev/null)"
+    echo "Nexus timestamp is ${TIMESTAMP}"
+    BUNDLEFOLDER="${KARAF_ARTIFACT}-${BUNDLEVERSION}"
+    BUNDLE="${KARAF_ARTIFACT}-${TIMESTAMP}.zip"
+    ACTUAL_BUNDLE_URL="${NEXUSPATH}/${BUNDLEVERSION}/${BUNDLE}"
+elif [[ "${BUNDLE_URL}" == *"jenkins"* ]]; then
+    ACTUAL_BUNDLE_URL="${BUNDLE_URL}"
+    BUNDLE="${BUNDLE_URL##*/}"
+    BUNDLEFOLDER="${BUNDLE//.zip}"
+    BUNDLEVERSION="${BUNDLEFOLDER//$KARAF_ARTIFACT-}"
+else
+    ACTUAL_BUNDLE_URL="${BUNDLE_URL}"
+    BUNDLE="${BUNDLE_URL##*/}"
+    BUNDLEVERSION="$(basename "$(dirname "${BUNDLE_URL}")")"
+    BUNDLEFOLDER="${KARAF_ARTIFACT}-${BUNDLEVERSION}"
+fi
+
+echo "Distribution bundle URL is ${ACTUAL_BUNDLE_URL}"
+echo "Distribution bundle is ${BUNDLE}"
+echo "Distribution bundle version is ${BUNDLEVERSION}"
+echo "Distribution folder is ${BUNDLEFOLDER}"
+echo "Nexus prefix is ${NEXUSURL_PREFIX}"
+
+# The following is not a shell file, double quotes would be literal.
+cat > "${WORKSPACE}/detect_variables.env" <<EOF
+ACTUAL_BUNDLE_URL=${ACTUAL_BUNDLE_URL}
+BUNDLE=${BUNDLE}
+BUNDLEVERSION=${BUNDLEVERSION}
+BUNDLEFOLDER=${BUNDLEFOLDER}
+NEXUSURL_PREFIX=${NEXUSURL_PREFIX}
+EOF
+
+# vim: ts=4 sw=4 sts=4 et ft=sh :
similarity index 58%
rename from jjb/integration/include-raw-integration-distribution-check.sh
rename to jjb/integration/integration-distribution-check.sh
index 01c6f02db1e1777595f7a5ffab3d0e303765a1d0..3099a010dbc8a7dcf16319d570760f7103e4c58d 100644 (file)
@@ -1,9 +1,10 @@
+
 CONTROLLERMEM="3072m"
 ACTUALFEATURES="odl-integration-all"
-BUNDLEVERSION=`xpath distribution/pom.xml '/project/version/text()' 2> /dev/null`
-BUNDLEFOLDER="distribution-karaf-${BUNDLEVERSION}"
+BUNDLEVERSION="$(xpath distribution/pom.xml '/project/version/text()' 2> /dev/null)"
+BUNDLEFOLDER="${KARAF_ARTIFACT}-${BUNDLEVERSION}"
 BUNDLE="${BUNDLEFOLDER}.zip"
-BUNDLEURL="/tmp/r/org/opendaylight/integration/distribution-karaf/${BUNDLEVERSION}/${BUNDLE}"
+BUNDLE_PATH="/tmp/r/org/opendaylight/integration/${KARAF_ARTIFACT}/${BUNDLEVERSION}/${BUNDLE}"
 
 echo "Kill any controller running"
 ps axf | grep karaf | grep -v grep | awk '{print "kill -9 " $1}' | sh
@@ -12,43 +13,47 @@ echo "Clean workspace"
 rm -rf *
 
 echo "Copying the distribution..."
-cp  ${BUNDLEURL} .
+cp "${BUNDLE_PATH}" .
 
 echo "Extracting the new controller..."
-unzip -q ${BUNDLE}
+unzip -q "${BUNDLE}"
 
 echo "Configuring the startup features..."
-FEATURESCONF=${WORKSPACE}/${BUNDLEFOLDER}/etc/org.apache.karaf.features.cfg
-sed -ie "s/\(featuresBoot=\|featuresBoot =\)/featuresBoot = ${ACTUALFEATURES},/g" ${FEATURESCONF}
-sed -ie "s%mvn:org.opendaylight.integration/features-integration-index/${BUNDLEVERSION}/xml/features%mvn:org.opendaylight.integration/features-integration-index/${BUNDLEVERSION}/xml/features,mvn:org.opendaylight.integration/features-integration-test/${BUNDLEVERSION}/xml/features%g" ${FEATURESCONF}
-cat ${FEATURESCONF}
+FEATURESCONF="${WORKSPACE}/${BUNDLEFOLDER}/etc/org.apache.karaf.features.cfg"
+# Add test feature repo if Karaf 4.
+sed -ie "s%mvn:org.opendaylight.integration/features-index/${BUNDLEVERSION}/xml/features%mvn:org.opendaylight.integration/features-index/${BUNDLEVERSION}/xml/features,mvn:org.opendaylight.integration/features-test/${BUNDLEVERSION}/xml/features%g" "${FEATURESCONF}"
+# Add test feature repo if Karaf 3.
+sed -ie "s%mvn:org.opendaylight.integration/features-integration-index/${BUNDLEVERSION}/xml/features%mvn:org.opendaylight.integration/features-integration-index/${BUNDLEVERSION}/xml/features,mvn:org.opendaylight.integration/features-integration-test/${BUNDLEVERSION}/xml/features%g" "${FEATURESCONF}"
+# Add actual boot features.
+sed -ie "s/\(featuresBoot=\|featuresBoot =\)/featuresBoot = ${ACTUALFEATURES},/g" "${FEATURESCONF}"
+cat "${FEATURESCONF}"
 
 echo "Configuring the log..."
-LOGCONF=${WORKSPACE}/${BUNDLEFOLDER}/etc/org.ops4j.pax.logging.cfg
-sed -ie 's/log4j.appender.out.maxFileSize=1MB/log4j.appender.out.maxFileSize=20MB/g' ${LOGCONF}
-cat ${LOGCONF}
+LOGCONF="${WORKSPACE}/${BUNDLEFOLDER}/etc/org.ops4j.pax.logging.cfg"
+sed -ie 's/log4j.appender.out.maxFileSize=1MB/log4j.appender.out.maxFileSize=20MB/g' "${LOGCONF}"
+cat "${LOGCONF}"
 
 echo "Configure max memory..."
-MEMCONF=${WORKSPACE}/${BUNDLEFOLDER}/bin/setenv
-sed -ie "s/2048m/${CONTROLLERMEM}/g" ${MEMCONF}
-cat ${MEMCONF}
+MEMCONF="${WORKSPACE}/${BUNDLEFOLDER}/bin/setenv"
+sed -ie "s/2048m/${CONTROLLERMEM}/g" "${MEMCONF}"
+cat "${MEMCONF}"
 
 echo "Listing all open ports on controller system"
 netstat -pnatu
 
 echo "redirected karaf console output to karaf_console.log"
-export KARAF_REDIRECT=${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf_console.log
+export KARAF_REDIRECT="${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf_console.log"
 
-if [ ${JDKVERSION} == 'openjdk8' ]; then
+if [ "${JDKVERSION}" == 'openjdk8' ]; then
     echo "Setting the JRE Version to 8"
     # dynamic_verify does not allow sudo, JAVA_HOME should be enough for karaf start.
     # sudo /usr/sbin/alternatives --set java /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.60-2.b27.el7_1.x86_64/jre/bin/java
-    export JAVA_HOME=/usr/lib/jvm/java-1.8.0
-elif [ ${JDKVERSION} == 'openjdk7' ]; then
+    export JAVA_HOME='/usr/lib/jvm/java-1.8.0'
+elif [ "${JDKVERSION}" == 'openjdk7' ]; then
     echo "Setting the JRE Version to 7"
     # dynamic_verify does not allow sudo, JAVA_HOME should be enough for karaf start.
     # sudo /usr/sbin/alternatives --set java /usr/lib/jvm/java-1.7.0-openjdk-1.7.0.85-2.6.1.2.el7_1.x86_64/jre/bin/java
-    export JAVA_HOME=/usr/lib/jvm/java-1.7.0
+    export JAVA_HOME='/usr/lib/jvm/java-1.7.0'
 fi
 readlink -e "${JAVA_HOME}/bin/java"
 echo "JDK Version should be overriden by JAVA_HOME"
@@ -66,22 +71,22 @@ set +x
 echo "Waiting for controller to come up..."
 COUNT=0
 while true; do
-    RESP="$( curl --user admin:admin -sL -w "%{http_code} %{url_effective}\\n" http://localhost:8181/restconf/modules -o /dev/null || true )"
-    echo ${RESP}
-    if [[ ${RESP} == *"200"* ]]; then
+    RESP="$(curl --user admin:admin -sL -w "%{http_code} %{url_effective}\\n" http://localhost:8181/restconf/modules -o /dev/null || true)"
+    echo "${RESP}"
+    if [[ "${RESP}" == *"200"* ]]; then
         echo Controller is UP
         break
-    elif (( ${COUNT} > 600 )); then
+    elif (( "${COUNT}" > 600 )); then
         echo Timeout Controller DOWN
         echo "Dumping Karaf log..."
-        cat ${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf.log
+        cat "${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf.log"
         echo "Listing all open ports on controller system"
         netstat -pnatu
         exit 1
     else
-        COUNT=$(( ${COUNT} + 5 ))
+        COUNT="$(( ${COUNT} + 5 ))"
         sleep 5
-        echo waiting ${COUNT} secs...
+        echo waiting "${COUNT}" secs...
     fi
 done
 
@@ -93,7 +98,7 @@ while true; do
     fi
     echo "${COUNT} seconds yet to wait..."
     sleep 10
-    COUNT=$(( ${COUNT} - 10 ))
+    COUNT="$(( ${COUNT} - 10 ))"
 done
 
 # End of repeating operations, enable verbose printing.
@@ -108,26 +113,26 @@ netstat -pnatu
 
 function exit_on_log_file_message {
     echo "looking for \"$1\" in karaf.log file"
-    if grep --quiet "$1" ${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf.log; then
+    if grep --quiet "$1" "${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf.log"; then
         echo ABORTING: found "$1"
         echo "Dumping first 500K bytes of karaf log..."
-        head --bytes=500K  ${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf.log
+        head --bytes=500K "${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf.log"
         echo "Dumping last 500K bytes of karaf log..."
-        tail --bytes=500K  ${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf.log
-        cp ${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf.log .
-        cp ${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf_console.log .
+        tail --bytes=500K "${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf.log"
+        cp "${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf.log" .
+        cp "${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf_console.log" .
         exit 1
     fi
 
     echo "looking for \"$1\" in karaf_console.log file"
-    if grep --quiet "$1" ${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf_console.log; then
+    if grep --quiet "$1" "${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf_console.log"; then
         echo ABORTING: found "$1"
         echo "Dumping first 500K bytes of karaf log..."
-        head --bytes=500K  ${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf_console.log
+        head --bytes=500K "${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf_console.log"
         echo "Dumping last 500K bytes of karaf log..."
-        tail --bytes=500K  ${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf_console.log
-        cp ${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf.log .
-        cp ${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf_console.log .
+        tail --bytes=500K "${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf_console.log"
+        cp "${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf.log" .
+        cp "${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf_console.log" .
         exit 1
     fi
 }
@@ -137,15 +142,15 @@ exit_on_log_file_message 'server is unhealthy'
 
 echo "Fetching Karaf logs"
 # TODO: Move instead of copy? Gzip?
-cp ${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf.log .
-cp ${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf_console.log .
+cp "${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf.log" .
+cp "${WORKSPACE}/${BUNDLEFOLDER}/data/log/karaf_console.log" .
 
 echo "Kill controller"
 ps axf | grep karaf | grep -v grep | awk '{print "kill -9 " $1}' | sh
 
-echo "Detecting misplaced config files"
+echo "Bug 4628: Detecting misplaced config files"
 pushd "${WORKSPACE}/${BUNDLEFOLDER}"
-XMLS_FOUND=`echo *.xml`
+XMLS_FOUND="$(echo *.xml)"
 popd
 if [ "$XMLS_FOUND" != "*.xml" ]; then
     echo "Bug 4628 confirmed."
index 2cf8eee2efa654ffaac1a014da005c4e1457ce77..1e9005cd4577218010f5cf60dbd8d771c08ac5ef 100644 (file)
           description: 'Distribution GIT branch'
 
 - parameter:
-    name: integration-bundleurl
+    name: distribution-karaf-version
+    # Arguments:
+    #   karaf-version: Provide, otherwise releng-defaults value is used.
     parameters:
       - string:
-          name: BUNDLEURL
-          default: '{bundleurl}'
+          name: KARAF_VERSION
+          default: '{karaf-version}'
+          description: 'karaf3 or karaf4, affects ODL deploy scripts'
+
+- parameter:
+    name: integration-bundle-url
+    parameters:
+      - string:
+          name: BUNDLE_URL
+          default: '{bundle-url}'
           description: 'URL to karaf distribution zip'
 
 - parameter:
     builders:
       - shell: !include-raw: include-raw-integration-get-slave-addresses.sh
 
-# Macro: integration-get-bundle-vars
-# Operation: this macro gets all bundle related variables
-# Used by: {project}-csit-3node-* job templates
-
 - builder:
-    name: integration-get-bundle-vars
+    name: integration-set-variables
+    # Operation: Construct variables not requiring online detection and export using set_variables.env
+    # Required bash variables:
+    #   KARAF_VERSION: 'karaf4' or 'karaf3'. Use distribution-karaf-version macro to set.
     builders:
-      - shell: !include-raw: include-raw-integration-get-bundle-vars.sh
+      - shell: !include-raw: integration-set-variables.sh
+      - inject:
+          properties-file: set_variables.env
 
-# Macro: integration-distribution-check
-# Operation: this macro deploys the controller with all fetures
-# Used by: {project}-distribution-check-{stream} job template
+- builder:
+    name: integration-detect-variables
+    # Operation: Construct variables including online detection and export using detect_variables.env
+    #   This calls integration-set-variables internally.
+    # Required bash variables:
+    #   KARAF_VERSION: 'karaf4' or 'karaf3'. Use distribution-karaf-version macro to set.
+    builders:
+      - integration-set-variables
+      - shell: !include-raw: integration-detect-variables.sh
+      - inject:
+          properties-file: detect_variables.env
 
 - builder:
     name: integration-distribution-check
+    # Operation: Locally deploy ODL with all fetures, check it is not broken.
+    # Required bash variables:
+    #   KARAF_VERSION: 'karaf4' or 'karaf3'.
+    #     Use distribution-karaf-version macro to customize.
     builders:
-      - shell: !include-raw: include-raw-integration-distribution-check.sh
-
-# Macro: integration-deploy-controller-verify
-# Operation: this macro deploys the controller with all fetures
-# Used by: distribution-deploy-{stream} job template
+      - integration-set-variables
+      - shell: !include-raw: integration-distribution-check.sh
 
 - builder:
-    name: integration-deploy-controller-verify
+    name: distribution-deploy-verify
+    # Operation: Deploy ODL with all fetures and check it is not broken.
+    # Required bash variables:
+    #   KARAF_VERSION: 'karaf4' or 'karaf3'.
+    #     Use distribution-karaf-version macro to customize.
     builders:
-      - shell: !include-raw: include-raw-integration-deploy-controller-verify.sh
-
-# Macro: integration-deploy-controller-offline
-# Operation: this macro deploys the controller with no external repo configuration
-# Used by: integration-distrbution-offline-{stream} job template
+      - integration-detect-variables
+      - shell: !include-raw: distribution-deploy-verify.sh
 
 - builder:
-    name: integration-deploy-controller-offline
+    name: distribution-deploy-offline
+    # Operation: Deploys ODL on the current system, with no external repo configuration, check it works.
+    # Required bash variables:
+    #   KARAF_VERSION: 'karaf4' or 'karaf3'.
+    #     Use distribution-karaf-version macro to customize.
     builders:
-      - shell: !include-raw: include-raw-integration-deploy-controller-offline.sh
+      - integration-detect-variables
+      - shell: !include-raw: distribution-deploy-offline.sh
 
 # Macro: integration-deply-controller-run-test
 # Operation: this macro deploys single contoller and runs test
     builders:
       - shell: !include-raw: include-raw-integration-start-cluster-run-test.sh
 
-# Macro: integration-get-bundle-url
-# Operation: this macro gets the job generated distribution URL from distribution pom.xml
-# Used by: integration-patch-test-{stream} job template
-
-- builder:
-    name: integration-get-bundle-url
-    builders:
-      - shell: !include-raw: include-raw-integration-get-bundle-url.sh
-
-# Macro: integration-get-bundle-url-root
-# Operation: this macro gets the job generated distribution URL from root pom.xml
-# Used by: distribution-verify-{stream} job template
-
-- builder:
-    name: integration-get-bundle-url-root
-    builders:
-      - shell: !include-raw: include-raw-integration-get-bundle-url-root.sh
-
 # Macro: integration-install-robotframework
 # Operation: Installs robotframework using pip to a virtualenv
 # Used by: {project}-csit-* job templates
     builders:
       - shell: !include-raw: include-raw-integration-replace-block-text.sh
 
-# Macro: integration-compare-distributions
-# Operation: will compare an already created distribtion (probably last
-# published to nexus) to the current distribution being created.
-# The comparison is done to find the list of patches that are new to the
-# current distribtion.
-# Used by: builder-merge job template
-#
-# This script requires the bundle vars that are created by the
-# get-bundle-vars macro script
-
 
 - builder:
     name: integration-compare-distributions
+    # Operation: will compare an already created distribtion (probably last
+    # published to nexus) to the current distribution being created.
+    # The comparison is done to find the list of patches that are new to the
+    # current distribution.
+    # Required bash variables:
+    #   KARAF_ARTIFACT: 'karaf' or 'distribution-karaf'. Use integration-set-variables.
     builders:
       - shell: !include-raw: include-raw-integration-compare-distributions.sh
 
+- builder:
+    name: integration-upload-distribution
+    # Upload distribution karaf artifact to Nexus SNAPSHOT repo for testing.
+    # Arguments:
+    #   {dist-pom} path to pom file containing the version
+    # Required bash variables:
+    #   KARAF_VERSION: 'karaf4' or 'karaf3'.
+    #     Use distribution-karaf-version macro to customize.
+    builders:
+      - config-file-provider:
+          files:
+            - file-id: odl-global-settings
+              variable: GLOBAL_SETTINGS_FILE
+            - file-id: integration-settings
+              variable: SETTINGS_FILE
+      - integration-set-variables
+      - inject:
+          properties-content: BUNDLE_POM={dist-pom}
+      - shell: !include-raw-escape: integration-upload-distribution.sh
+      - inject:
+          properties-file: integration-upload-distribution.env
+
 ##############
 # Publishers #
 ##############
diff --git a/jjb/integration/integration-set-variables.sh b/jjb/integration/integration-set-variables.sh
new file mode 100644 (file)
index 0000000..90210eb
--- /dev/null
@@ -0,0 +1,25 @@
+
+if [[ "$KARAF_VERSION" == "karaf3" ]]; then
+    KARAF_ARTIFACT="distribution-karaf"
+else
+    KARAF_ARTIFACT="karaf"
+fi
+
+if [ "$JDKVERSION" == 'openjdk8' ]; then
+    echo "Preparing for JRE Version 8"
+    JAVA_HOME="/usr/lib/jvm/java-1.8.0"
+elif [ "$JDKVERSION" == 'openjdk7' ]; then
+    echo "Preparing for JRE Version 7"
+    JAVA_HOME="/usr/lib/jvm/java-1.7.0"
+fi
+
+echo "Karaf artifact is ${KARAF_ARTIFACT}"
+echo "Java home is ${JAVA_HOME}"
+
+# The following is not a shell file, double quotes would be literal.
+cat > "${WORKSPACE}/set_variables.env" <<EOF
+JAVA_HOME=${JAVA_HOME}
+KARAF_ARTIFACT=${KARAF_ARTIFACT}
+EOF
+
+# vim: ts=4 sw=4 sts=4 et ft=sh :
index 54231f87c699042112555bb2577431b8b872de88..b71eea9d5514b5e34a8d7c887c5819717d26fa86 100644 (file)
@@ -15,7 +15,7 @@
 # opendaylight-infra-parameters: main project integration/test ($PROJECT)
 # jre: (openjdk7 or openjdk8) Java runtime environment to use when launching ODL
 # integration-distribution-branch: distribution branch ($DISTROBRANCH)
-# integration-controller-bundleurl: distribution URL ($BUNDLEURL)
+# integration-controller-bundle-url: distribution URL ($BUNDLE_URL)
 # integration-controller-scope: only or all features ($CONTROLLERSCOPE)
 # integration-controller-features: features under test ($CONTROLLER FEATURES)
 # integration-test-options: robot options ($TESTOPTIONS)
@@ -48,8 +48,8 @@
           branch: '{verify-branch}'
       - integration-distribution-stream:
           stream: '{verify-stream}'
-      - integration-bundleurl:
-          bundleurl: '{bundleurl}'
+      - integration-bundle-url:
+          bundle-url: '{bundle-url}'
       - integration-controller-scope:
           controller-scope: 'only'
       - integration-controller-features:
@@ -62,6 +62,8 @@
           test-plan: '{project}-{functionality}.txt'
       - integration-jdk-version:
           jdkversion: '{verify-jdkversion}'
+      - distribution-karaf-version:
+          karaf-version: '{verify-karaf-version}'
 
     scm:
       - integration-gerrit-scm:
@@ -95,9 +97,7 @@
       - integration-get-slave-addresses
       - inject:
           properties-file: 'slave_addresses.txt'
-      - integration-get-bundle-vars
-      - inject:
-          properties-file: 'bundle_vars.txt'
+      - integration-detect-variables
       - integration-deploy-controller-run-test
       - integration-cleanup-tmp
 
 
 - job-template:
     name: '{project}-csit-1node-{functionality}-{install}-{stream}'
+    # Keep synchronized with *-csit4-*-carbon please.
     disabled: false
 
     project-type: freestyle
           branch: '{branch}'
       - integration-distribution-stream:
           stream: '{stream}'
-      - integration-bundleurl:
-          bundleurl: '{bundleurl}'
+      - integration-bundle-url:
+          bundle-url: '{bundle-url}'
       - integration-controller-scope:
           controller-scope: '{scope}'
       - integration-controller-features:
           branch: 'master'
       - integration-jdk-version:
           jdkversion: '{jre}'
+      - distribution-karaf-version:
+          karaf-version: '{karaf-version}'
 
     scm:
       - integration-gerrit-scm:
       - integration-get-slave-addresses
       - inject:
           properties-file: 'slave_addresses.txt'
-      - integration-get-bundle-vars
-      - inject:
-          properties-file: 'bundle_vars.txt'
+      - integration-detect-variables
       - integration-deploy-controller-run-test
       - integration-cleanup-tmp
 
           branch: '{branch}'
       - integration-distribution-stream:
           stream: '{stream}'
-      - integration-bundleurl:
-          bundleurl: '{bundleurl}'
+      - integration-bundle-url:
+          bundle-url: '{bundle-url}'
       - integration-controller-scope:
           controller-scope: '{scope}'
       - integration-controller-features:
           branch: 'master'
       - integration-jdk-version:
           jdkversion: '{jre}'
+      - distribution-karaf-version:
+          karaf-version: '{karaf-version}'
 
     scm:
       - integration-gerrit-scm:
       - integration-get-slave-addresses
       - inject:
           properties-file: 'slave_addresses.txt'
-      - integration-get-bundle-vars
-      - inject:
-          properties-file: 'bundle_vars.txt'
+      - integration-detect-variables
       - integration-deploy-controller-run-test
       - integration-cleanup-tmp
 
           branch: '{verify-branch}'
       - integration-distribution-stream:
           stream: '{verify-stream}'
-      - integration-bundleurl:
-          bundleurl: '{bundleurl}'
+      - integration-bundle-url:
+          bundle-url: '{bundle-url}'
       - integration-controller-scope:
           controller-scope: 'only'
       - integration-controller-features:
           test-plan: '{project}-{functionality}.txt'
       - integration-jdk-version:
           jdkversion: '{verify-jdkversion}'
+      - distribution-karaf-version:
+          karaf-version: '{verify-karaf-version}'
 
     scm:
       - integration-gerrit-scm:
       - integration-get-slave-addresses
       - inject:
           properties-file: 'slave_addresses.txt'
-      - integration-get-bundle-vars
-      - inject:
-          properties-file: 'bundle_vars.txt'
+      - integration-detect-variables
       - integration-configure-clustering
       - integration-start-cluster-run-test
       - integration-cleanup-tmp
           branch: '{branch}'
       - integration-distribution-stream:
           stream: '{stream}'
-      - integration-bundleurl:
-          bundleurl: '{bundleurl}'
+      - integration-bundle-url:
+          bundle-url: '{bundle-url}'
       - integration-controller-scope:
           controller-scope: '{scope}'
       - integration-controller-features:
           branch: 'master'
       - integration-jdk-version:
           jdkversion: '{jre}'
+      - distribution-karaf-version:
+          karaf-version: '{karaf-version}'
 
     scm:
       - integration-gerrit-scm:
       - integration-get-slave-addresses
       - inject:
           properties-file: 'slave_addresses.txt'
-      - integration-get-bundle-vars
-      - inject:
-          properties-file: 'bundle_vars.txt'
+      - integration-detect-variables
       - integration-configure-clustering
       - integration-start-cluster-run-test
       - integration-cleanup-tmp
           branch: '{branch}'
       - integration-distribution-stream:
           stream: '{stream}'
-      - integration-bundleurl:
-          bundleurl: '{bundleurl}'
+      - integration-bundle-url:
+          bundle-url: '{bundle-url}'
       - integration-controller-scope:
           controller-scope: '{scope}'
       - integration-controller-features:
           branch: 'master'
       - integration-jdk-version:
           jdkversion: '{jre}'
+      - distribution-karaf-version:
+          karaf-version: '{karaf-version}'
 
     scm:
       - integration-gerrit-scm:
       - integration-get-slave-addresses
       - inject:
           properties-file: 'slave_addresses.txt'
-      - integration-get-bundle-vars
-      - inject:
-          properties-file: 'bundle_vars.txt'
+      - integration-detect-variables
       - integration-configure-clustering
       - integration-start-cluster-run-test
       - integration-cleanup-tmp
           branch: '{branch}'
       - integration-distribution-stream:
           stream: '{stream}'
-      - integration-bundleurl:
-          bundleurl: '{bundleurl}'
+      - integration-bundle-url:
+          bundle-url: '{bundle-url}'
       - integration-controller-scope:
           controller-scope: '{scope}'
       - integration-controller-features:
           branch: 'master'
       - integration-jdk-version:
           jdkversion: '{jre}'
+      - distribution-karaf-version:
+          karaf-version: '{karaf-version}'
 
     scm:
       - integration-gerrit-scm:
       - integration-get-slave-addresses
       - inject:
           properties-file: 'slave_addresses.txt'
-      - integration-get-bundle-vars
-      - inject:
-          properties-file: 'bundle_vars.txt'
+      - integration-detect-variables
       - integration-configure-clustering
       - integration-start-cluster-run-test
       - integration-cleanup-tmp
           branch: '{branch}'
       - integration-distribution-stream:
           stream: '{stream}'
-      - integration-bundleurl:
-          bundleurl: '{bundleurl}'
+      - integration-bundle-url:
+          bundle-url: '{bundle-url}'
       - integration-controller-features:
           controller-features: '{install-features}'
       - integration-test-options:
           branch: 'master'
       - integration-jdk-version:
           jdkversion: '{jre}'
+      - distribution-karaf-version:
+          karaf-version: '{karaf-version}'
       - string:
           name: OPENSTACK_BRANCH
           default: '{openstack-branch}'
           name: DEVSTACK_LBAAS_PLUGIN_REPO
           default: '{devstack-lbaas-plugin-repo}'
           description: 'URL to fetch neutron-lbaas devstack plugin'
+      - string:
+          name: DEVSTACK_NETWORKING_SFC_PLUGIN_REPO
+          default: '{devstack-networking-sfc-plugin-repo}'
+          description: 'URL to fetch neutron-lbaas devstack plugin'
       - string:
           name: ODL_ENABLE_L3_FWD
           default: '{odl-enable-l3}'
           name: NETWORKING_L2GW_DRIVER
           default: '{networking-l2gw-repo}'
           description: 'URL to fetch networking-l2gw driver'
-      - string:
-          name: DISABLE_ODL_L3_PLUGIN
-          default: '{disable-odl-l3-service-plugin}'
-          description: 'Disable odl l3 service plugin'
       - string:
           name: CREATE_INITIAL_NETWORKS
           default: '{create-initial-networks}'
           default: '{lbaas-service-provider}'
           description: 'The NEUTRON_LBAAS_SERVICE_PROVIDERV2 value to be used in local.conf - only relevant when using
           neutron-lbaas'
+      - string:
+          name: ODL_SFC_DRIVER
+          default: '{odl-sfc-driver}'
+          description: 'The SFC driver to be used in local.conf - only relevant when using networking-sfc'
+      - string:
+          name: ODL_SNAT_MODE
+          default: '{odl-snat-mode}'
+          description: 'The SNAT mode to be configured - options are conntrack/controller.'
     scm:
       - integration-gerrit-scm:
           basedir: 'test'
       - integration-get-slave-addresses
       - inject:
           properties-file: 'slave_addresses.txt'
-      - integration-get-bundle-vars
-      - inject:
-          properties-file: 'bundle_vars.txt'
+      - integration-detect-variables
       - integration-deploy-controller-run-test
       - integration-deploy-openstack-run-test
       - integration-cleanup-tmp
           branch: '{branch}'
       - integration-distribution-stream:
           stream: '{stream}'
-      - integration-bundleurl:
-          bundleurl: '{bundleurl}'
+      - integration-bundle-url:
+          bundle-url: '{bundle-url}'
       - integration-controller-features:
           controller-features: '{install-features}'
       - integration-test-options:
           branch: 'master'
       - integration-jdk-version:
           jdkversion: '{jre}'
+      - distribution-karaf-version:
+          karaf-version: '{karaf-version}'
       - string:
           name: OPENSTACK_BRANCH
           default: '{openstack-branch}'
           name: DEVSTACK_LBAAS_PLUGIN_REPO
           default: '{devstack-lbaas-plugin-repo}'
           description: 'URL to fetch neutron-lbaas devstack plugin'
+      - string:
+          name: DEVSTACK_NETWORKING_SFC_PLUGIN_REPO
+          default: '{devstack-networking-sfc-plugin-repo}'
+          description: 'URL to fetch neutron-lbaas devstack plugin'
       - string:
           name: ODL_ENABLE_L3_FWD
           default: '{odl-enable-l3}'
           name: NETWORKING_L2GW_DRIVER
           default: '{networking-l2gw-repo}'
           description: 'URL to fetch networking-l2gw driver'
-      - string:
-          name: DISABLE_ODL_L3_PLUGIN
-          default: '{disable-odl-l3-service-plugin}'
-          description: 'Disable odl l3 service plugin'
       - string:
           name: CREATE_INITIAL_NETWORKS
           default: '{create-initial-networks}'
           name: NUM_OPENSTACK_SITES
           default: '{num-openstack-sites}'
           description: 'Number of openstack sites'
+      - string:
+          name: ODL_SFC_DRIVER
+          default: '{odl-sfc-driver}'
+          description: 'The SFC driver to be used in local.conf - only relevant when using networking-sfc'
+      - string:
+          name: ODL_SNAT_MODE
+          default: '{odl-snat-mode}'
+          description: 'The SNAT mode to be configured - options are conntrack/controller.'
 
     scm:
       - integration-gerrit-scm:
       - integration-get-slave-addresses
       - inject:
           properties-file: 'slave_addresses.txt'
-      - integration-get-bundle-vars
-      - inject:
-          properties-file: 'bundle_vars.txt'
+      - integration-detect-variables
       - integration-deploy-controller-run-test
       - integration-deploy-openstack-run-test
       - integration-cleanup-tmp
 - job-template:
     name: '{project}-patch-test-{feature}-{stream}'
 
-    project-type: maven
+    project-type: freestyle
     node: centos7-java-builder-2c-8g
     concurrent: true
     jdk: '{jdk}'
           os-cloud: '{os-cloud}'
           project: '{project}'
           branch: '{branch}'
-          refspec: '$GERRIT_REFSPEC'
+          refspec: 'refs/heads/{branch}'
           artifacts: '{archive-artifacts}'
       - integration-distribution-branch:
           branch: '{branch}'
+      - distribution-karaf-version:
+          karaf-version: 'karaf3'
       - integration-distribution-git-url:
           git-url: '{git-url}'
       - string:
           name: feature
           default: 'all'
           description: 'Specific feature test for patch'
+      - maven-exec:
+          maven-version: mvn33
 
     scm:
       - integration-gerrit-scm:
             unstable: true
             notbuilt: true
 
-    prebuilders:
+    builders:
       - integration-rebase-gerrit-patch
-      - integration-get-bundle-url
-      - inject:
-          properties-file: 'bundle.txt'
       - wipe-org-opendaylight-repo
-      - provide-maven-settings:
-          global-settings-file: 'odl-global-settings'
-          settings-file: 'integration-settings'
       - maven-target:
-          maven-version: 'mvn33'
+          maven-version: mvn33
           pom: '{project}/pom.xml'
-          goals: >
+          goals: |
               clean install dependency:tree
-              -V -B -Pq
+              -Pq
               -Dgitid.skip=false
-              -Djenkins
               -DgenerateReports=false
-              -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r
               -Dstream={stream}
+              {opendaylight-infra-mvn-opts}
           java-opts:
             - '-Xmx4096m -XX:MaxPermSize=1024m -Dmaven.compile.fork=true'
-          settings: 'integration-settings'
+          settings: integration-settings
           settings-type: cfp
-          global-settings: 'odl-global-settings'
+          global-settings: odl-global-settings
           global-settings-type: cfp
-
-    maven:
-      maven-name: 'mvn33'
-      root-pom: 'distribution/pom.xml'
-      goals: >
-          clean install dependency:tree
-          -V -B -Pq
-          -Dgitid.skip=false
-          -Djenkins
-          -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r
-      maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
-      settings: 'integration-settings'
-      settings-type: cfp
-      global-settings: 'odl-global-settings'
-      global-settings-type: cfp
-      ignore-upstream-changes: true
-      post-step-run-condition: 'SUCCESS'
-
-    postbuilders:
+      - maven-target:
+          maven-version: mvn33
+          pom: distribution/pom.xml
+          goals: |
+              clean install dependency:tree
+              -Pq
+              -Dgitid.skip=false
+              {opendaylight-infra-mvn-opts}
+          java-opts:
+            - '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
+          settings: integration-settings
+          settings-type: cfp
+          global-settings: odl-global-settings
+          global-settings-type: cfp
+      - integration-upload-distribution:
+          dist-pom: distribution/pom.xml
       - trigger-builds:
           - project: '{csit-list}'
             block: true
-            predefined-parameters:
-              BUNDLEURL=$BUNDLEURL
+            predefined-parameters: |
+              BUNDLE_URL=$BUNDLE_URL
+              KARAF_VERSION=$KARAF_VERSION
 
     publishers:
       - email-notification:
index 359bd3f7981af55de97c5530f771cfd2f712ef13..75719880084a0d32bd329fa40aced5a38287e299 100644 (file)
       - 'integration-patch-test-{stream}'
       - 'integration-multipatch-test-{stream}'
       - 'integration-distribution-weekly-test-trigger-{stream}'
+      - 'integration-distribution-high-frequency-test-trigger-{stream}'
 
     # CSIT Lists in releng-defaults.yaml
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
+          karaf-version: karaf3
+          jre: 'openjdk8'
+          csit-list: '{csit-list-nitrogen}'
+          csit-sanity-list: '{csit-sanity-list-nitrogen}'
+          csit-weekly-list: '{csit-weekly-list-nitrogen}'
+          schedule-weekly: 'H 12 * * 0'
+          csit-high-frequency-list: ''
+          schedule-high-frequency: ''
+
+      - carbon:
+          branch: 'stable/carbon'
+          karaf-version: karaf3
           jdk: 'openjdk8'
           jre: 'openjdk8'
           csit-list: '{csit-list-carbon}'
           csit-sanity-list: '{csit-sanity-list-carbon}'
           csit-weekly-list: '{csit-weekly-list-carbon}'
           schedule-weekly: 'H 12 * * 0'
+          csit-high-frequency-list: '{csit-high-frequency-list-carbon}'
+          schedule-high-frequency: 'H H/4 * * *'
 
       - boron:
           branch: 'stable/boron'
+          karaf-version: karaf3
           jdk: 'openjdk8'
           jre: 'openjdk8'
           csit-list: '{csit-list-boron}'
           csit-sanity-list: '{csit-sanity-list-boron}'
           csit-weekly-list: '{csit-weekly-list-boron}'
           schedule-weekly: 'H 12 * * 0'
+          csit-high-frequency-list: ''
+          schedule-high-frequency: ''
 
       - beryllium:
           branch: 'stable/beryllium'
+          karaf-version: karaf3
           jdk: 'openjdk7'
           jre: 'openjdk7'
           csit-list: '{csit-list-beryllium}'
           csit-sanity-list: ''
           csit-weekly-list: ''
           schedule-weekly: 'H 12 * * 0'
+          csit-high-frequency-list: ''
+          schedule-high-frequency: ''
 
     # tools system image
     tools_system_image: Ubuntu 14.04 - mininet-ovs-25 - 20170210-0300
           refspec: 'refs/heads/{test-branch}'
           artifacts: '{archive-artifacts}'
       - integration-distribution-branch:
-          branch: '{branch}'
+          branch: '{verify-branch}'
       - integration-distribution-stream:
-          stream: '{dist-stream}'
-      - integration-bundleurl:
-          bundleurl: '{bundleurl}'
+          stream: '{verify-stream}'
+      - integration-bundle-url:
+          bundle-url: '{bundle-url}'
       - integration-controller-scope:
           controller-scope: '{scope}'
       - integration-controller-features:
       - integration-test-options:
           test-options: '-v TIMEOUT_BUG_4220:10s -v USE_NETCONF_CONNECTOR:True'
       - integration-stream-test-plan:
-          stream-test-plan: 'test-libraries-{dist-stream}.txt'
+          stream-test-plan: 'test-libraries-{verify-stream}.txt'
       - integration-test-plan:
           test-plan: 'test-libraries.txt'
       - integration-patch-refspec:
           branch: '$GERRIT_REFSPEC'
       - integration-jdk-version:
           jdkversion: '{jre}'
+      - distribution-karaf-version:
+          karaf-version: '{verify-karaf-version}'
 
     scm:
       - integration-gerrit-scm:
       - integration-get-slave-addresses
       - inject:
           properties-file: 'slave_addresses.txt'
-      - integration-get-bundle-vars
-      - inject:
-          properties-file: 'bundle_vars.txt'
+      - integration-detect-variables
       - integration-deploy-controller-run-test
       - integration-cleanup-tmp
 
           build-days-to-keep: '{build-days-to-keep}'
 
     parameters:
-      - integration-bundleurl:
-          bundleurl: '{bundleurl}'
-      - integration-jdk-version:
-          jdkversion: '{jre}'
+      - integration-bundle-url:
+          bundle-url: '{bundle-url}'
+      - distribution-karaf-version:
+          karaf-version: '{karaf-version}'
 
     builders:
       - trigger-builds:
           - project: '{csit-list}'
             block: true
-            predefined-parameters:
-              BUNDLEURL=$BUNDLEURL
+            predefined-parameters: |
+              BUNDLE_URL=$BUNDLE_URL
+              KARAF_VERSION=$KARAF_VERSION
 
     publishers:
       - email-notification:
           build-days-to-keep: '{build-days-to-keep}'
 
     parameters:
-      - integration-bundleurl:
-          bundleurl: '{bundleurl}'
-      - integration-jdk-version:
-          jdkversion: '{jre}'
+      - integration-bundle-url:
+          bundle-url: '{bundle-url}'
+      - distribution-karaf-version:
+          karaf-version: '{karaf-version}'
 
     builders:
       - trigger-builds:
           - project: '{csit-sanity-list}'
             block: true
-            predefined-parameters:
-              BUNDLEURL=$BUNDLEURL
+            predefined-parameters: |
+              BUNDLE_URL=$BUNDLE_URL
+              KARAF_VERSION=$KARAF_VERSION
 
     publishers:
       - email-notification:
 - job-template:
     name: 'integration-patch-test-{stream}'
 
-    project-type: maven
+    project-type: freestyle
     node: centos7-java-builder-2c-8g
-    jdk: '{jdk}'
 
     properties:
       - opendaylight-infra-properties:
           artifacts: '{archive-artifacts} **/dependency_tree.txt'
       - integration-distribution-branch:
           branch: '{branch}'
+      - distribution-karaf-version:
+          karaf-version: '{karaf-version}'
       - integration-distribution-git-url:
           git-url: '{git-url}'
+      - maven-exec:
+          maven-version: mvn33
 
     scm:
       - integration-gerrit-scm:
             unstable: true
             notbuilt: true
 
-    prebuilders:
+    builders:
       - integration-rebase-gerrit-patch
-      - integration-get-bundle-url
-      - inject:
-          properties-file: 'bundle.txt'
       - wipe-org-opendaylight-repo
       - provide-maven-settings:
           global-settings-file: 'odl-global-settings'
       - maven-target:
           maven-version: 'mvn33'
           pom: '$GERRIT_PROJECT/pom.xml'
-          goals: >
+          goals: |
               clean install dependency:tree -DoutputFile=dependency_tree.txt
-              -V -B -Pq -Djenkins
-              -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r
+              -Pq
               -Dstream={stream}
+              {opendaylight-infra-mvn-opts}
           java-opts:
             - '-Xmx4096m -XX:MaxPermSize=1024m -Dmaven.compile.fork=true'
-          settings: 'integration-settings'
+          settings: integration-settings
           settings-type: cfp
-          global-settings: 'odl-global-settings'
+          global-settings: odl-global-settings
           global-settings-type: cfp
-
-    maven:
-      maven-name: 'mvn33'
-      root-pom: 'distribution/pom.xml'
-      goals: >
-          clean install dependency:tree -DoutputFile=dependency_tree.txt
-          -V -B -Djenkins
-          -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r
-      maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
-      settings: 'integration-settings'
-      settings-type: cfp
-      global-settings: 'odl-global-settings'
-      global-settings-type: cfp
-      ignore-upstream-changes: true
-      post-step-run-condition: 'SUCCESS'
-
-    postbuilders:
+      - maven-target:
+          maven-version: mvn33
+          pom: distribution/pom.xml
+          goals: |
+              clean install dependency:tree -DoutputFile=dependency_tree.txt
+              {opendaylight-infra-mvn-opts}
+          java-opts:
+            - '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
+          settings: integration-settings
+          settings-type: cfp
+          global-settings: odl-global-settings
+          global-settings-type: cfp
+      - integration-upload-distribution:
+          dist-pom: distribution/pom.xml
       - trigger-builds:
           - project: '{csit-list}'
             block: true
-            predefined-parameters:
-              BUNDLEURL=$BUNDLEURL
+            predefined-parameters: |
+              BUNDLE_URL=$BUNDLE_URL
+              KARAF_VERSION=$KARAF_VERSION
 
     publishers:
       - opendaylight-infra-shiplogs:
           email-recipients: '{email-recipients}'
           email-prefix: '[$GERRIT_PROJECT]'
 
-# Template: integration-multipatch-test-{stream}
-# Goal: Build one or more patches and run all available system test on a distribution containing the change
-# Operation: This job template checks out and builds each patch provided in job parameters, creates a distribution
-# containing these patches, and triggers the distribution test job which includes most (if not all) available
-# CSIT jobs
 
 - job-template:
     name: 'integration-multipatch-test-{stream}'
+    # Goal: Build one or more patches and run all available system test on a distribution containing the change.
+    # Operation: This job template checks out and builds each patch provided in job parameters, creates a distribution
+    # containing these patches, and triggers the distribution test job which includes most (if not all) available
+    # CSIT jobs
+    # TODO: Move the following to appropriate readthedocs document.
+    # Recommended Sandbox usage:
+    # 0. Create this job and a CSIT job you want to run on the new .zip in Sandbox (disable timed triggers).
+    # 1. Copy the csit job name to clipboard.
+    # 2. Navigate to Sandbox page of this job.
+    # 3. Click "Configure".
+    # 4. Locate "Trigger/call builds on other projects" (under "Post Steps" tab).
+    # 5. Delete the long value of "Projects to build" field and paste the job name from clipboard (ctrl+a, ctrl+v).
+    # 6. Click "Save" button.
+    # 7. Click "Build with Parameters".
+    # yamllint disable-line rule:line-length
+    # 8. Start the job with your parameters, see https://wiki.opendaylight.org/view/Integration/Test/Running_System_Tests#Running_System_Tests_Using_Custom_Distribution_Built_From_Multiple_Patches
+    # 9. The multipatch job waits for the csit job to finish, so abort csit if you see something went wrong.
+    # 10. Navigate to Sandbox page of the csit job, click the run triggered from multipatch.
+    # 11. Click Parameters and copy the long value of BUNDLE_URL field to clipboard.
+    # 12. Run the same csit job woth different patchset or test options, or other csit jobs, with this BUNDLE_URL value
+    #     so you do not have to wait for multipatch build. Repeat step 12.
+    # 13. Currently, the .zip lasts 24 hours (?) so you may need to jump to step 2 (or 0) after some time.
 
-    project-type: maven
+    project-type: freestyle
     node: centos7-java-builder-8c-8g
     jdk: '{jdk}'
 
     parameters:
       - patches-to-build-parameter:
           patches_to_build: '$PATCHES_TO_BUILD'
+      - run-test-parameter:
+          run-test: 'false'
       - integration-distribution-branch:
           branch: '{branch}'
+      - distribution-karaf-version:
+          karaf-version: '{karaf-version}'
       - opendaylight-infra-parameters:
           os-cloud: '{os-cloud}'
           project: 'integration/distribution'
           branch: '{branch}'
           refspec: 'refs/heads/{branch}'
           artifacts: '{archive-artifacts} **/dependency_tree.txt'
+      - maven-exec:
+          maven-version: mvn33
+
+    wrappers:
+      - opendaylight-infra-wrappers:
+          build-timeout: '1200'
 
-    prebuilders:
+    builders:
       - wipe-org-opendaylight-repo
       - integration-multipatch-builder
-      - inject:
-          properties-file: 'bundle.txt'
       - provide-maven-settings:
           global-settings-file: 'odl-global-settings'
           settings-file: 'yangtools-settings'
-
-    wrappers:
-      - opendaylight-infra-wrappers:
-          build-timeout: '1200'
-
-    maven:
-      maven-name: 'mvn33'
-      root-pom: 'patch_tester/pom.xml'
-      # TODO: Make Maven options configurable. Currently tests are not skipped, everything else is.
-      goals: >
-          clean install dependency:tree -DoutputFile=dependency_tree.txt
-          -f patch_tester/pom.xml -V -B -Pq -Djenkins
-          -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r
-          -Dstream={stream}
-      maven-opts: '-Xmx7168m -XX:MaxPermSize=1024m -Dmaven.compile.fork=true'
-      settings: 'yangtools-settings'
-      settings-type: cfp
-      global-settings: 'odl-global-settings'
-      global-settings-type: cfp
-      post-step-run-condition: 'SUCCESS'
-
-    postbuilders:
-      - trigger-builds:
-          - project: '{csit-list}'
-            block: true
-            predefined-parameters:
-              BUNDLEURL=$BUNDLEURL
+      - maven-target:
+          maven-version: mvn33
+          pom: patch_tester/pom.xml
+          # TODO: Make Maven options configurable. Currently tests are not skipped, everything else is.
+          goals: |
+              clean install dependency:tree -DoutputFile=dependency_tree.txt
+              -Pq
+              -Dstream={stream}
+              {opendaylight-infra-mvn-opts}
+          java-opts:
+            - '-Xmx7168m -XX:MaxPermSize=1024m -Dmaven.compile.fork=true'
+          settings: integration-settings
+          settings-type: cfp
+          global-settings: odl-global-settings
+          global-settings-type: cfp
+      - integration-upload-distribution:
+          dist-pom: patch_tester/distribution/pom.xml
+      - conditional-step:
+          condition-kind: boolean-expression
+          condition-expression: $RUNTEST
+          steps:
+            - trigger-builds:
+                - project: '{csit-list}'
+                  block: true
+                  predefined-parameters: |
+                    BUNDLE_URL=$BUNDLE_URL
+                    KARAF_VERSION=$KARAF_VERSION
 
     publishers:
       - opendaylight-infra-shiplogs:
           build-days-to-keep: '{build-days-to-keep}'
 
     parameters:
-      - integration-bundleurl:
-          bundleurl: '{bundleurl}'
-      - integration-jdk-version:
-          jdkversion: '{jre}'
+      - integration-bundle-url:
+          bundle-url: '{bundle-url}'
+      - distribution-karaf-version:
+          karaf-version: '{karaf-version}'
 
     triggers:
       - timed: '{schedule-weekly}'
       - trigger-builds:
           - project: '{csit-weekly-list}'
             block: true
-            predefined-parameters:
-              BUNDLEURL=$BUNDLEURL
+            predefined-parameters: |
+              BUNDLE_URL=$BUNDLE_URL
+              KARAF_VERSION=$KARAF_VERSION
+
+    publishers:
+      - email-notification:
+          email-recipients: '{email-recipients}'
+          email-prefix: '[integration]'
+
+- job-template:
+    name: 'integration-distribution-high-frequency-test-trigger-{stream}'
+
+    project-type: freestyle
+    node: centos7-robot-2c-2g
+
+    properties:
+      - opendaylight-infra-properties:
+          build-days-to-keep: '{build-days-to-keep}'
+
+    parameters:
+      - integration-bundle-url:
+          bundle-url: '{bundle-url}'
+      - distribution-karaf-version:
+          karaf-version: '{karaf-version}'
+
+    triggers:
+      - timed: '{schedule-high-frequency}'
+
+    builders:
+      - trigger-builds:
+          - project: '{csit-high-frequency-list}'
+            block: true
+            predefined-parameters: |
+              BUNDLE_URL=$BUNDLE_URL
+              KARAF_VERSION=$KARAF_VERSION
 
     publishers:
       - email-notification:
diff --git a/jjb/integration/integration-upload-distribution.sh b/jjb/integration/integration-upload-distribution.sh
new file mode 100644 (file)
index 0000000..e9e2bdf
--- /dev/null
@@ -0,0 +1,31 @@
+#!/bin/bash
+set -xeu -o pipefail
+
+BUNDLE_VERSION=$(xpath "${BUNDLE_POM}" '/project/version/text()' 2> /dev/null)
+BUNDLE="${KARAF_ARTIFACT}-${BUNDLE_VERSION}.zip"
+BUNDLE_FILEPATH="/tmp/r/org/opendaylight/integration/${KARAF_ARTIFACT}/${BUNDLE_VERSION}/${BUNDLE}"
+ls -l "${BUNDLE_FILEPATH}"
+LOG_FILE='integration-upload-distribution.log'
+echo "Uploading distribution to Nexus..."
+"$MVN" deploy:deploy-file \
+    --log-file ${LOG_FILE} \
+    --global-settings "$GLOBAL_SETTINGS_FILE" \
+    --settings "$SETTINGS_FILE" \
+    -Dfile="${BUNDLE_FILEPATH}" \
+    -DrepositoryId=opendaylight-snapshot \
+    -Durl="$ODLNEXUSPROXY/content/repositories/opendaylight.snapshot/" \
+    -DgroupId="org.opendaylight.integration.${GERRIT_PROJECT//\//.}" \
+    -DartifactId=${KARAF_ARTIFACT} \
+    -Dversion="${BUNDLE_VERSION}" \
+    -Dpackaging=zip \
+    || true  # Sandbox is not allowed to uplad to Nexus.
+
+cat "${LOG_FILE}"
+
+BUNDLE_URL=$(grep "Uploaded.*${KARAF_ARTIFACT}/${BUNDLE_VERSION}.*.zip" ${LOG_FILE} | awk '{print $3}') || true
+echo "Bundle uploaded to ${BUNDLE_URL}"
+
+# Re-inject the new BUNDLE_URL for downstream jobs to pull from Nexus
+cat > "${WORKSPACE}/integration-upload-distribution.env" <<EOF
+BUNDLE_URL=${BUNDLE_URL}
+EOF
diff --git a/jjb/integration/integration4-templates.yaml b/jjb/integration/integration4-templates.yaml
new file mode 100644 (file)
index 0000000..3591d82
--- /dev/null
@@ -0,0 +1,111 @@
+---
+- job-template:
+    name: '{project}-csit4-1node-{functionality}-{install}-nitrogen'
+    # Keep synchronized with *-csit-* please.
+    disabled: false
+
+    project-type: freestyle
+    node: centos7-robot-2c-2g
+
+    properties:
+      - opendaylight-infra-properties:
+          build-days-to-keep: '{build-days-to-keep}'
+
+    parameters:
+      # Removing {kafka-version} will force this job to run in k4.
+      - opendaylight-infra-parameters:
+          os-cloud: '{os-cloud}'
+          project: 'integration/test'
+          branch: 'master'
+          refspec: 'refs/heads/master'
+          artifacts: '{archive-artifacts}'
+      - integration-distribution-branch:
+          branch: 'master'
+      - integration-distribution-stream:
+          stream: 'nitrogen'
+      - integration-bundle-url:
+          bundle-url: '{bundle-url}'
+      - integration-controller-scope:
+          controller-scope: '{scope}'
+      - integration-controller-features:
+          controller-features: '{install-features}'
+      - integration-test-options:
+          test-options: '{robot-options}'
+      - integration-stream-test-plan:
+          stream-test-plan: '{project}-{functionality}-nitrogen.txt'
+      - integration-test-plan:
+          test-plan: '{project}-{functionality}.txt'
+      - integration-patch-refspec:
+          branch: 'master'
+      - integration-jdk-version:
+          jdkversion: 'openjdk8'
+
+    scm:
+      - integration-gerrit-scm:
+          basedir: 'test'
+          refspec: '$PATCHREFSPEC'
+          branch: 'master'
+
+    wrappers:
+      - opendaylight-infra-wrappers:
+          build-timeout: '{build-timeout}'
+
+    builders:
+      - integration-infra-stack:
+          stack-template: '{stack-template}'
+          vm_0_count: '1'
+          vm_0_flavor: '{odl_system_flavor}'
+          vm_0_image: '{odl_system_image}'
+          vm_1_count: '{tools_system_count}'
+          vm_1_flavor: '{tools_system_flavor}'
+          vm_1_image: '{tools_system_image}'
+      - integration-install-robotframework
+      - inject:
+          properties-file: 'env.properties'
+      - integration-get-slave-addresses
+      - inject:
+          properties-file: 'slave_addresses.txt'
+      - integration-detect-variables
+      - integration-deploy-controller-run-test
+      - integration-cleanup-tmp
+
+    publishers:
+      - integration-robot:
+          unstable-if: 0.0
+          pass-if: 100.0
+      - email-notification:
+          email-recipients: '{email-recipients}'
+          email-prefix: '[{project}]'
+      - plot:
+          - title: '{01-plot-title}'
+            yaxis: '{01-plot-yaxis}'
+            group: '{01-plot-group}'
+            num-builds: '5400'
+            keep-records: true
+            style: line
+            use-description: false
+            # yamllint disable-line rule:line-length
+            csv-file-name: '{project}-csit4-1node-{functionality}-{install}-nitrogen-{01-plot-data-file}-history.csv'
+            series:
+              - file: '{01-plot-data-file}'
+                inclusion-flag: 'off'
+                display-table: true
+                format: csv
+          - title: '{02-plot-title}'
+            yaxis: '{02-plot-yaxis}'
+            group: '{02-plot-group}'
+            num-builds: '5400'
+            keep-records: true
+            style: line
+            use-description: false
+            # yamllint disable-line rule:line-length
+            csv-file-name: '{project}-csit4-1node-{functionality}-{install}-nitrogen-{02-plot-data-file}-history.csv'
+            series:
+              - file: '{02-plot-data-file}'
+                inclusion-flag: 'off'
+                display-table: true
+                format: csv
+      - integration-csit-archive-build
+      - opendaylight-infra-shiplogs:
+          maven-version: 'mvn33'
+
index e32fc648e0730cc9092bc4b1b5fda7a47bc6b1ba..31c33e71bbea32dc627af5d61b369e03cee79ec4 100644 (file)
       # backward incompatible changes in test suites for Carbon
       # TODO: Create test suites for specific release before
       # Carbon if needed.
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
 
     # TODO: Delete the following if suites are compatible with Boron again.
     verify-stream: 'carbon'
index 65488ba159c9a7b12cd285f733ae85c35af9a75b..5c81767b215811ffb8967f3c827aa0fb45fcf56d 100644 (file)
@@ -1,4 +1,32 @@
 ---
+- project:
+    name: iotdm-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-distribution3-check-nitrogen'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-validate-autorelease-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'iotdm'
+    project-name: 'iotdm'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'iotdm-settings'
+    mvn-goals: 'clean install'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: 'aaa-merge-{stream}'
+    email-upstream: '[iotdm] [aaa]'
+    archive-artifacts: ''
+
 - project:
     name: iotdm-carbon
     jobs:
@@ -12,7 +40,8 @@
     stream: carbon
     project: 'iotdm'
     project-name: 'iotdm'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -40,6 +69,7 @@
     project: 'iotdm'
     project-name: 'iotdm'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -67,6 +97,7 @@
     project: 'iotdm'
     project-name: 'iotdm'
     branch: 'stable/beryllium'
+    karaf-version: karaf3
     jdk: openjdk7
     jdks:
       - openjdk7
index 13bfff1e1ce6e495bc454dbbacfd6c7d7f95ec13..169577e4e65638451183a78645830f262adf8520 100644 (file)
@@ -1,4 +1,28 @@
 ---
+- project:
+    name: jsonrpc-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+    project: 'jsonrpc'
+    project-name: 'jsonrpc'
+    stream: nitrogen
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'jsonrpc-settings'
+    mvn-goals: 'clean install -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: 'odlparent-merge-{stream},yangtools-merge-{stream},controller-merge-{stream},mdsal-merge-{stream}'
+    email-upstream: '[jsonrpc] [odlparent] [yangtools] [controller] [mdsal]'
+    archive-artifacts: ''
+
 - project:
     name: jsonrpc-carbon
     jobs:
@@ -9,7 +33,8 @@
     project: 'jsonrpc'
     project-name: 'jsonrpc'
     stream: carbon
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
index 8b53e5536414f154d5b69532aec15402c0f7e4f2..2d14a29de80b62f6934c26b10c2492d72bb65718 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
index 431bb7090ad871c53da09af6c47123857e7a5553..bb1fe3955f915de72cbd0639e141013c373fc2ad 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
index 0b752da35080d06b89f580b7e3f6a3c2a820f827..e899f68b8d9e03998df71c8d743e1e9e5d2870fe 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
index 52de3b90d0d4b6423f43f09cbafc8f993fb90261..5bd174ee1f640d35ee14f1d7cd13436a82e74dcf 100644 (file)
@@ -9,15 +9,21 @@
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jdk: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jdk: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jdk: 'openjdk8'
+          karaf-version: karaf3
       - beryllium:
           branch: 'stable/beryllium'
           jdk: 'openjdk7'
+          karaf-version: karaf3
 
     feature:
       - all:
index 22ab3dab821d594c13e3fd6e3022a6c45b50c9e7..0dd6f35d6b0d683d35b89e35f3f82a8a563a2e61 100644 (file)
@@ -1,4 +1,37 @@
 ---
+- project:
+    name: l2switch-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-distribution3-check-nitrogen'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-validate-autorelease-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'l2switch'
+    project-name: 'l2switch'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'l2switch-settings'
+    mvn-goals: 'clean install'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
+    dependencies: >
+        odlparent-merge-{stream},
+        yangtools-merge-{stream},
+        controller-merge-{stream},
+        openflowjava-merge-{stream},
+        openflowplugin-merge-{stream}
+    email-upstream: '[l2switch] [odlparent] [yangtools] [controller] [openflowjava] [openflowplugin]'
+    archive-artifacts: ''
+
 - project:
     name: l2switch-carbon
     jobs:
@@ -12,7 +45,8 @@
     stream: carbon
     project: 'l2switch'
     project-name: 'l2switch'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -45,6 +79,7 @@
     project: 'l2switch'
     project-name: 'l2switch'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
     project: 'l2switch'
     project-name: 'l2switch'
     branch: 'stable/beryllium'
+    karaf-version: karaf3
     jdk: openjdk7
     jdks:
       - openjdk7
index dbe97f6e8f67f0b8d6d87bfd271295f42aacf89a..db0539a769ab98ed046ea6239253b198d167faed 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
index 7b13db3aee17d667d80f7f0461679f0f127a62d3..83a935f3eae14a546a7e7d68e754737c81001bc0 100644 (file)
@@ -1,4 +1,32 @@
 ---
+- project:
+    name: lacp-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-distribution3-check-nitrogen'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-validate-autorelease-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'lacp'
+    project-name: 'lacp'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    mvn-settings: 'lacp-settings'
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-goals: 'clean install javadoc:aggregate -DrepoBuild'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: 'openflowjava-merge-{stream},openflowplugin-merge-{stream}'
+    email-upstream: '[lacp] [openflowjava] [openflowplugin]'
+    archive-artifacts: ''
+
 - project:
     name: lacp-carbon
     jobs:
@@ -12,7 +40,8 @@
     stream: carbon
     project: 'lacp'
     project-name: 'lacp'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -40,6 +69,7 @@
     project: 'lacp'
     project-name: 'lacp'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -67,6 +97,7 @@
     project: 'lacp'
     project-name: 'lacp'
     branch: 'stable/beryllium'
+    karaf-version: karaf3
     jdk: openjdk7
     jdks:
       - openjdk7
index 1d2d829d79906dce1e4493caa725ad0130f2135f..018ea27a32c53633d8002293436ae1958a39a259 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
index 54f832ec3a2c08405fd0c61cd8c74e12333901dc..3d1f1ae4b6eb44cef4793cdc916b23ff0dea06d7 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk8'
+          karaf-version: karaf3
 
     install:
       - only:
index ffc89f9119be73f431919a296b6149941b623e16..2ed9868a9cf6bb1d0eb6bb56e7b152c8aa62ce37 100644 (file)
@@ -1,4 +1,33 @@
 ---
+- project:
+    name: lispflowmapping-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-distribution3-check-nitrogen'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-validate-autorelease-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'lispflowmapping'
+    project-name: 'lispflowmapping'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'lispflowmapping-settings'
+    mvn-goals: 'clean install findbugs:findbugs javadoc:aggregate -DrepoBuild'
+    mvn-opts: '-Xmx2048m -XX:MaxPermSize=512m -Dmaven.compile.fork=true'
+    dependencies: 'controller-merge-{stream},odlparent-merge-{stream},yangtools-merge-{stream},neutron-merge-{stream}'
+    email-upstream: '[lispflowmapping] [controller] [odlparent] [yangtools] [neutron]'
+    archive-artifacts: ''
+    build-node: centos7-java-builder-4c-8g
+
 - project:
     name: lispflowmapping-carbon
     jobs:
@@ -12,7 +41,8 @@
     stream: carbon
     project: 'lispflowmapping'
     project-name: 'lispflowmapping'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -41,6 +71,7 @@
     project: 'lispflowmapping'
     project-name: 'lispflowmapping'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
     project: 'lispflowmapping'
     project-name: 'lispflowmapping'
     branch: 'stable/beryllium'
+    karaf-version: karaf3
     jdk: openjdk7
     jdks:
       - openjdk7
index 6c6769295af854f5b307f81225053cc5f22f4e05..f2987c5f8ba24a0adee2905dd42cd13ad6d2efe4 100644 (file)
 
     # Project branches. Boron for actual testing, Beryllium for sanity.
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
           robot-options: '-v JAVA_OPTIONS:-Xmx6656m'
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
           robot-options: '-v JAVA_OPTIONS:-Xmx6656m'
-
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
           robot-options: '-v JAVA_7_OPTIONS:-Xmx6144m@-XX:MaxPermSize=512m --escape space:@'
 
     install:
index 2b4c0c381a9e0ebad1d11dd6a3cc167d60891bcb..b73996b0e43d7ad195f5f0aff74fa287cfda7ec8 100644 (file)
@@ -1,4 +1,32 @@
 ---
+- project:
+    name: mdsal-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-distribution3-check-nitrogen'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-validate-autorelease-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'mdsal'
+    project-name: 'mdsal'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'mdsal-settings'
+    mvn-goals: '-Dmaven.compile.fork=true clean install -Dintegrationtests'
+    mvn-opts: '-Xmx2048m -XX:MaxPermSize=1024m'
+    dependencies: 'odlparent-merge-{stream},yangtools-merge-{stream}'
+    email-upstream: '[mdsal] [odlparent] [yangtools]'
+    archive-artifacts: ''
+
 - project:
     name: mdsal-carbon
     jobs:
@@ -12,7 +40,8 @@
     stream: carbon
     project: 'mdsal'
     project-name: 'mdsal'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -40,6 +69,7 @@
     project: 'mdsal'
     project-name: 'mdsal'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -67,6 +97,7 @@
     project: 'mdsal'
     project-name: 'mdsal'
     branch: 'stable/beryllium'
+    karaf-version: karaf3
     jdk: openjdk7
     jdks:
       - openjdk7
index 59a6952e974ef671e9a0080aac9a0a29274e8b0e..a2b2009b309ae71bd51c5b28f34ebe35f47937ee 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
index 98809b68e515b7775961e76e4fda202a2a97c440..f717d6a9f226757a413b2acece4d5e2d48beed0f 100644 (file)
@@ -1,4 +1,32 @@
 ---
+- project:
+    name: messaging4transport-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-distribution3-check-nitrogen'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-validate-autorelease-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'messaging4transport'
+    project-name: 'messaging4transport'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'messaging4transport-settings'
+    mvn-goals: 'clean install'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: ''
+    email-upstream: '[messaging4transport]'
+    archive-artifacts: ''
+
 - project:
     name: messaging4transport-carbon
     jobs:
@@ -12,7 +40,8 @@
     stream: carbon
     project: 'messaging4transport'
     project-name: 'messaging4transport'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -40,6 +69,7 @@
     project: 'messaging4transport'
     project-name: 'messaging4transport'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -67,6 +97,7 @@
     project: 'messaging4transport'
     project-name: 'messaging4transport'
     branch: 'stable/beryllium'
+    karaf-version: karaf3
     jdk: openjdk7
     jdks:
       - openjdk7
index 9a3c23f4660492b09923f53564ac1e6fd9f79d59..cba91f67fa734c11b09a4eb5cf720f8d07bb7613 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
 
     install:
       - only:
index 5e913b57b9f28f10f6b0440c1127e7902768ea43..59e13535d5b01efd64fa61d546fb427d8c1c11e1 100644 (file)
@@ -1,4 +1,32 @@
 ---
+- project:
+    name: natapp-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-distribution3-check-nitrogen'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-validate-autorelease-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'natapp'
+    project-name: 'natapp'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'natapp-settings'
+    mvn-goals: 'clean install'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: 'openflowplugin-merge-{stream}'
+    email-upstream: '[natapp] [openflowplugin]'
+    archive-artifacts: ''
+
 - project:
     name: natapp-carbon
     jobs:
@@ -12,7 +40,8 @@
     stream: carbon
     project: 'natapp'
     project-name: 'natapp'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -40,6 +69,7 @@
     project: 'natapp'
     project-name: 'natapp'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
index a0ff85b091ffb5cf1aae932259311f7ff1400f05..d48097dfd9344934c989136b027f2f013a195cfb 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
index d0f45a6eb94202ad31d4127c6c587cca1f2eced6..d39b71b0f19bf04f3503af474e9c46b7724c043b 100644 (file)
@@ -1,4 +1,32 @@
 ---
+- project:
+    name: nemo-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-distribution3-check-nitrogen'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-validate-autorelease-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'nemo'
+    project-name: 'nemo'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'nemo-settings'
+    mvn-goals: 'clean install'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: ''
+    email-upstream: '[nemo]'
+    archive-artifacts: ''
+
 - project:
     name: nemo-carbon
     jobs:
@@ -12,7 +40,8 @@
     stream: carbon
     project: 'nemo'
     project-name: 'nemo'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -40,6 +69,7 @@
     project: 'nemo'
     project-name: 'nemo'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -67,6 +97,7 @@
     project: 'nemo'
     project-name: 'nemo'
     branch: 'stable/beryllium'
+    karaf-version: karaf3
     jdk: openjdk7
     jdks:
       - openjdk7
index 33d82c12e3a3518bd3b1d1378c358bd2ce4cb7f8..3214911a406e420783b7c1a3a931647273badd4a 100644 (file)
@@ -1,39 +1,4 @@
 ---
-- project:
-    name: netconf-csit-cluster-stress
-    jobs:
-      - '{project}-csit-3node-{functionality}-{install}-{stream}'
 
-    # The project name
-    project: 'netconf'
-
-    # The functionality under test
-    functionality: 'cluster-stress'
-
-    # Project branches
-    stream:
-      - carbon:
-          branch: 'master'
-          jre: 'openjdk8'
-      - boron:
-          branch: 'stable/boron'
-          jre: 'openjdk8'
-      - beryllium:
-          branch: 'stable/beryllium'
-          jre: 'openjdk7'
-
-    install:
-      - only:
-          scope: 'only'
-      - all:
-          scope: 'all'
-
-    # Features to install
-    # odl-jolokia is added automatically just because this is a 3node job.
-    # Netconf clustered feature is installed at runtime.
-    install-features: >
-        odl-restconf,
-        odl-netconf-ssh
-
-    # Robot custom options
-    robot-options: '-v USE_NETCONF_CONNECTOR:False'
+# Fix this [0] before git-reverting this job.
+# [0] https://trello.com/c/SbOodkUt/490-int-nest-repair-netconf-cluster-stress-suite
index a8b8adf53776b8dfd24c4ceff3c99fcc273112c5..1347af9cefd56ac75c04d252ad97a9ccc0bb8538 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
index b33e0f0bede39d49d5b662c66347bb63a7c06768..429f207e5c0bf742404901b0bbb74c2940ea571a 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
similarity index 56%
rename from jjb/eman/eman-csit-model.yaml
rename to jjb/netconf/netconf-csit-callhome.yaml
index 76a0ffa06bb8f58b252bf01110f71eb226c1cabc..eb2ada4993d1506a8e3e309fbda70664f2519d7b 100644 (file)
@@ -1,33 +1,34 @@
 ---
 - project:
-    name: eman-csit-model
+    name: netconf-csit-callhome
     jobs:
       - '{project}-csit-1node-{functionality}-{install}-{stream}'
-      - '{project}-csit-verify-1node-{functionality}'
 
     # The project name
-    project: 'eman'
+    project: 'netconf'
 
     # The functionality under test
-    functionality: 'model'
+    functionality: 'callhome'
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
-      - boron:
-          branch: 'stable/boron'
+      - carbon:
+          branch: 'stable/carbon'
           jre: 'openjdk8'
+          karaf-version: karaf3
 
     install:
       - only:
           scope: 'only'
-      - all:
-          scope: 'all'
+
+    # no mininet required
+    tools_system_image: Ubuntu 14.04 - gbp - 20170210-0536
 
     # Features to install
-    install-features: 'odl-restconf,odl-mdsal-apidocs,odl-eman-ui'
+    install-features: 'odl-netconf-callhome-ssh,odl-restconf'
 
     # Robot custom options
     robot-options: ''
index 53b5ebcd5ef16e45ebf6720d1f0613821d8fa460..4c7763258d7f8c8953449bc9b377f6d3902b6975 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
           install-features: >
               odl-restconf,
               odl-clustering-test-app,
@@ -28,6 +33,7 @@
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
           install-features: >
               odl-restconf,
               odl-clustering-test-app,
index 66bb266555163d261560a065a3cf4aad83c6fa92..2b4c903d40e5019eb9b80635e5cfd8c8a602381c 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
           install-features: >
               odl-restconf,
               odl-netconf-mdsal,
+              odl-mdsal-apidocs,
               odl-clustering-test-app,
               odl-netconf-connector-all,
               odl-netconf-topology
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
           install-features: >
               odl-restconf,
               odl-netconf-mdsal,
+              odl-mdsal-apidocs,
               odl-clustering-test-app,
               odl-netconf-connector-all,
               odl-netconf-topology
@@ -47,6 +55,7 @@
     install-features: >
         odl-restconf,
         odl-netconf-mdsal,
+        odl-mdsal-apidocs,
         odl-clustering-test-app,
         odl-netconf-topology
 
index 9ea3d0301a58d96a97cb98669b94a0f840df55a3..aeaa6bf468bc96db7496dd985dcc2724832b1b69 100644 (file)
@@ -1,4 +1,32 @@
 ---
+- project:
+    name: netconf-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-distribution3-check-nitrogen'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-validate-autorelease-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'netconf'
+    project-name: 'netconf'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'netconf-settings'
+    mvn-goals: 'clean install -Pintegrationtests'
+    mvn-opts: '-Xmx2048m -XX:MaxPermSize=1024m -Dmaven.compile.fork=true'
+    dependencies: 'aaa-merge-{stream},controller-merge-{stream},odlparent-merge-{stream},yangtools-merge-{stream}'
+    email-upstream: '[netconf] [aaa] [controller] [odlparent] [yangtools]'
+    archive-artifacts: ''
+
 - project:
     name: netconf-carbon
     jobs:
@@ -12,7 +40,8 @@
     stream: carbon
     project: 'netconf'
     project-name: 'netconf'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -40,6 +69,7 @@
     project: 'netconf'
     project-name: 'netconf'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -67,6 +97,7 @@
     project: 'netconf'
     project-name: 'netconf'
     branch: 'stable/beryllium'
+    karaf-version: karaf3
     jdk: openjdk7
     jdks:
       - openjdk7
index b6917ee7e9446e6b299c2130aa9e31c33a6a37aa..26f190b87781545f04c8cfb14c2e44e33eea4e3a 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
index 52ba702b62b356023d54fb45cbb422987647572e..b61bd457f5e55a4537feafe125e9fc499a679d47 100644 (file)
@@ -1,4 +1,32 @@
 ---
+- project:
+    name: netide-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-distribution3-check-nitrogen'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-validate-autorelease-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'netide'
+    project-name: 'netide'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'netide-settings'
+    mvn-goals: 'clean install'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: 'openflowjava-merge-{stream}'
+    email-upstream: '[netide] [openflowjava]'
+    archive-artifacts: ''
+
 - project:
     name: netide-carbon
     jobs:
@@ -12,7 +40,8 @@
     stream: carbon
     project: 'netide'
     project-name: 'netide'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -40,6 +69,7 @@
     project: 'netide'
     project-name: 'netide'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -67,6 +97,7 @@
     project: 'netide'
     project-name: 'netide'
     branch: 'stable/beryllium'
+    karaf-version: karaf3
     jdk: openjdk7
     jdks:
       - openjdk7
index 682a5836b9b077bcbb7c0ffefd09338afc27d8e1..a5d6460378896b5a3e023fa248797c6f039d09d3 100644 (file)
 
     functionality:
       - upstream-transparent:
-          schedule: 'H H * * *'
+          schedule: ''
           sg-mode: 'transparent'
       - upstream-stateful:
-          schedule: 'H H * * *'
+          schedule: ''
           sg-mode: 'stateful'
       - upstream-learn:
-          schedule: 'H H * * *'
-          sg-mode: 'learn'
-      - gate-learn:
           schedule: ''
           sg-mode: 'learn'
-      - gate-transparent:
-          schedule: ''
-          sg-mode: 'transparent'
-      - gate-stateful:
-          schedule: ''
-          sg-mode: 'stateful'
-      - 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:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
 
     openstack:
-      - mitaka:
-          openstack-branch: 'stable/mitaka'
-          odl-ml2-branch: 'stable/mitaka'
-          openstack_system_image: 'CentOS 7 - devstack-mitaka - 20170314-2255'
       - newton:
           openstack-branch: 'stable/newton'
           odl-ml2-branch: 'stable/newton'
 
     tools_system_count: 2
 
-    tools_system_image: 'Ubuntu 14.04 - mininet-ovs-25 - 20170210-0300'
+    tools_system_image: 'Ubuntu 16.04 - mininet-ovs-25 - 20170516-0740'
 
     enable-networking-l2gw: 'yes'
 
-    disable-odl-l3-service-plugin: 'yes'
-
     enable-openstack-services: 'q-svc,q-dhcp,q-meta,n-cauth,tempest,l2gw-plugin'
 
     security-group-mode: '{sg-mode}'
index cac427f4071c4dc989f2d97c3bed4fe78c214c53..4e1ba2f688a4f4ae2ff9a96e30e6b2aadc1dd82d 100644 (file)
 
     functionality:
       - upstream-transparent:
-          schedule: 'H H * * *'
+          schedule: ''
           sg-mode: 'transparent'
       - upstream-stateful:
-          schedule: 'H H/4 * * *'
+          schedule: ''
+          sg-mode: 'stateful'
+      - upstream-stateful-snat-conntrack:
+          schedule: ''
           sg-mode: 'stateful'
+          odl-snat-mode: 'conntrack'
       - upstream-learn:
-          schedule: 'H H * * *'
+          schedule: ''
           sg-mode: 'learn'
       - gate-learn:
           schedule: ''
           testplan: '{project}-{topology}-tempest-openstack.txt'
 
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
 
     openstack:
-      - mitaka:
-          openstack-branch: 'stable/mitaka'
-          odl-ml2-branch: 'stable/mitaka'
-          openstack_system_image: 'CentOS 7 - devstack-mitaka - 20170314-2255'
       - newton:
           openstack-branch: 'stable/newton'
           odl-ml2-branch: 'stable/newton'
           odl-ml2-branch: 'stable/newton'
           odl-ml2-driver-version: 'v2'
           openstack_system_image: 'CentOS 7 - devstack-newton - 20170314-2256'
+      - ocata:
+          openstack-branch: 'stable/ocata'
+          odl-ml2-branch: 'stable/ocata'
+          odl-ml2-driver-version: 'v2'
+          openstack_system_image: 'CentOS 7 - devstack-newton - 20170314-2256'
 
     security-group-mode: '{sg-mode}'
 
 - project:
-    name: netvirt-csit-multi-site-openstack-integration
+    name: netvirt-csit-extensions-site-openstack-integration
     jobs:
       - '{project}-csit-{topology}-openstack-{openstack}-{functionality}-{stream}'
 
     project: 'netvirt'
 
     topology:
-      - 2site-1node:
-          openstack_system_count: 6
-          odl_system_count: 2
+      - 1node:
+          openstack_system_count: 3
+          odl_system_count: 1
           enable-haproxy: 'no'
-          install-features: 'odl-netvirt-openstack,odl-netvirt-federation'
-          num-openstack-sites: 2
-      - 2site-3node:
-          openstack_system_count: 8
-          odl_system_count: 6
-          enable-haproxy: 'yes'
-          install-features: 'odl-jolokia,odl-netvirt-openstack,odl-netvirt-federation'
-          num-openstack-sites: 2
-
-    testplan: '{project}-{topology}-openstack.txt'
+          install-features: 'odl-netvirt-sfc'
 
     functionality:
-      - upstream-stateful:
-          schedule: 'H H * * *'
-          sg-mode: 'stateful'
-      - upstream-learn:
-          schedule: 'H H * * *'
-          sg-mode: 'learn'
+      - extensions-sfc:
+          schedule: ''
+          enable-openstack-plugins: 'networking-odl,networking-sfc'
+          testplan: '{project}-extensions-sfc.txt'
 
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
-      - boron:
-          branch: 'stable/boron'
+      - carbon:
+          branch: 'stable/carbon'
           jre: 'openjdk8'
+          karaf-version: karaf3
 
     openstack:
       - newton-nodl-v2:
           odl-ml2-driver-version: 'v2'
           openstack_system_image: 'CentOS 7 - devstack-newton - 20170314-2256'
 
-    security-group-mode: '{sg-mode}'
+    security-group-mode: 'stateful'
index 73a0c9f085696b99881947bbcaea8e24bcdc413b..c2665f0dcee1e138fab8b09d66889308b81cc750 100644 (file)
@@ -5,21 +5,27 @@
       - 'netvirt-daily-full-integration-{stream}'
 
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
+          jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
           jdk: openjdk8
           jdks:
             - openjdk8
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jdk: openjdk8
           jdks:
             - openjdk8
+          karaf-version: karaf3
       - beryllium:
           branch: 'stable/beryllium'
           jdk: openjdk8
           jdks:
             - openjdk8
+          karaf-version: karaf3
 
     project: 'netvirt'
     archive-artifacts: '*.log **/target/surefire-reports/*.txt'
           build-timeout: '{build-timeout}'
 
     triggers:
-      - timed: '@midnight'
       - gerrit:
           server-name: '{server-name}'
           trigger-on:
index 81fb82606564e83d2654b40bb4011eb62ab547a6..7390064d9db0fdb9d91a3b0101004a4a71e4b1c7 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
-          branch: 'master'
-          jre: 'openjdk8'
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
index fdfcba380531d780d886ee9ef551881e866ae1d3..e72b2ade41ca51ca913d5315588327b25e5961f9 100644 (file)
           schedule: ''
 
     stream:
-      - carbon:
-          branch: 'master'
-          jre: 'openjdk8'
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     openstack:
-      - mitaka:
-          openstack-branch: 'stable/mitaka'
-          odl-ml2-branch: 'stable/mitaka'
-          openstack_system_image: 'CentOS 7 - devstack-mitaka - 20170314-2255'
       - newton:
           openstack-branch: 'stable/newton'
           odl-ml2-branch: 'stable/newton'
           odl-ml2-branch: 'stable/newton'
           odl-ml2-driver-version: 'v2'
           openstack_system_image: 'CentOS 7 - devstack-newton - 20170314-2256'
+      - ocata:
+          openstack-branch: 'stable/ocata'
+          odl-ml2-branch: 'stable/ocata'
+          odl-ml2-driver-version: 'v2'
+          openstack_system_image: 'CentOS 7 - devstack-newton - 20170314-2256'
 
     public-bridge: 'br-ex'
index 45df5bbfb8521580753f50c2d3ce7c279e93c9a8..c1edd3842de9929cf28f35c138c5203d87e274b0 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
-          branch: 'master'
-          jre: 'openjdk8'
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
index 154224933ef697a6bc282d55501370d3d7f391f3..bbc9318acd7efcaee7e248cbd640602cf4e76e8e 100644 (file)
@@ -9,13 +9,17 @@
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jdk: 'openjdk8'
-
+      - carbon:
+          branch: 'stable/carbon'
+          jdk: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jdk: 'openjdk8'
+          karaf-version: karaf3
 
     feature:
       - legacy:
@@ -38,9 +42,6 @@
       - cluster-current:
           csit-list: >
               netvirt-csit-3node-openstack-newton-nodl-v2-gate-stateful-{stream}
-      - mitaka-current:
-          csit-list: >
-              netvirt-csit-1node-openstack-mitaka-gate-stateful-{stream}
       - nodl-v1-current:
           csit-list: >
               netvirt-csit-1node-openstack-newton-gate-stateful-{stream}
@@ -53,3 +54,6 @@
       - transparent-current:
           csit-list: >
               netvirt-csit-1node-openstack-newton-nodl-v2-gate-transparent-{stream}
+      - snat-conntrack:
+          csit-list: >
+              netvirt-csit-1node-openstack-newton-upstream-stateful-snat-conntrack-{stream}
index 292f3cce90c118070bd8e06653e4f9b7bdb3a32a..e2a79df84bd021e23b47dd5ae738e32ba114bdf3 100644 (file)
@@ -1,4 +1,38 @@
 ---
+- project:
+    name: netvirt-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-distribution3-check-nitrogen'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-validate-autorelease-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'netvirt'
+    project-name: 'netvirt'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'netvirt-settings'
+    mvn-goals: 'clean install'
+    mvn-opts: '-Xmx2048m -XX:MaxPermSize=512m'
+    dependencies: >
+        genius-merge-{stream},
+        neutron-merge-{stream},
+        openflowjava-merge-{stream},
+        openflowplugin-merge-{stream},
+        ovsdb-merge-{stream},
+        sfc-merge-{stream}
+    email-upstream: '[genius] [netvirt] [neutron] [openflowjava] [openflowplugin] [ovsdb] [sfc]'
+    archive-artifacts: ''
+
 - project:
     name: netvirt-carbon
     jobs:
@@ -12,7 +46,8 @@
     stream: carbon
     project: 'netvirt'
     project-name: 'netvirt'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -46,6 +81,7 @@
     project: 'netvirt'
     project-name: 'netvirt'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
     project: 'netvirt'
     project-name: 'netvirt'
     branch: 'stable/beryllium'
+    karaf-version: karaf3
     jdk: openjdk7
     jdks:
       - openjdk7
 - project:
     name: netvirt-vpp
     jobs:
-      - '{project-name}-distribution-check-{stream}'
-      - '{project-name}-merge-{stream}'
       - '{project-name}-verify-{stream}-{maven}-{jdks}'
 
     stream: vpp
     project: 'netvirt'
     project-name: 'netvirt'
     branch: 'topic/vpp'
+    karaf-version: karaf3
     distribution_branch: 'master'
     jdk: openjdk8
     jdks:
     mvn-settings: 'netvirt-settings'
     mvn-goals: 'clean install'
     mvn-opts: '-Xmx2048m -XX:MaxPermSize=512m'
-    dependencies: >
-        genius-merge-{stream},
-        neutron-merge-{stream},
-        openflowjava-merge-{stream},
-        openflowplugin-merge-{stream},
-        ovsdb-merge-{stream},
-        sfc-merge-{stream}
-    email-upstream: '[genius] [netvirt] [neutron] [openflowjava] [openflowplugin] [ovsdb] [sfc]'
+    dependencies:
+    email-upstream: '[netvirt]'
     archive-artifacts: ''
index c775346fb49060763eebb256ad629e4cf0b5144c..4f44276fe95d323933628be23f36b4d6db825fa6 100644 (file)
@@ -1,4 +1,33 @@
 ---
+- project:
+    name: neutron-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-distribution3-check-nitrogen'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-validate-autorelease-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'neutron'
+    project-name: 'neutron'
+    build-timeout: 60
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'neutron-settings'
+    mvn-goals: 'clean install'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: 'odlparent-merge-{stream},aaa-merge-{stream}'
+    email-upstream: '[neutron] [odlparent] [aaa]'
+    archive-artifacts: ''
+
 - project:
     name: neutron-carbon
     jobs:
@@ -13,7 +42,8 @@
     project: 'neutron'
     project-name: 'neutron'
     build-timeout: 60
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -41,6 +71,7 @@
     project: 'neutron'
     project-name: 'neutron'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -68,6 +99,7 @@
     project: 'neutron'
     project-name: 'neutron'
     branch: 'stable/beryllium'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
index 444967990a0f8ddf365de321c0ae07192ae8b592..b34994c21dc9a0f9a14a4014bacc45fcada430ed 100644 (file)
@@ -1,4 +1,32 @@
 ---
+- project:
+    name: next-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-distribution3-check-nitrogen'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-validate-autorelease-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'next'
+    project-name: 'next'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'next-settings'
+    mvn-goals: 'clean install'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: ''
+    email-upstream: '[next]'
+    archive-artifacts: ''
+
 - project:
     name: next-carbon
     jobs:
@@ -12,7 +40,8 @@
     stream: carbon
     project: 'next'
     project-name: 'next'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -40,6 +69,7 @@
     project: 'next'
     project-name: 'next'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -67,6 +97,7 @@
     project: 'next'
     project-name: 'next'
     branch: 'stable/beryllium'
+    karaf-version: karaf3
     jdk: openjdk7
     jdks:
       - openjdk7
index 962eddf5a5943cf750ba665d6d769dc29f4afdf8..3f92dc6c45305260c84a91ef9a2d9939e36341fe 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
index 29c1fc387fc8d98eaf9959c14c8d1f5ee3bcc108..61ef22ebf0c857b31131abf2891e72c031697b65 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
index db0e5fcd8b0a13dace540dbf4f342ad4965671ac..3ec53dc2e9ff8244f788f67bfa9f5be2116571ee 100644 (file)
@@ -1,4 +1,32 @@
 ---
+- project:
+    name: nic-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-distribution3-check-nitrogen'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-validate-autorelease-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'nic'
+    project-name: 'nic'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'nic-settings'
+    mvn-goals: 'clean install'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: 'vtn-merge-{stream},groupbasedpolicy-merge-{stream}'
+    email-upstream: '[nic] [vtn] [groupbasedpolicy]'
+    archive-artifacts: ''
+
 - project:
     name: nic-carbon
     jobs:
@@ -12,7 +40,8 @@
     stream: carbon
     project: 'nic'
     project-name: 'nic'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -40,6 +69,7 @@
     project: 'nic'
     project-name: 'nic'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -67,6 +97,7 @@
     project: 'nic'
     project-name: 'nic'
     branch: 'stable/beryllium'
+    karaf-version: karaf3
     jdk: openjdk7
     jdks:
       - openjdk7
index a0a5acdbbaa88bdd1041a0b29fc1a605d35dd085..c9a7d8fe783fc53f21ed18c53fa7790fe42129f3 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
 
     install:
       - only:
index 300a8fb1f263971940a0948da5afec55f9cbb1ca..ea00461e84903d2ff92f1b7a9c79499071be3acc 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
 
     install:
       - only:
index c7e45b2ea6f637610d9b108a557e52091bdb450d..7a766aefba43ba27f5ac19ca1fe8058819a4dbaf 100644 (file)
@@ -1,4 +1,32 @@
 ---
+- project:
+    name: ocpplugin-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-distribution3-check-nitrogen'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-validate-autorelease-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'ocpplugin'
+    project-name: 'ocpplugin'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'ocpplugin-settings'
+    mvn-goals: 'clean install'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: 'odlparent-merge-{stream},yangtools-merge-{stream},controller-merge-{stream}'
+    email-upstream: '[ocpplugin] [odlparent] [yangtools] [controller]'
+    archive-artifacts: ''
+
 - project:
     name: ocpplugin-carbon
     jobs:
@@ -12,7 +40,8 @@
     stream: carbon
     project: 'ocpplugin'
     project-name: 'ocpplugin'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -40,6 +69,7 @@
     project: 'ocpplugin'
     project-name: 'ocpplugin'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
index 6e84bea1f63391a8bc07aa892620b3fa1a717a1f..7076499bd90d133452dfc71bcf7d313acef69b44 100644 (file)
@@ -1,4 +1,33 @@
 ---
+- project:
+    name: odlparent-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-distribution3-check-nitrogen'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-validate-autorelease-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+      - '{project-name}-verify-tox-{stream}'
+
+    stream: nitrogen
+    project: 'odlparent'
+    project-name: 'odlparent'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'odlparent-settings'
+    mvn-goals: 'clean install'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: ''
+    email-upstream: '[odlparent]'
+    archive-artifacts: ''
+
 - project:
     name: odlparent-carbon
     jobs:
@@ -13,7 +42,8 @@
     stream: carbon
     project: 'odlparent'
     project-name: 'odlparent'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -41,6 +71,7 @@
     project: 'odlparent'
     project-name: 'odlparent'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -68,6 +99,7 @@
     project: 'odlparent'
     project-name: 'odlparent'
     branch: 'stable/beryllium'
+    karaf-version: karaf3
     jdk: openjdk7
     jdks:
       - openjdk7
index b1fdc626f80da17e7c9e7146d60ec61ea3e6324d..b8222a6a0c60f6c83c53d53d27276324c0562920 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
index 7796a8c695e8e043aa66518db416a9865ce86855..d78a9bef35fa936baf09c8b7a700c496a97917e6 100644 (file)
@@ -1,4 +1,32 @@
 ---
+- project:
+    name: of-config-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-distribution3-check-nitrogen'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-validate-autorelease-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'of-config'
+    project-name: 'of-config'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'of-config-settings'
+    mvn-goals: 'clean install'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: netconf-merge-{stream}'
+    email-upstream: '[of-config] [netconf]'
+    archive-artifacts: ''
+
 - project:
     name: of-config-carbon
     jobs:
@@ -12,7 +40,8 @@
     stream: carbon
     project: 'of-config'
     project-name: 'of-config'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -40,6 +69,7 @@
     project: 'of-config'
     project-name: 'of-config'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -67,6 +97,7 @@
     project: 'of-config'
     project-name: 'of-config'
     branch: 'stable/beryllium'
+    karaf-version: karaf3
     jdk: openjdk7
     jdks:
       - openjdk7
index ccd0d86c4f4181f6dadee5fd7179dc23a2843df4..ca6bcac41c9b1f0ee584792740ef2ae8eb623d2d 100644 (file)
@@ -1,4 +1,29 @@
 ---
+- project:
+    name: circuitsw-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'ofextensions/circuitsw'
+    project-name: 'circuitsw'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'ofextensions-circuitsw-settings'
+    mvn-goals: 'clean install'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: ''
+    email-upstream: '[circuitsw]'
+    archive-artifacts: ''
+
 - project:
     name: circuitsw-carbon
     jobs:
@@ -10,7 +35,7 @@
     stream: carbon
     project: 'ofextensions/circuitsw'
     project-name: 'circuitsw'
-    branch: 'master'
+    branch: 'stable/carbon'
     jdk: openjdk8
     jdks:
       - openjdk8
index db2390bdf1c42ecdb717479f81f90b334722900e..d99938b3444dbbc09a741e9dc4305eba0c4334f9 100644 (file)
@@ -26,20 +26,49 @@ for silo in releng sandbox; do
     sleep 1  # Need to sleep for 1 second otherwise next line causes script to stall
     ACTIVE_BUILDS=(${ACTIVE_BUILDS[@]} $( \
         jq -r '.computer[].executors[].currentExecutable.url' "${silo}_builds.json" \
-        | grep -v null | awk -F'/' '{print $6 "-" $7}'))
+        | grep -v null | awk -F'/' '{print $4 "-" $6 "-" $7}'))
 done
 
 ##########################
 ## DELETE UNUSED STACKS ##
 ##########################
-# Search for stacks taht are not in use by either releng or sandbox silos and
+# Search for stacks that are not in use by either releng or sandbox silos and
 # delete them.
-for stack in "${OS_STACKS[@]}"; do
-    if [[ "${ACTIVE_BUILDS[@]}" =~ $stack ]]; then
+for STACK_NAME in "${OS_STACKS[@]}"; do
+    STACK_STATUS=$(openstack stack show -f json -c "stack_status" "$STACK_NAME" | jq -r '."stack_status"')
+    if [[ "${ACTIVE_BUILDS[@]}" =~ $STACK_NAME ]]; then
         # No need to delete stacks if there exists an active build for them
         continue
     else
-        echo "Deleting orphaned stack: $stack"
-        openstack stack delete --yes "$stack"
+        OS_STATUS=$(openstack stack show -f json -c stack_status "$stack" | jq -r '.stack_status')
+        case "$OS_STATUS" in
+            DELETE_IN_PROGRESS)
+                echo "skipping delete, $stack is already DELETE in progress."
+                continue
+            ;;
+            DELETE_FAILED)
+                echo "Stack delete failed, trying to stack abandon now."
+                # stack abandon does not work on RS, therefore requires acquiring a token
+                # and using http delete method to abondon DELETE_FAILED stacks
+                # Todo: remove the change once RS fixes the issue upstream
+                # openstack stack abandon "$STACK_NAME"
+                STACK_ID=$(openstack stack show -f json -c "id" "$STACK_NAME" | jq -r '."id"')
+                TOKEN=$(openstack token issue -f json -c id | jq -r '.id')
+                curl -si -X DELETE -H "Content-Type: application/json" -H "Accept: application/json"\
+                    -H "x-auth-token: $TOKEN"\
+                    "https://dfw.orchestration.api.rackspacecloud.com/v1/904885/stacks/$STACK_NAME/$STACK_ID/abandon"
+                STACK_SHOW=$(openstack stack show "$STACK_NAME")
+                echo "$STACK_SHOW"
+                continue
+            ;;
+            CREATE_COMPLETE|CREATE_FAILED)
+                echo "Deleting orphaned stack: $stack"
+                openstack stack delete --yes "$stack"
+                continue
+            ;;
+            *)
+                continue
+            ;;
+        esac
     fi
 done
index 9d49887547e572786b2a1630f122963cde9303ab..9e0266ea96977eb38d1dee1d2fef3c9ad1dac91c 100644 (file)
@@ -1,4 +1,9 @@
 #!/bin/bash
+
+# upgrade git-review to a version that will have the --reviewers option. existing minion
+# image has a version that does not have it.
+sudo pip install git-review --upgrade
+
 # shellcheck disable=SC1083
 CHANGE_ID=$(ssh -p 29418 "jenkins-$SILO@git.opendaylight.org" gerrit query \
                limit:1 owner:self is:open project:{project} \
@@ -19,4 +24,4 @@ git remote add gerrit "ssh://jenkins-$SILO@git.opendaylight.org:29418/releng/bui
 # Don't fail the build if this command fails because it's possible that there
 # is no changes since last update.
 # shellcheck disable=SC1083
-git review --yes -t {gerrit-topic} || true
+git review --yes -t {gerrit-topic} --reviewers jluhrsen@redhat.com || true
index bb411f54e44943bab51cbf96e4e782bfebc14120..18766ea46c27ce506db3e83c10af25a7a68356aa 100644 (file)
@@ -47,7 +47,15 @@ for try in $(seq $STACK_RETRIES); do
                     echo "$j: $STACK_SHOW"
                     if [[ $STACK_SHOW == *"DELETE_FAILED"* ]]; then
                         echo "stack delete failed. trying to stack abandon now"
-                        openstack stack abandon "$STACK_NAME"
+                        # stack abandon does not work on RS, therefore requires acquiring a token
+                        # and using http delete method to abondon DELETE_FAILED stacks
+                        # Todo: remove the change once RS fixes the issue upstream
+                        # openstack stack abandon "$STACK_NAME"
+                        STACK_ID=$(openstack stack show -f json -c "id" "$STACK_NAME" | jq -r '."id"')
+                        TOKEN=$(openstack token issue -f json -c id | jq -r '.id')
+                        curl -si -X DELETE -H "Content-Type: application/json" -H "Accept: application/json"\
+                            -H "x-auth-token: $TOKEN"\
+                            "https://dfw.orchestration.api.rackspacecloud.com/v1/904885/stacks/$STACK_NAME/$STACK_ID/abandon"
                         STACK_SHOW=$(openstack stack show "$STACK_NAME")
                         echo "$STACK_SHOW"
                     fi
@@ -70,7 +78,10 @@ for try in $(seq $STACK_RETRIES); do
             ;;
             *)
                 echo "Unexpected status: $OS_STATUS"
-                exit 1
+                # DO NOT exit on unexpected status. Rackspace sometimes returns unexpected status
+                # before returning an expected status. Just print the message and loop until we have
+                # a confirmed state or timeout.
+                # exit 1
             ;;
         esac
     done
index 5108ae5b425fc5fe2d79e87a52b3bac28a05b1e2..9485b8bb10691a28ff4bd9f83cfd969f9832657b 100644 (file)
@@ -1,4 +1,32 @@
 ---
+- project:
+    name: openflowjava-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-distribution3-check-nitrogen'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-validate-autorelease-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'openflowjava'
+    project-name: 'openflowjava'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'openflowjava-settings'
+    mvn-goals: 'clean install'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: 'odlparent-merge-{stream},yangtools-merge-{stream},controller-merge-{stream}'
+    email-upstream: '[openflowjava] [odlparent] [yangtools] [controller]'
+    archive-artifacts: ''
+
 - project:
     name: openflowjava-carbon
     jobs:
@@ -12,7 +40,8 @@
     stream: carbon
     project: 'openflowjava'
     project-name: 'openflowjava'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -40,6 +69,7 @@
     project: 'openflowjava'
     project-name: 'openflowjava'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -67,6 +97,7 @@
     project: 'openflowjava'
     project-name: 'openflowjava'
     branch: 'stable/beryllium'
+    karaf-version: karaf3
     jdk: openjdk7
     jdks:
       - openjdk7
index 20b399517a59f59befc85fea4bbc464d1fa8cd48..f4278fb72e61783d7353b0e72f62eb8d8c97d01e 100644 (file)
@@ -15,6 +15,7 @@
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
index ba8917f44c231b981c0980576de2a11c274b60eb..747beac833f031464ab4ab0cfddf8f1a4ee092d4 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
 
     install:
       - only:
index b3f5f21202c56d01da705b4e6afcbd7b395438ed..95e6917af6c8e2761fc0cbccad661806c6ac73a3 100644 (file)
@@ -15,6 +15,7 @@
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk8'
+          karaf-version: karaf3
 
     install:
       - only:
index d5d9eff14a04a046794e36162bd95f9f9084ee97..3d751e6ec69c4ec9c858d6aa07ce73a5bf3c2ac9 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
 
     install:
       - only:
index 857cc22a84c42b60a4f20e4107cfc759dafee21d..baf8cf05ae446aa76d6fe9b285fe6baa0aca7d11 100644 (file)
@@ -15,6 +15,7 @@
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk8'
+          karaf-version: karaf3
 
     install:
       - only:
index 5bfe2e28b32a7cd22e8aaf852c79d52156e58544..8400e9bd909683641414659c2469fc029acbd0a3 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
 
     install:
       - only:
index e5d7ea1dd887766fe96ffb82ae2d953c971636ce..9c01b85e797af0973023d5fada57086933736f91 100644 (file)
@@ -15,6 +15,7 @@
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
index a0ebbad819751740e612b9861fc23a8a3a9c0c0e..bf5df91ad5ec880b31614d8c99b9b23f95003855 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
 
     install:
       - only:
index c6a78b1e8b11a9d55cd99a7b5d8bee28fddf0c02..d2aca6b9770b6bb55b310d4b53be9cd48431613a 100644 (file)
@@ -15,6 +15,7 @@
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
index ee61b31bdd81b4dd12738d44898a9baea1c3555c..b308f19335230cd314215a9bed043580170324de 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
 
     install:
       - only:
index a93fbbbcd5c286492d575a12087f86584c038efb..29d2077453b17b9f82ebe5964858d5ec842d4748 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
 
     install:
       - only:
index dfd7c749f1828c3acdd6ea3cdfeb274ba25ee65e..1b29b0b1e377db1cac47b873e148b04ed26143e0 100644 (file)
@@ -15,6 +15,7 @@
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
index 45e0c6b3d9f5c64365e5bad3ee0dfb6430cb7765..deba1fa0636ac502d4df5dd82920b9c21cf0c2a4 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
 
     install:
       - only:
index 92e477044fc9929c9439edd57a7e0dccdb3555ec..ac1a48a78c2b1743e13ace25b0b5b9c7320290e8 100644 (file)
@@ -15,6 +15,7 @@
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
index 4f2804e214e59ec55fc217b2682124dd99ccc5d7..f5a2f9c0525031b2d1e8ad3567532b814e906628 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
 
     install:
       - only:
index 790b7153ee8b2eb28e37c575caea2c3eaa1fd4e6..70049cd05556c45b44cc90b00df9d34f7e659d92 100644 (file)
@@ -16,6 +16,7 @@
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
index 6ecd77dc013c00faa78597b7bd350ac9d103dd98..2305d82752e5285d31953f51e419cab25a55a5da 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
 
     install:
       - only:
index 9d2d02a4ba173c2a6db3723b163f268533302971..4345cf522214cb1d960fc75384c4abeaa7a33881 100644 (file)
@@ -15,6 +15,7 @@
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk8'
+          karaf-version: karaf3
 
     install:
       - only:
index 7fe6ed19de7eef3152a082b3c92874679c899184..5a93945e0251dc71f5d1ac58664b2e45d68284cc 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
 
     install:
       - only:
index 6d8c5988427d1b8b6d4dccbd9d4db251c2cb9e18..2a5daf2cbb141657bbdc8892c111dda3b7734ac9 100644 (file)
@@ -15,6 +15,7 @@
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk8'
+          karaf-version: karaf3
 
     install:
       - only:
index 3b0b342dcd13f239dbce9d1ca8fc3b1574e9dedd..b7381d7820085e2a3362fff6b257b21cc08bd5cc 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
 
     install:
       - only:
index 5dfec9d0e6fe6c8aa70de93ccfedf92f3c506628..bcc131407f5b14120cf34db93a96fbe89936993c 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
 
     install:
       - only:
index 90c9585cfaeae0b8088f8a3915bb3cd65a6f4aae..8d77c05e74334c24f113163f0ebb948faa80dcc7 100644 (file)
@@ -15,6 +15,7 @@
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
index 2e7c2a625af63e8798b9361debdb8b79028a079a..ac59b4f0979404b1ea46ed440b6f1f15241318db 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
 
     install:
       - only:
index 0301398677f63ad644fcd55b5535cc6047e397e5..9bd657d8c7354bb141b309af53694cfe1f57a991 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
 
     install:
       - only:
index 74b50e5d69f54acb3e82dc11d41e54410997b55e..ffc19f45f2ccf3adc27d5f844639e9dafab323e0 100644 (file)
@@ -15,6 +15,7 @@
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
index 68703fc769e310a56b6426c252288a385983e02b..f35f5af711f64f81aa0174ad0a417b1de7d0a169 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
 
     install:
       - only:
index f71e99fd893887f9f8b56bb395a08a37d803bc70..72e28894d68c635a58447350d734d7c6c0d85cf3 100644 (file)
@@ -15,6 +15,7 @@
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
index 685664a617bc55fb74b32ed55429e1ebec5d8ecf..7e936dd370d7899d499f7dd7d9d67d572ec2612b 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
 
     install:
       - only:
index 034eced4f5067de3f1ea9327ee42a46b2f8f81bd..3dcfffb4059e962697b56dcc426334bb4a375104 100644 (file)
@@ -9,12 +9,17 @@
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jdk: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jdk: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jdk: 'openjdk8'
+          karaf-version: karaf3
 
     feature:
       - core:
index 9723455e099d48700b61f8c4891643323ff2d327..084bb62740843cbed2162f98a96507696531d8af 100644 (file)
@@ -1,4 +1,36 @@
 ---
+- project:
+    name: openflowplugin-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-distribution3-check-nitrogen'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-validate-autorelease-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'openflowplugin'
+    project-name: 'openflowplugin'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'openflowplugin-settings'
+    mvn-goals: 'clean install javadoc:aggregate'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: >
+        odlparent-merge-{stream},
+        yangtools-merge-{stream},
+        controller-merge-{stream},
+        openflowjava-merge-{stream}
+    email-upstream: '[openflowplugin] [odlparent] [yangtools] [controller] [openflowjava]'
+    archive-artifacts: 'model/*/target/site/**'
+
 - project:
     name: openflowplugin-carbon
     jobs:
@@ -12,7 +44,8 @@
     stream: carbon
     project: 'openflowplugin'
     project-name: 'openflowplugin'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -44,6 +77,7 @@
     project: 'openflowplugin'
     project-name: 'openflowplugin'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
     project: 'openflowplugin'
     project-name: 'openflowplugin'
     branch: 'stable/beryllium'
+    karaf-version: karaf3
     jdk: openjdk7
     jdks:
       - openjdk7
index aad0b09e6d6d0693d9eeabf05b6bf8182c7fd98c..a952b8a7bf9ec84d4fcf8933bcc92ec63c148bc0 100644 (file)
@@ -6,9 +6,12 @@
       - 'opflex-merge-{stream}'
 
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jdk: openjdk8
+      - carbon:
+          branch: 'stable/carbon'
+          jdk: openjdk8
       - boron:
           branch: 'stable/boron'
           jdk: openjdk8
index a932a9c848d4206b03033eedc14036eeb3f2b7bb..a962234065f7c1b663e08528f0dbdacbd509ddb8 100644 (file)
@@ -7,7 +7,7 @@
       - 'opflex-openvswitch_tgz-{stream}'
 
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           libuv-build: v1
           libuv-scm: v2
           rapidjson-scm: v2
           openvswitch-build: v2
           openvswitch-scm: v2
+      - carbon:
+          branch: 'stable/carbon'
+          libuv-build: v1
+          libuv-scm: v2
+          rapidjson-build: v1
+          rapidjson-scm: v2
+          openvswitch-build: v2
+          openvswitch-scm: v2
       - boron:
           branch: 'stable/boron'
           libuv-build: v1
index 1608c00b6cf7076ad561cb852e9fc0a9da4c4d6d..974c83fd05e776f753e5a22d1b9537264bccb45e 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
index 142e5e28d92cae773d3f22d8ae13fe7bd0c4da0b..a55e9f8d067e53d912ce545ae3747eeccf8d7697 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
index f0eaa9946906a9d19a9152c055849482925f4d27..87fee427ed361f89e18d70e13a404d6937df21f1 100644 (file)
@@ -5,21 +5,27 @@
       - 'ovsdb-daily-full-integration-{stream}'
 
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
+          jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
           jdk: openjdk8
           jdks:
             - openjdk8
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jdk: openjdk8
           jdks:
             - openjdk8
+          karaf-version: karaf3
       - beryllium:
           branch: 'stable/beryllium'
           jdk: openjdk8
           jdks:
             - openjdk8
+          karaf-version: karaf3
 
     project: 'ovsdb'
     archive-artifacts: '*.log'
index 53fca673095ae8b55679f7cb98598cde1616074b..b5b92f83fdc02ec0b0a2012d5e3578af671c76ee 100644 (file)
@@ -8,12 +8,17 @@
     project: 'ovsdb'
 
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jdk: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jdk: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jdk: 'openjdk8'
+          karaf-version: karaf3
 
     feature:
       - genius:
index bdbafe4d2ba63bf31416cad17c49b5f83d75e647..bc243cd2fc4cf4967408c9d3ee3cc608cee19fbc 100644 (file)
@@ -1,4 +1,32 @@
 ---
+- project:
+    name: ovsdb-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-distribution3-check-nitrogen'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-validate-autorelease-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'ovsdb'
+    project-name: 'ovsdb'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'ovsdb-settings'
+    mvn-goals: 'clean install'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: 'odlparent-merge-{stream},controller-merge-{stream},yangtools-merge-{stream}'
+    email-upstream: '[ovsdb] [odlparent] [controller] [yangtools]'
+    archive-artifacts: ''
+
 - project:
     name: ovsdb-carbon
     jobs:
@@ -12,7 +40,8 @@
     stream: carbon
     project: 'ovsdb'
     project-name: 'ovsdb'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -40,6 +69,7 @@
     project: 'ovsdb'
     project-name: 'ovsdb'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -67,6 +97,7 @@
     project: 'ovsdb'
     project-name: 'ovsdb'
     branch: 'stable/beryllium'
+    karaf-version: karaf3
     jdk: openjdk7
     jdks:
       - openjdk7
index ee99286b542e65b7a1e6b4d865b3f8a8aa761968..e8fcab79adfc9b6dc12a9e15ebc793be496a12f6 100644 (file)
@@ -19,6 +19,5 @@ download_url="${{DOWNLOAD_URL//zip/tar.gz}}"
 
 # Build release specified by build params
 "$WORKSPACE/packaging/rpm/build.py" --download_url "$download_url" \
-                                  --changelog_date "$CHANGELOG_DATE" \
                                   --changelog_name "$CHANGELOG_NAME" \
                                   --changelog_email "$CHANGELOG_EMAIL"
index f77e7806ab154a15bf22f0c7cd5dcf96a8f947fa..31c0dcfc64387241edc0db811a9b63dcc4ddcba5 100644 (file)
@@ -11,6 +11,11 @@ virtualenv deb_build
 source deb_build/bin/activate
 pip install --upgrade pip
 
+# Wait for any background apt processes to finish
+# There seems to be a backgroud apt process that locks /var/lib/dpkg/lock
+# and causes our apt commands to fail.
+while pgrep apt > /dev/null; do sleep 1; done
+
 # Install latest ansible
 sudo apt-add-repository ppa:ansible/ansible
 sudo apt-get update
index 22930fa1713f7b2506a36a7c66ff7c3d50bfc8cc..2b22fd541cfcb80b56e95d15a82997e7277162cf 100644 (file)
@@ -6,13 +6,22 @@
 #   -o pipefail: Fail on errors in scripts this calls, give stacktrace
 set -ex -o pipefail
 
+# Wait for any background apt processes to finish
+# There seems to be a backgroud apt process that locks /var/lib/dpkg/lock
+# and causes our apt commands to fail.
+while pgrep apt > /dev/null; do sleep 1; done
+
 # Install ODL from .deb link or .repo url
-if [[ $URL == *.deb ]]
+if [[ $PACKAGE == *.deb ]]
 then
-  sudo apt-get install -y "$URL"
-elif [[ $URL == ppa:* ]]
+  # shellcheck disable=SC2154
+  pkg_basename="${{PACKAGE##*/}}"
+  # NB: Apt can't install directly from URL, so need this intermediary file
+  curl -o "$pkg_basename" "$PACKAGE"
+  sudo dpkg --install ./"$pkg_basename"
+elif [[ $PACKAGE == ppa:* ]]
 then
-  sudo add-apt-repository "$REPO_FILE"
+  sudo add-apt-repository "$PACKAGE"
   sudo apt-get update
   sudo apt-get install -y opendaylight
 else
index cb015679bb539f54699ed6963cbb1ce00e2ac30c..22b151176cf080fbe0e1c90d5ed2424acdbb12f3 100644 (file)
@@ -9,12 +9,8 @@ set -ex -o pipefail
 # Adapted from puppet-opendaylight/Vagrantfile
 # https://github.com/dfarrell07/puppet-opendaylight/blob/master/Vagrantfile
 
-# Update Int/Pack's puppet-opendaylight submodule to latest master
-pushd "$WORKSPACE/packaging"
-git submodule init
-git submodule update --remote
-
 # Install system-wide dependencies
+# TODO: Are all of these still needed?
 sudo yum install -y ruby-devel gcc-c++ zlib-devel patch redhat-rpm-config make rubygems
 
 # Install RVM to help build recent version of Ruby
@@ -22,9 +18,12 @@ sudo yum install -y ruby-devel gcc-c++ zlib-devel patch redhat-rpm-config make r
 gpg2 --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3
 curl -L get.rvm.io | bash -s stable
 # Expected by RVM, seems required to make RVM functions (`rvm use`) available
+# Silence absurdly verbose rvm output by temporally not echoing commands
+set +x
 # shellcheck disable=SC1090
 source "$HOME/.rvm/scripts/rvm"
 rvm install 2.4.0
+set -x
 ruby --version
 # This has to be done as a login shell to get rvm fns
 # https://rvm.io/support/faq#what-shell-login-means-bash-l
@@ -35,9 +34,12 @@ ruby --version
 # Install gems dependencies of puppet-opendaylight via Bundler
 gem install bundler
 echo export PATH="\\$PATH:/usr/local/bin" >> "$HOME/.bashrc"
-pushd "$WORKSPACE/packaging/puppet/puppet-opendaylight"
+# RVM's loaded functions print lots of output at this step, silence them
+set +x
+pushd "$WORKSPACE/puppet"
+set -x
 bundle install
 bundle update
 
-# Quick+important tests: Linting, rspec and Beaker on CentOS container tests
-bundle exec rake sanity
+# Execute set of tests passed as param from job
+bundle exec rake "$TEST_SUITE"
index 1ebe85531cd2f33a7762b14ffeaa07986101a28e..bb321a8a553c9ee38abc197487c4dd7986d60e71 100644 (file)
@@ -18,7 +18,9 @@ then
   sudo yum install -y "$URL"
 elif [[ $URL == *.repo ]]
 then
-  sudo curl --silent -o "$REPO_FILE" "$URL"
+  # shellcheck disable=SC2154
+  repo_file="${{URL##*/}}"
+  sudo curl --silent -o /etc/yum.repos.d/"$repo_file" "$URL"
   sudo yum install -y opendaylight
 else
   echo "URL is not a link to .rpm or .repo"
index 16cfd77beb6ad50bcad9075e9dccc5c4ad333dd9..86f2139cc4bf80c66dcabd7804ccac79758f7702 100644 (file)
@@ -4,13 +4,12 @@
     project-name: packaging
 
     jobs:
-      - '{project-name}-verify-python-{stream}'
+      - '{project-name}-verify-tox-{stream}'
       - 'packaging-build-rpm-{stream}'
       - 'packaging-build-rpm-snap-{stream}'
       - 'packaging-build-deb-{stream}'
       - 'packaging-test-rpm-{stream}'
       - 'packaging-test-deb-{stream}'
-      - 'packaging-test-puppet-{stream}'
       - 'packaging-test-ansible-rpm-{stream}'
       - 'packaging-test-ansible-deb-{stream}'
 
       - master:
           branch: 'master'
 
-- job-template:
-    name: 'packaging-test-puppet-{stream}'
-
-    node: centos7-docker-2c-4g
-
-    project-type: freestyle
-
-    properties:
-      - opendaylight-infra-properties:
-          build-days-to-keep: 7
-
-    parameters:
-      - opendaylight-infra-parameters:
-          os-cloud: '{os-cloud}'
-          project: '{project}'
-          branch: '{branch}'
-          refspec: 'refs/heads/{branch}'
-          artifacts: '{archive-artifacts}'
-
-    scm:
-      - integration-gerrit-scm:
-          basedir: 'packaging'
-          refspec: '$GERRIT_REFSPEC'
-          branch: 'master'
-
-    wrappers:
-      - opendaylight-infra-wrappers:
-          build-timeout: '{build-timeout}'
-
-    builders:
-      - shell: !include-raw: include-raw-test-puppet.sh
-
-    triggers:
-      - timed: '@daily'
-
 - job-template:
     name: 'packaging-build-rpm-{stream}'
 
       - string:
           name: DOWNLOAD_URL
           # yamllint disable-line rule:line-length
-          default: 'https://nexus.opendaylight.org/content/repositories/public/org/opendaylight/integration/distribution-karaf/0.5.2-Boron/distribution-karaf-0.5.2-Boron.tar.gz'
+          default: 'https://nexus.opendaylight.org/content/repositories/opendaylight.release/org/opendaylight/integration/distribution-karaf/0.5.3-Boron-SR3/distribution-karaf-0.5.3-Boron-SR3.tar.gz'
           description: 'URL to ODL tarball artifact to repackage into RPM'
-      - string:
-          name: CHANGELOG_DATE
-          default: 'Sun Aug 25 1991'
-          description: 'Date this RPM was defined'
       - string:
           name: CHANGELOG_NAME
           default: 'Jenkins'
           # yamllint disable-line rule:line-length
           default: 'https://raw.githubusercontent.com/opendaylight/integration-packaging/master/rpm/example_repo_configs/opendaylight-52-release.repo'
           description: 'Link to .repo or .rpm file'
-      - string:
-          name: REPO_FILE
-          default: '/etc/yum.repos.d/opendaylight-52-release.repo'
-          description: 'Name of the .repo file'
 
     scm:
       - integration-gerrit-scm:
           refspec: 'refs/heads/{branch}'
           artifacts: '{archive-artifacts}'
       - string:
-          name: URL
+          name: PACKAGE
           # yamllint disable-line rule:line-length
-          default: 'http://download.opensuse.org/repositories/home:/akshitajha/xUbuntu_16.04/all/opendaylight_5.0.0-1_all.deb'
-          description: 'Link to .deb file'
-      - string:
-          name: REPO_FILE
-          default: 'ppa:odl-team/boron'
-          description: 'Name of the PPA repository'
+          default: 'http://ftp.gwdg.de/pub/opensuse/repositories/home:/akshitajha/xUbuntu_16.04/all/opendaylight_5.0.0-1_all.deb'
+          description: 'Link to .deb file or name of custom PPA repo (ppa:odl-team/boron)'
 
     scm:
       - integration-gerrit-scm:
           description: 'OpenDaylight major (element) version number to build'
       - string:
           name: VERSION_MINOR
-          default: '2'
+          default: '3'
           description: 'OpenDaylight minor (SR) version number to build'
       - string:
           name: VERSION_PATCH
           description: 'Version of ODL systemd unitfile to download and package in ODL .deb'
       - string:
           name: CODENAME
-          default: 'Boron-SR2'
+          default: 'Boron-SR3'
           description: 'Elemental codename for the ODL release, including SR if applicable'
       - string:
           name: DOWNLOAD_URL
           # yamllint disable-line rule:line-length
-          default: 'https://nexus.opendaylight.org/content/repositories/public/org/opendaylight/integration/distribution-karaf/0.5.2-Boron/distribution-karaf-0.5.2-Boron.tar.gz'
+          default: 'https://nexus.opendaylight.org/content/repositories/opendaylight.release/org/opendaylight/integration/distribution-karaf/0.5.3-Boron-SR3/distribution-karaf-0.5.3-Boron-SR3.tar.gz'
           description: 'URL to ODL tarball artifact to repackage into .deb'
       - string:
           name: JAVA_VERSION
diff --git a/jjb/packaging/puppet.yaml b/jjb/packaging/puppet.yaml
new file mode 100644 (file)
index 0000000..5f5e046
--- /dev/null
@@ -0,0 +1,113 @@
+---
+- project:
+    name: puppet
+    project-name: puppet
+
+    jobs:
+      - '{project-name}-verify-tox-{stream}'
+      - 'puppet-test-sanity-{stream}'
+      - 'puppet-test-full-{stream}'
+
+    project: 'integration/packaging/puppet-opendaylight'
+
+    stream:
+      - master:
+          branch: 'master'
+
+- job-template:
+    name: 'puppet-test-sanity-{stream}'
+
+    node: centos7-docker-2c-4g
+
+    project-type: freestyle
+
+    properties:
+      - opendaylight-infra-properties:
+          build-days-to-keep: 7
+
+    parameters:
+      - opendaylight-infra-parameters:
+          os-cloud: '{os-cloud}'
+          project: '{project}'
+          branch: '{branch}'
+          refspec: 'refs/heads/{branch}'
+          artifacts: '{archive-artifacts}'
+      - string:
+          name: TEST_SUITE
+          default: 'sanity'
+          description: 'Set of tests to execute, Rakefile task'
+
+    scm:
+      - integration-gerrit-scm:
+          basedir: '{project-name}'
+          refspec: '$GERRIT_REFSPEC'
+          branch: '{branch}'
+
+    wrappers:
+      - opendaylight-infra-wrappers:
+          build-timeout: '{build-timeout}'
+
+    builders:
+      - shell: !include-raw: include-raw-test-puppet.sh
+
+    triggers:
+      - gerrit-trigger-patch-submitted:
+          server: '{server-name}'
+          project: '{project}'
+          branch: '{branch}'
+          files: '**'
+
+- job-template:
+    name: 'puppet-test-full-{stream}'
+
+    node: centos7-docker-2c-4g
+
+    project-type: freestyle
+
+    properties:
+      - opendaylight-infra-properties:
+          build-days-to-keep: 7
+
+    parameters:
+      - opendaylight-infra-parameters:
+          os-cloud: '{os-cloud}'
+          project: '{project}'
+          branch: '{branch}'
+          refspec: 'refs/heads/{branch}'
+          artifacts: '{archive-artifacts}'
+      - string:
+          name: TEST_SUITE
+          default: 'acceptance_dock'
+          description: 'Set of tests to execute, Rakefile task'
+
+    scm:
+      - integration-gerrit-scm:
+          basedir: '{project-name}'
+          refspec: '$GERRIT_REFSPEC'
+          branch: '{branch}'
+
+    wrappers:
+      - opendaylight-infra-wrappers:
+          build-timeout: '{build-timeout}'
+
+    builders:
+      - shell: !include-raw: include-raw-test-puppet.sh
+
+    triggers:
+      - timed: '@daily'
+      - gerrit:
+          server-name: '{server-name}'
+          trigger-on:
+            - comment-added-contains-event:
+                comment-contains-value: 'puppet-test-full'
+          projects:
+            - project-compare-type: 'ANT'
+              project-pattern: '{project}'
+              branches:
+                - branch-compare-type: 'ANT'
+                  branch-pattern: '**/{branch}'
+          skip-vote:
+            successful: true
+            failed: true
+            unstable: true
+            notbuilt: true
index fda260c8475dc4af461370c243f947b9cc8c97c2..e6941bf99e022a22585c6fd0210cd439fe4b2360 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
index b97ce62d7cd42c104bc73fe2b094a698c63203c1..4157f74d39e507b2e184aa36ebd24954d9a42a86 100644 (file)
@@ -1,4 +1,32 @@
 ---
+- project:
+    name: packetcable-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-distribution3-check-nitrogen'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-validate-autorelease-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'packetcable'
+    project-name: 'packetcable'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'packetcable-settings'
+    mvn-goals: 'clean install'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: ''
+    email-upstream: '[packetcable]'
+    archive-artifacts: ''
+
 - project:
     name: packetcable-carbon
     jobs:
@@ -12,7 +40,8 @@
     stream: carbon
     project: 'packetcable'
     project-name: 'packetcable'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -40,6 +69,7 @@
     project: 'packetcable'
     project-name: 'packetcable'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -67,6 +97,7 @@
     project: 'packetcable'
     project-name: 'packetcable'
     branch: 'stable/beryllium'
+    karaf-version: karaf3
     jdk: openjdk7
     jdks:
       - openjdk7
index e77a78d6bcbaf663f2a0f8d8c4ef1e92381afae2..c84352ed9ec79406870c48a7727e68187f845d07 100644 (file)
@@ -1,4 +1,30 @@
 ---
+- project:
+    name: persistence-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'persistence'
+    project-name: 'persistence'
+    branch: 'master'
+    jdk: openjdk7
+    jdks:
+      - openjdk7
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'persistence-settings'
+    mvn-goals: 'clean install'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: ''
+    email-upstream: '[persistence]'
+    archive-artifacts: ''
+
 - project:
     name: persistence-carbon
     jobs:
@@ -10,7 +36,8 @@
     stream: carbon
     project: 'persistence'
     project-name: 'persistence'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk7
     jdks:
       - openjdk7
@@ -37,6 +64,7 @@
     project: 'persistence'
     project-name: 'persistence'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk7
     jdks:
       - openjdk7
@@ -63,6 +91,7 @@
     project: 'persistence'
     project-name: 'persistence'
     branch: 'stable/beryllium'
+    karaf-version: karaf3
     jdk: openjdk7
     jdks:
       - openjdk7
index 9bbe150b4ca8dc129e7b458e7c6dd9bb3d55ce6e..e9c317abee5f9b4d37478fdde3aecd8770e43387 100644 (file)
@@ -4,36 +4,46 @@
 - defaults:
     name: global
 
+    karaf-version: karaf4
     build-days-to-keep: 30
 
     # Timeout in minutes
     build-timeout: 360
     build-node: centos7-java-builder-2c-8g
-    num-openstack-sites: 1
 
     email-recipients: 'jenkins@lists.opendaylight.org'
     odl-ml2-driver-repo: 'https://github.com/openstack/networking-odl'
     networking-l2gw-repo: 'http://git.openstack.org/openstack/networking-l2gw'
     devstack-kubernetes-plugin-repo: 'https://github.com/openstack/kuryr-kubernetes'
     devstack-lbaas-plugin-repo: 'https://github.com/openstack/neutron-lbaas'
+    devstack-networking-sfc-plugin-repo: 'https://github.com/openstack/networking-sfc'
+
+    # lf-infra defaults
+    jenkins-ssh-credential: opendaylight-jenkins-ssh
+    gerrit-server-name: OpenDaylight
+    # server-name is deprecated, use gerrit-server-name moving forward.
     server-name: 'OpenDaylight'
     git-url: 'ssh://jenkins-$SILO@git.opendaylight.org:29418'
-    ipsec-vxlan-tunnels-enabled: 'no'
 
-    public-bridge: 'br-physnet1'
-    public-physical-network: 'physnet1'
-    odl-enable-l3: 'yes'
+    # defaults for parameters installing openstack for csit jobs
+    create-initial-networks: 'False'
     disable-odl-l3-service-plugin: 'no'
-    odl-ml2-driver-version: 'v1'
-    odl-ml2-port-binding: 'network-topology'
-    enable-openstack-plugins: 'networking-odl'
-    enable-openstack-services: 'q-svc,q-dhcp,q-meta,n-cauth,tempest'
     disable-openstack-services: 'swift,cinder,n-net,q-vpn,n-cpu'
     enable-networking-l2gw: 'no'
+    enable-openstack-plugins: 'networking-odl'
+    enable-openstack-services: 'q-svc,q-dhcp,q-meta,n-cauth,tempest'
+    ipsec-vxlan-tunnels-enabled: 'no'
     lbaas-service-provider: ''
-    create-initial-networks: 'False'
-    tenant-network-type: 'vxlan'
+    num-openstack-sites: 1
+    odl-enable-l3: 'yes'
+    odl-ml2-driver-version: 'v1'
+    odl-ml2-port-binding: 'network-topology'
+    public-bridge: 'br-physnet1'
+    public-physical-network: 'physnet1'
     security-group-mode: 'none'
+    tenant-network-type: 'vxlan'
+    odl-sfc-driver: 'odl'
+    odl-snat-mode: 'controller'
 
     # openstack-infra-parameters defaults
     archive-artifacts: ''
@@ -42,7 +52,7 @@
     os-cloud: rackspace
 
     # Distribution bundle URL
-    bundleurl: 'last'
+    bundle-url: 'last'
 
     # CSIT images configuration
     stack-template: csit-2-instance-type.yaml
 
     # Data for csit-verify jobs
     # Branch for "last" version detection
-    verify-branch: 'stable/boron'
+    verify-branch: stable/boron
     # Value for ODL_STREAM
-    verify-stream: 'boron'
-    verify-jdkversion: 'openjdk8'
+    verify-stream: boron
+    verify-karaf-version: karaf3
+    verify-jdkversion: openjdk8
 
     # Maven / Java
     jdk: 'openjdk8'
     10-inclusion-flag: 'off'
     10-exclude-value: ''
 
+    # Manual CSIT job lists used by sanity or periodic in nature.
+    csit-high-frequency-list-carbon: >
+        netvirt-csit-1node-openstack-newton-nodl-v2-upstream-stateful-carbon
+    csit-sanity-list-nitrogen: >
+        openflowplugin-csit-1node-sanity-only-nitrogen
+    csit-sanity-list-carbon: >
+        openflowplugin-csit-1node-sanity-only-carbon
+    csit-sanity-list-boron: >
+        openflowplugin-csit-1node-sanity-only-boron
+    csit-weekly-list-nitrogen: >
+        controller-csit-1node-notifications-longevity-only-nitrogen,
+        controller-csit-3node-drb-partnheal-longevity-only-nitrogen,
+        controller-csit-3node-drb-precedence-longevity-only-nitrogen,
+        controller-csit-3node-ddb-expl-lead-movement-longevity-only-nitrogen,
+        bgpcep-csit-3node-bgpclustering-longevity-only-nitrogen,
+        distribution-deploy-nitrogen,
+        distribution-offline-nitrogen,
+        openflowplugin-csit-1node-periodic-longevity-only-nitrogen
+    csit-weekly-list-carbon: >
+        controller-csit-1node-notifications-longevity-only-carbon,
+        controller-csit-3node-cs-chasing-leader-longevity-only-carbon,
+        controller-csit-3node-cs-partnheal-longevity-only-carbon,
+        controller-csit-3node-drb-partnheal-longevity-only-carbon,
+        controller-csit-3node-drb-precedence-longevity-only-carbon,
+        controller-csit-3node-ddb-expl-lead-movement-longevity-only-carbon,
+        bgpcep-csit-3node-bgpclustering-longevity-only-carbon,
+        distribution-deploy-carbon,
+        distribution-offline-carbon,
+        distribution4-deploy-carbon,
+        distribution4-offline-carbon,
+        openflowplugin-csit-1node-periodic-longevity-only-carbon
+    csit-weekly-list-boron: >
+        distribution-deploy-boron,
+        distribution-offline-boron,
+        openflowplugin-csit-1node-periodic-longevity-only-boron
+
     # CSIT Test List Variables
-    # Space seperated strings to exclude from CSIT lists
+    # Space seperated strings to exclude from
+    # auto generated CSIT job lists
     csit-list-blacklist: 'longevity gate sanity'
+
     # Auto Generated CSIT job lists used
-    # in integration-distribution-test jobs
+    # in regular distribution test jobs
+    # DO NOT EDIT NEXT LINES MANUALLY
+    csit-list-nitrogen: >
+        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,
+        capwap-csit-1node-ac-all-nitrogen,
+        capwap-csit-1node-ac-only-nitrogen,
+        centinel-csit-1node-basic-all-nitrogen,
+        centinel-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,
+        didm-csit-1node-discovery-only-nitrogen,
+        distribution-csit-1node-userfeatures-all-nitrogen,
+        distribution-csit-1node-userfeatures-only-nitrogen,
+        distribution-csit4-1node-userfeatures-all-nitrogen,
+        distribution-csit4-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,
+        iotdm-csit-1node-basic-all-nitrogen,
+        iotdm-csit-1node-basic-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,
+        lacp-csit-1node-lacp-all-nitrogen,
+        lacp-csit-1node-lacp-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-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,
+        netide-csit-1node-basic-all-nitrogen,
+        netide-csit-1node-basic-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-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,
+        nic-csit-1node-basic-all-nitrogen,
+        nic-csit-1node-basic-only-nitrogen,
+        nic-csit-1node-vtnrenderer-all-nitrogen,
+        nic-csit-1node-vtnrenderer-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,
+        openflowplugin-csit-1node-periodic-restconf-perf-daily-only-nitrogen,
+        openflowplugin-csit-1node-periodic-scale-stats-collection-daily-frs-only-nitrogen,
+        openflowplugin-csit-1node-periodic-scale-stats-collection-daily-only-nitrogen,
+        openflowplugin-csit-1node-periodic-sw-scalability-daily-only-nitrogen,
+        openflowplugin-csit-1node-scalability-only-nitrogen,
+        openflowplugin-csit-3node-clustering-only-nitrogen,
+        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,
+        tsdr-csit-1node-cassandra-datastore-only-nitrogen,
+        tsdr-csit-1node-elasticsearch-datastore-only-nitrogen,
+        tsdr-csit-1node-hbase-datastore-all-nitrogen,
+        tsdr-csit-1node-hbase-datastore-only-nitrogen,
+        tsdr-csit-1node-hsqldb-datastore-all-nitrogen,
+        tsdr-csit-1node-hsqldb-datastore-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
     csit-list-carbon: >
         aaa-csit-1node-authn-all-carbon,
         aaa-csit-1node-authn-only-carbon,
         aaa-csit-1node-tls-only-carbon,
         alto-csit-1node-setup-all-carbon,
         alto-csit-1node-setup-only-carbon,
-        armoury-csit-1node-basic-all-carbon,
-        armoury-csit-1node-basic-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,
         didm-csit-1node-discovery-only-carbon,
         distribution-csit-1node-userfeatures-all-carbon,
         distribution-csit-1node-userfeatures-only-carbon,
-        eman-csit-1node-model-all-carbon,
-        eman-csit-1node-model-only-carbon,
-        genius-csit-1node-genius-all-carbon,
-        genius-csit-1node-genius-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-liberty-openstack-carbon,
-        groupbasedpolicy-csit-1node-openstack-mitaka-openstack-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,
         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-mitaka-upstream-learn-carbon,
-        netvirt-csit-1node-openstack-mitaka-upstream-stateful-carbon,
-        netvirt-csit-1node-openstack-mitaka-upstream-transparent-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-3node-openstack-mitaka-upstream-learn-carbon,
-        netvirt-csit-3node-openstack-mitaka-upstream-stateful-carbon,
-        netvirt-csit-3node-openstack-mitaka-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-hwvtep-1node-openstack-mitaka-upstream-learn-carbon,
-        netvirt-csit-hwvtep-1node-openstack-mitaka-upstream-stateful-carbon,
-        netvirt-csit-hwvtep-1node-openstack-mitaka-upstream-transparent-carbon,
+        netvirt-csit-3node-openstack-ocata-upstream-learn-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-mitaka-upstream-learn-carbon,
-        netvirt-csit-hwvtep-3node-openstack-mitaka-upstream-stateful-carbon,
-        netvirt-csit-hwvtep-3node-openstack-mitaka-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-legacy-csit-1node-openstack-basic-all-carbon,
-        netvirt-legacy-csit-1node-openstack-basic-only-carbon,
-        netvirt-legacy-csit-1node-openstack-mitaka-upstream-carbon,
-        netvirt-legacy-csit-1node-openstack-newton-nodl-v2-upstream-carbon,
-        netvirt-legacy-csit-1node-openstack-newton-upstream-carbon,
-        netvirt-legacy-csit-3node-clustering-only-carbon,
-        netvirt-legacy-csit-3node-openstack-mitaka-upstream-carbon,
-        netvirt-legacy-csit-3node-openstack-newton-nodl-v2-upstream-carbon,
-        netvirt-legacy-csit-3node-openstack-newton-upstream-carbon,
         nic-csit-1node-basic-all-carbon,
         nic-csit-1node-basic-only-carbon,
         nic-csit-1node-vtnrenderer-all-carbon,
         openflowplugin-csit-1node-periodic-scale-stats-collection-daily-frs-only-carbon,
         openflowplugin-csit-1node-periodic-scale-stats-collection-daily-only-carbon,
         openflowplugin-csit-1node-periodic-sw-scalability-daily-only-carbon,
-        openflowplugin-csit-1node-sanity-only-carbon,
         openflowplugin-csit-1node-scalability-only-carbon,
         openflowplugin-csit-3node-clustering-only-carbon,
         openflowplugin-csit-3node-periodic-bulkomatic-clustering-daily-only-carbon,
         vtn-csit-1node-coordinator-only-carbon,
         vtn-csit-1node-manager-all-carbon,
         vtn-csit-1node-manager-only-carbon,
-        vtn-csit-1node-openstack-mitaka-neutron-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
-    csit-sanity-list-carbon: >
-        openflowplugin-csit-1node-sanity-only-carbon
-    csit-weekly-list-carbon: >
-        controller-csit-1node-notifications-longevity-only-carbon,
-        openflowplugin-csit-1node-periodic-longevity-only-carbon
     csit-list-boron: >
         aaa-csit-1node-authn-all-boron,
         aaa-csit-1node-authn-only-boron,
         aaa-csit-1node-idmlite-only-boron,
         alto-csit-1node-setup-all-boron,
         alto-csit-1node-setup-only-boron,
-        armoury-csit-1node-basic-all-boron,
-        armoury-csit-1node-basic-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,
         didm-csit-1node-discovery-only-boron,
         distribution-csit-1node-userfeatures-all-boron,
         distribution-csit-1node-userfeatures-only-boron,
-        eman-csit-1node-model-all-boron,
-        eman-csit-1node-model-only-boron,
-        genius-csit-1node-genius-all-boron,
-        genius-csit-1node-genius-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-liberty-openstack-boron,
-        groupbasedpolicy-csit-1node-openstack-mitaka-openstack-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,
         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-mitaka-upstream-learn-boron,
-        netvirt-csit-1node-openstack-mitaka-upstream-stateful-boron,
-        netvirt-csit-1node-openstack-mitaka-upstream-transparent-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,
         netvirt-csit-1node-openstack-newton-nodl-v2-upstream-transparent-boron,
         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-3node-openstack-mitaka-upstream-learn-boron,
-        netvirt-csit-3node-openstack-mitaka-upstream-stateful-boron,
-        netvirt-csit-3node-openstack-mitaka-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,
         netvirt-csit-3node-openstack-newton-nodl-v2-upstream-transparent-boron,
         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-hwvtep-1node-openstack-mitaka-upstream-learn-boron,
-        netvirt-csit-hwvtep-1node-openstack-mitaka-upstream-stateful-boron,
-        netvirt-csit-hwvtep-1node-openstack-mitaka-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,
         netvirt-csit-hwvtep-1node-openstack-newton-upstream-learn-boron,
         netvirt-csit-hwvtep-1node-openstack-newton-upstream-stateful-boron,
         netvirt-csit-hwvtep-1node-openstack-newton-upstream-transparent-boron,
-        netvirt-csit-hwvtep-3node-openstack-mitaka-upstream-learn-boron,
-        netvirt-csit-hwvtep-3node-openstack-mitaka-upstream-stateful-boron,
-        netvirt-csit-hwvtep-3node-openstack-mitaka-upstream-transparent-boron,
         netvirt-csit-hwvtep-3node-openstack-newton-nodl-v2-upstream-learn-boron,
         netvirt-csit-hwvtep-3node-openstack-newton-nodl-v2-upstream-stateful-boron,
         netvirt-csit-hwvtep-3node-openstack-newton-nodl-v2-upstream-transparent-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-mitaka-upstream-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,
         netvirt-legacy-csit-3node-clustering-only-boron,
-        netvirt-legacy-csit-3node-openstack-mitaka-upstream-boron,
         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,
         nic-csit-1node-vtnrenderer-all-boron,
         openflowplugin-csit-1node-periodic-scale-stats-collection-daily-frs-only-boron,
         openflowplugin-csit-1node-periodic-scale-stats-collection-daily-only-boron,
         openflowplugin-csit-1node-periodic-sw-scalability-daily-only-boron,
-        openflowplugin-csit-1node-sanity-only-boron,
         openflowplugin-csit-1node-scalability-only-boron,
         openflowplugin-csit-3node-clustering-only-boron,
         openflowplugin-csit-3node-periodic-bulkomatic-clustering-daily-only-boron,
         vtn-csit-1node-coordinator-only-boron,
         vtn-csit-1node-manager-all-boron,
         vtn-csit-1node-manager-only-boron,
-        vtn-csit-1node-openstack-mitaka-neutron-boron,
         vtn-csit-1node-openstack-newton-neutron-boron,
         vtn-csit-3node-manager-all-boron,
         vtn-csit-3node-manager-only-boron
-    csit-sanity-list-boron: >
-        openflowplugin-csit-1node-sanity-only-boron
-    csit-weekly-list-boron: >
-        openflowplugin-csit-1node-periodic-longevity-only-boron
     csit-list-beryllium: >
         aaa-csit-1node-authn-all-beryllium,
         aaa-csit-1node-authn-only-beryllium,
         aaa-csit-1node-idmlite-only-beryllium,
         alto-csit-1node-setup-all-beryllium,
         alto-csit-1node-setup-only-beryllium,
-        armoury-csit-1node-basic-all-beryllium,
-        armoury-csit-1node-basic-only-beryllium,
         bgpcep-csit-1node-periodic-bgp-ingest-all-beryllium,
         bgpcep-csit-1node-periodic-bgp-ingest-mixed-all-beryllium,
         bgpcep-csit-1node-periodic-bgp-ingest-mixed-only-beryllium,
         groupbasedpolicy-csit-1node-3-node-only-beryllium,
         groupbasedpolicy-csit-1node-6node-all-beryllium,
         groupbasedpolicy-csit-1node-6node-only-beryllium,
-        groupbasedpolicy-csit-1node-openstack-liberty-openstack-beryllium,
-        groupbasedpolicy-csit-1node-openstack-mitaka-openstack-beryllium,
+        groupbasedpolicy-csit-1node-openstack-newton-openstack-beryllium,
         groupbasedpolicy-csit-3node-clustering-all-beryllium,
         groupbasedpolicy-csit-3node-clustering-only-beryllium,
         l2switch-csit-1node-periodic-host-scalability-daily-only-beryllium,
         netconf-csit-1node-periodic-scale-only-beryllium,
         netconf-csit-1node-userfeatures-all-beryllium,
         netconf-csit-1node-userfeatures-only-beryllium,
-        netconf-csit-3node-cluster-stress-all-beryllium,
-        netconf-csit-3node-cluster-stress-only-beryllium,
         netconf-csit-3node-clustering-all-beryllium,
         netconf-csit-3node-clustering-only-beryllium,
         netconf-csit-3node-periodic-clustering-scale-all-beryllium,
         netide-csit-1node-basic-only-beryllium,
         netvirt-legacy-csit-1node-openstack-basic-all-beryllium,
         netvirt-legacy-csit-1node-openstack-basic-only-beryllium,
-        netvirt-legacy-csit-1node-openstack-mitaka-upstream-beryllium,
         netvirt-legacy-csit-1node-openstack-newton-nodl-v2-upstream-beryllium,
         netvirt-legacy-csit-1node-openstack-newton-upstream-beryllium,
+        netvirt-legacy-csit-1node-openstack-ocata-upstream-beryllium,
         netvirt-legacy-csit-3node-clustering-only-beryllium,
-        netvirt-legacy-csit-3node-openstack-mitaka-upstream-beryllium,
         netvirt-legacy-csit-3node-openstack-newton-nodl-v2-upstream-beryllium,
         netvirt-legacy-csit-3node-openstack-newton-upstream-beryllium,
+        netvirt-legacy-csit-3node-openstack-ocata-upstream-beryllium,
         nic-csit-1node-basic-all-beryllium,
         nic-csit-1node-basic-only-beryllium,
         nic-csit-1node-vtnrenderer-all-beryllium,
         vtn-csit-1node-coordinator-only-beryllium,
         vtn-csit-1node-manager-all-beryllium,
         vtn-csit-1node-manager-only-beryllium,
-        vtn-csit-1node-openstack-mitaka-neutron-beryllium,
         vtn-csit-1node-openstack-newton-neutron-beryllium
 # CSIT TESTS END SED MARKER
index ee76dcc62573a8f3cb9c8cfdffcd22f6c059e675..7fe94b94292015b18d36a1ca91d3c30afecbfed3 100644 (file)
@@ -2,10 +2,8 @@
 - project:
     name: builder-jobs
     jobs:
-      - 'builder-verify-jjb'
+      - '{project-name}-ci-jobs'
       - '{project-name}-verify-tox-{stream}'
-      - 'builder-merge'
-      - 'builder-weekly'
       - 'builder-check-poms'
       - 'builder-verify-packer'
       - 'builder-merge-packer-{platforms}-{templates}'
@@ -23,7 +21,6 @@
 
     templates:
       - devstack
-      - devstack-pre-pip-mitaka
       - devstack-pre-pip-newton
       - docker
       - gbp
@@ -43,8 +40,6 @@
         templates: java-builder
       - platforms: ubuntu-14.04
         templates: robot
-      - platforms: ubuntu-14.04
-        templates: devstack-pre-pip-mitaka
       - platforms: ubuntu-14.04
         templates: devstack-pre-pip-newton
       - platforms: ubuntu-14.04
@@ -57,8 +52,6 @@
         templates: java-builder
       - platforms: ubuntu-16.04
         templates: robot
-      - platforms: ubuntu-16.04
-        templates: devstack-pre-pip-mitaka
       - platforms: ubuntu-16.04
         templates: devstack-pre-pip-newton
       - platforms: ubuntu-16.04
     project-name: builder
     stream: master
     branch: master
+    build-node: centos7-java-builder-2c-4g
 
 - job-template:
-    name: builder-verify-jjb
-    node: centos7-java-builder-2c-4g
-    concurrent: true
-
-    project-type: freestyle
-
-    properties:
-      - opendaylight-infra-properties:
-          build-days-to-keep: 14
-
-    parameters:
-      - opendaylight-infra-parameters:
-          os-cloud: '{os-cloud}'
-          project: '{project}'
-          branch: '{branch}'
-          refspec: 'refs/heads/{branch}'
-          artifacts: '{archive-artifacts}'
-
-    scm:
-      - gerrit-trigger-scm:
-          refspec: '$GERRIT_REFSPEC'
-          choosing-strategy: 'gerrit'
-
-    wrappers:
-      - opendaylight-infra-wrappers:
-          build-timeout: '{build-timeout}'
-
-    triggers:
-      - gerrit-trigger-patch-submitted:
-          server: '{server-name}'
-          project: '{project}'
-          branch: '{branch}'
-          files: 'jjb/**'
-
-    builders:
-      - opendaylight-infra-jjbini
-      - shell: |
-          virtualenv $WORKSPACE/venv
-          source $WORKSPACE/venv/bin/activate
-          pip install --upgrade pip
-          pip install jenkins-job-builder
-          pip freeze
-          jenkins-jobs -l DEBUG test --recursive -o archives/job_output jjb/
-          gzip archives/job_output/*
-      - releng-check-unicode
-      - verify-gpg-signature
-
-    publishers:
-      - email-notification:
-          email-recipients: '{email-recipients}'
-          email-prefix: '[releng]'
-      - opendaylight-infra-shiplogs:
-          maven-version: 'mvn33'
-
-- job-template:
-    name: 'builder-merge'
+    name: builder-check-poms
     node: centos7-java-builder-2c-4g
 
-    # builder-merge job to run JJB update
-    #
-    # This job's purpose is to update all the JJB
-
     project-type: freestyle
 
     properties:
           refspec: 'refs/heads/{branch}'
           artifacts: '{archive-artifacts}'
 
-    scm:
-      - gerrit-trigger-scm:
-          refspec: ''
-          choosing-strategy: 'default'
-
     wrappers:
       - opendaylight-infra-wrappers:
           build-timeout: '{build-timeout}'
 
     triggers:
-      - gerrit:
-          server-name: '{server-name}'
-          trigger-on:
-            - change-merged-event
-            - comment-added-contains-event:
-                comment-contains-value: 'remerge'
-          projects:
-            - project-compare-type: 'ANT'
-              project-pattern: 'releng/builder'
-              branches:
-                - branch-compare-type: 'ANT'
-                  branch-pattern: '**/{branch}'
-              file-paths:
-                - compare-type: ANT
-                  pattern: jjb/**
+      - timed: 'H H * * 1'
 
     builders:
-      - opendaylight-infra-jjbini
-      - shell: |
-          virtualenv $WORKSPACE/venv
-          source $WORKSPACE/venv/bin/activate
-          pip install --upgrade pip
-          pip install jenkins-job-builder
-          pip freeze
-          jenkins-jobs --version
-          jenkins-jobs update --recursive --delete-old --workers 4 jjb/
+      - shell: !include-raw-escape: include-raw-check-poms.sh
 
     publishers:
       - email-notification:
           maven-version: 'mvn33'
 
 - job-template:
-    name: 'builder-weekly'
-    disabled: false
-    node: centos7-java-builder-2c-4g
-
-    # builder-weekly job to run JJB update weekly
-    #
-    # This job's purpose is to update all the JJB on a weekly (Sunday)
-    # basis with --flush-cache enabled to ensure jobs are okay
-
+    name: 'builder-delete-stale-stacks'
     project-type: freestyle
-
-    properties:
-      - opendaylight-infra-properties:
-          build-days-to-keep: 14
-
-    parameters:
-      - opendaylight-infra-parameters:
-          os-cloud: '{os-cloud}'
-          project: '{project}'
-          branch: '{branch}'
-          refspec: 'refs/heads/{branch}'
-          artifacts: '{archive-artifacts}'
-
-    scm:
-      - git-scm:
-          branch: '{branch}'
-
-    wrappers:
-      - opendaylight-infra-wrappers:
-          build-timeout: '{build-timeout}'
-
-    triggers:
-      - timed: 'H H * * 0'
-
-    builders:
-      - opendaylight-infra-jjbini
-      - shell: |
-          virtualenv $WORKSPACE/venv
-          source $WORKSPACE/venv/bin/activate
-          pip install --upgrade pip
-          pip install jenkins-job-builder
-          pip freeze
-          jenkins-jobs --flush-cache update --recursive --workers 4 jjb/
-
-    publishers:
-      - email-notification:
-          email-recipients: '{email-recipients}'
-          email-prefix: '[releng]'
-      - opendaylight-infra-shiplogs:
-          maven-version: 'mvn33'
-
-- job-template:
-    name: builder-check-poms
     node: centos7-java-builder-2c-4g
 
-    project-type: freestyle
-
     properties:
       - opendaylight-infra-properties:
-          build-days-to-keep: 14
+          build-days-to-keep: 7
 
     parameters:
       - opendaylight-infra-parameters:
       - opendaylight-infra-wrappers:
           build-timeout: '{build-timeout}'
 
-    triggers:
-      - timed: 'H H * * 1'
-
-    builders:
-      - shell: !include-raw-escape: include-raw-check-poms.sh
-
-    publishers:
-      - email-notification:
-          email-recipients: '{email-recipients}'
-          email-prefix: '[releng]'
-      - opendaylight-infra-shiplogs:
-          maven-version: 'mvn33'
-
-- job-template:
-    name: 'builder-delete-stale-stacks'
-    project-type: freestyle
-    node: centos7-java-builder-2c-4g
-
-    properties:
-      - opendaylight-infra-properties:
-          build-days-to-keep: 7
-
-    wrappers:
-      - opendaylight-infra-wrappers:
-          build-timeout: '{build-timeout}'
-
     triggers:
       # Attempt to clear up stacks every 30 mins in case we have orphaned stacks
       - timed: '0,30 * * * *'
 
     triggers:
       - reverse:
-          jobs: 'builder-merge'
+          jobs: 'builder-jjb-merge'
 
     builders:
       - shell: |
           git checkout -b auto-update-csit-jobs
+      - integration-list-jobs:
+          blacklist: '{csit-list-blacklist}'
+          search_string: "csit"
+          stream: "nitrogen"
+          jobs-filename: "csit_jobs_nitrogen.lst"
       - integration-list-jobs:
           blacklist: '{csit-list-blacklist}'
           search_string: "csit"
           search_string: "csit"
           stream: "beryllium"
           jobs-filename: "csit_jobs_beryllium.lst"
+      - integration-replace-block-text:
+          starting-regex: "'csit-list-nitrogen: >'"
+          ending-regex: "'csit-list-carbon: >'"
+          file-with-changes-to-insert: "'csit_jobs_nitrogen.lst'"
+          file-to-change: "'jjb/releng-defaults.yaml'"
       - integration-replace-block-text:
           starting-regex: "'csit-list-carbon: >'"
-          ending-regex: "'csit-weekly-list-carbon: >'"
+          ending-regex: "'csit-list-boron: >'"
           file-with-changes-to-insert: "'csit_jobs_carbon.lst'"
           file-to-change: "'jjb/releng-defaults.yaml'"
       - integration-replace-block-text:
index a6a58855be87f4815dfa355c6eb2fd92529b7d58..f7d78e20b77fd6311fc20fbd1b9bc5d88ee43bdb 100644 (file)
           name: OS_CLOUD
           default: '{os-cloud}'
           description: |
-              The name of a cloud configuration in clouds.yaml.
+              The name of a cloud configuration in clouds.yaml. OS_CLOUD is a
+              variable name that is significant to openstack client as a
+              environment variable. Please refer to the documentation for
+              further details.
               https://docs.openstack.org/developer/python-openstackclient/
 
 - parameter:
           default: ''
           description: 'csv list of patches in project:changeset format to build distribution with'
 
+- parameter:
+    name: run-test-parameter
+    parameters:
+      - string:
+          name: RUNTEST
+          default: '{run-test}'
+          description: 'Set true to run test after build'
+
 - parameter:
     name: distribution-branch-to-build-parameter
     parameters:
       - mask-passwords
       - config-file-provider:
           files:
+            - file-id: npmrc
+              target: '$HOME/.npmrc'
             - file-id: rackspace-heat
               target: '$HOME/.config/openstack/clouds.yaml'
       - timeout:
           export PACKER_LOG_PATH="packer-build.log" && \
                       packer.io build -color=false -var-file=$CLOUDENV \
                        -var-file=../packer/vars/{platform}.json \
+                       -parallel=false \
                        ../packer/templates/{template}.json
 
 - builder:
       - maven-target:
           maven-version: 'mvn33'
           pom: '{pom}'
-          goals: >
+          goals: |
               clean deploy dependency:tree
               -DoutputFile=dependency_tree.txt
-              -V -B -Pq
-              -Djenkins
+              -Pq
               -DaltDeploymentRepository=fake-nexus::default::file:///tmp/n/
-              -Dmaven.repo.local=/tmp/r
-              -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r
+              {mvn-opts}
           java-opts:
             - '-Xmx4096m -XX:MaxPermSize=1024m -Dmaven.compile.fork=true'
           settings: 'integration-settings'
       - maven-target:
           maven-version: 'mvn33'
           pom: '{dist-pom}'
-          goals: >
+          goals: |
               clean install dependency:tree
               -DoutputFile=dependency_tree.txt
-              -V -B -Pq
-              -Djenkins
-              -Dmaven.repo.local=/tmp/r
-              -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r
+              -Pq
+              {mvn-opts}
           java-opts:
             - '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
           settings: 'integration-settings'
       - maven-target:
           maven-version: 'mvn33'
           pom: '{dist-pom}'
-          goals: >
+          goals: |
               clean install dependency:tree
               -DoutputFile=dependency_tree.txt -s fake_remotes.xml
-              -V -B -Pq
+              -Pq
               -DskipTests=false
-              -Djenkins
-              -Dmaven.repo.local=/tmp/r
-              -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r
+              {mvn-opts}
           java-opts:
             - '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
index cc23be0219e43d6e2451f63c5aef9bade1e4d71d..80783eaa287c1143d882bce5f7d8d5f1d263c2ef 100644 (file)
       - opendaylight-infra-shiplogs:
           maven-version: 'mvn33'
 
-- job-template:
-    # Template: {project-name}-distribution-check-{stream}
-    # Goal: Build a patch and make sure the distribution can deploy with this change.
-    # Operation: This job template builds a patch, creates a distribution containing
-    #            the patch (making sure dependencies are specified),
-    #            and performs the distribution deploy test.
-
-    name: '{project-name}-distribution-check-{stream}'
-    disabled: false
-
-    project-type: freestyle
-    node: '{build-node}'
-    concurrent: true
-    jdk: '{jdk}'
-
-    properties:
-      - opendaylight-infra-properties:
-          build-days-to-keep: '{build-days-to-keep}'
-
-    parameters:
-      - opendaylight-infra-parameters:
-          os-cloud: '{os-cloud}'
-          project: '{project}'
-          branch: '{branch}'
-          refspec: 'refs/heads/{branch}'
-          artifacts: '{archive-artifacts} **/dependency_tree.txt **/target/surefire-reports/*-output.txt'
-      - integration-distribution-git-url:
-          git-url: '{git-url}'
-
-    scm:
-      - integration-gerrit-scm:
-          basedir: '$GERRIT_PROJECT'
-          refspec: '$GERRIT_REFSPEC'
-          branch: '{branch}'
-      - integration-distribution-scm:
-          branch: '{distribution_branch}'
-
-    wrappers:
-      - opendaylight-infra-wrappers:
-          # Distro-check jobs typically run within 10 - 30 minutes
-          # with 45 minutes being the occassional edge case.
-          # enforce a 60 minute limit to ensure stuck jobs get
-          # cleared up sooner.
-          build-timeout: '60'
-
-    triggers:
-      - gerrit-trigger-patch-submitted:
-          server: '{server-name}'
-          project: '{project}'
-          branch: '{branch}'
-          files: '**'
-
-    builders:
-      - distribution-check-wipe
-      - distribution-check-build-project:
-          pom: '$GERRIT_PROJECT/pom.xml'
-      - distribution-check-verify-groupid:
-          gerrit-project: '$GERRIT_PROJECT'
-      - distribution-check-download-deps:
-          dist-pom: 'distribution/pom.xml'
-      - distribution-check-delete-snapshots
-      - distribution-check-configure-remotes
-      - distribution-check-repeat-build:
-          dist-pom: 'distribution/pom.xml'
-      - integration-distribution-check
-
-    publishers:
-      - email-notification:
-          email-recipients: '{email-recipients}'
-          email-prefix: '[{project-name}]'
-      - postbuildscript:
-          builders:
-            - shell: |
-                #!/bin/bash
-                mkdir -p $WORKSPACE/archives
-                cp karaf*.log $WORKSPACE/archives
-          script-only-if-succeeded: false
-          script-only-if-failed: false
-          mark-unstable-if-failed: true
-      - archive:
-          artifacts: '*.zip'
-      - opendaylight-infra-shiplogs:
-          maven-version: 'mvn33'
-
 - job-template:
     name: '{project-name}-integration-{stream}'
 
     # TODO: Do we want to apply sophisticated checks as in *-distribution-check-*?
     maven:
       maven-name: 'mvn33'
-      goals: |
+      goals: >
           {mvn-goals}
           -Dmerge
           -Dstream={stream}
           settings-type: cfp
           global-settings: 'odl-global-settings'
           global-settings-type: cfp
-      - autorelease-sys-stats
 
     publishers:
       - email-notification:
index f3740a0572186dcd5eaa2bbf794f6613e51af8dc..37e2e66a0b7a9abd9faa9acf180c6e53c5f0efed 100644 (file)
@@ -1,4 +1,29 @@
 ---
+- project:
+    name: reservation-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'reservation'
+    project-name: 'reservation'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'reservation-settings'
+    mvn-goals: 'clean install'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: ''
+    email-upstream: '[reservation]'
+    archive-artifacts: ''
+
 - project:
     name: reservation-carbon
     jobs:
@@ -10,7 +35,8 @@
     stream: carbon
     project: 'reservation'
     project-name: 'reservation'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -36,6 +62,7 @@
     project: 'reservation'
     project-name: 'reservation'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -61,6 +88,7 @@
     project: 'reservation'
     project-name: 'reservation'
     branch: 'stable/beryllium'
+    karaf-version: karaf3
     jdk: openjdk7
     jdks:
       - openjdk7
index 513b1dbc1b6320e94e461848816f419326f2f325..8b31738bfa50ae14eace5fb8a55895d7249b384c 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
index 97219042bc4c28d236f3c095d888891db039d791..73ef1eed08880ce53485f1793fa0cb74eea0a092 100644 (file)
@@ -1,4 +1,32 @@
 ---
+- project:
+    name: sdninterfaceapp-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-distribution3-check-nitrogen'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-validate-autorelease-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'sdninterfaceapp'
+    project-name: 'sdninterfaceapp'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'sdninterfaceapp-settings'
+    mvn-goals: 'clean install'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: 'bgpcep-merge-{stream}'
+    email-upstream: '[sdninterfaceapp] [bgpcep]'
+    archive-artifacts: ''
+
 - project:
     name: sdninterfaceapp-carbon
     jobs:
@@ -12,7 +40,8 @@
     stream: carbon
     project: 'sdninterfaceapp'
     project-name: 'sdninterfaceapp'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -40,6 +69,7 @@
     project: 'sdninterfaceapp'
     project-name: 'sdninterfaceapp'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -67,6 +97,7 @@
     project: 'sdninterfaceapp'
     project-name: 'sdninterfaceapp'
     branch: 'stable/beryllium'
+    karaf-version: karaf3
     jdk: openjdk7
     jdks:
       - openjdk7
index 711de2c31dc0549c538d9e51b5865a2431f34747..ba3ee12c03df8883ff440f28628edb67b67b1df2 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
 
     install:
       - only:
index 2833782c3c7019e19dc4ba93fa4b4b94650ddc88..f6c8678c39ceadbea75bdd6bdcc299d2f8c9bb41 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
index f7aab46eda6b760e255579f71cfe8b870018966c..d52ce1081b89ee920652e6802c76a533368995ac 100644 (file)
@@ -9,9 +9,13 @@
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jdk: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jdk: 'openjdk8'
+          karaf-version: karaf3
 
     feature:
       - basic:
index d61f6b79baa4550a407f1c7f2159e343f178e1f3..ee2489e762cba06f221de852e310e298bb459f88 100644 (file)
@@ -7,8 +7,11 @@
     # stream:    release stream (eg. stable-boron or beryllium)
     # branch:    git branch (eg. stable/boron or master)
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
+          jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
       - boron:
           branch: 'stable/boron'
       - beryllium:
index 0816d98e2a42738ce7fe05742257c51b0004f27e..2c32dfe76eb87b053abf885cd601ec3e3eb954f7 100644 (file)
@@ -1,4 +1,32 @@
 ---
+- project:
+    name: sfc-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-distribution3-check-nitrogen'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-validate-autorelease-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'sfc'
+    project-name: 'sfc'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'sfc-settings'
+    mvn-goals: 'clean install'
+    mvn-opts: '-Xmx2048m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
+    dependencies: 'openflowplugin-merge-{stream},ovsdb-merge-{stream},lispflowmapping-merge-{stream}'
+    email-upstream: '[sfc] [openflowplugin] [ovsdb] [lispflowmapping]'
+    archive-artifacts: ''
+
 - project:
     name: sfc-carbon
     jobs:
@@ -12,7 +40,8 @@
     stream: carbon
     project: 'sfc'
     project-name: 'sfc'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -40,6 +69,7 @@
     project: 'sfc'
     project-name: 'sfc'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -67,6 +97,7 @@
     project: 'sfc'
     project-name: 'sfc'
     branch: 'stable/beryllium'
+    karaf-version: karaf3
     jdk: openjdk7
     jdks:
       - openjdk7
index fec71d89f20db94fb64f5f4fe4d3799be08ad526..13ca70d9c37d06c160ea06d98e807923b8beb37e 100644 (file)
@@ -1,4 +1,32 @@
 ---
+- project:
+    name: snbi-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-distribution3-check-nitrogen'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-validate-autorelease-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'snbi'
+    project-name: 'snbi'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'snbi-settings'
+    mvn-goals: 'clean install'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: ''
+    email-upstream: '[snbi]'
+    archive-artifacts: ''
+
 - project:
     name: snbi-carbon
     jobs:
@@ -12,7 +40,8 @@
     stream: carbon
     project: 'snbi'
     project-name: 'snbi'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -40,6 +69,7 @@
     project: 'snbi'
     project-name: 'snbi'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -68,6 +98,7 @@
     project: 'snbi'
     project-name: 'snbi'
     branch: 'stable/beryllium'
+    karaf-version: karaf3
     jdk: openjdk7
     jdks:
       - openjdk7
index e4d123d1b91dd1a036d22b39ef16a0158fc526db..720213d7ba6d707b6450ba061a0499508c311168 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
index 5503ffdd945eba8ddb4e75548ccb7960605626cb..44ddc07f249e9a1fe3387f448a172daa473d7987 100644 (file)
@@ -1,4 +1,32 @@
 ---
+- project:
+    name: snmp-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-distribution3-check-nitrogen'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-validate-autorelease-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'snmp'
+    project-name: 'snmp'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'snmp-settings'
+    mvn-goals: 'clean install'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: 'odlparent-merge-{stream}'
+    email-upstream: '[snmp] [odlparent]'
+    archive-artifacts: ''
+
 - project:
     name: snmp-carbon
     jobs:
@@ -12,7 +40,8 @@
     stream: carbon
     project: 'snmp'
     project-name: 'snmp'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -40,6 +69,7 @@
     project: 'snmp'
     project-name: 'snmp'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -67,6 +97,7 @@
     project: 'snmp'
     project-name: 'snmp'
     branch: 'stable/beryllium'
+    karaf-version: karaf3
     jdk: openjdk7
     jdks:
       - openjdk7
index fb444e2e3c98bfa42ba214ecc27496e41b7b8548..3cf225219fcbc433a5351b8dd3ab13a74653fa72 100644 (file)
@@ -1,4 +1,33 @@
 ---
+- project:
+    name: snmp4sdn-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-distribution3-check-nitrogen'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      # remove nitrogen validate job until SNMP4SDN is back in nitrogen
+      # - '{project-name}-validate-autorelease-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'snmp4sdn'
+    project-name: 'snmp4sdn'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'snmp4sdn-settings'
+    mvn-goals: 'clean install'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: 'odlparent-merge-{stream},controller-merge-{stream},yangtools-merge-{stream}'
+    email-upstream: '[snmp4sdn] [odlparent] [controller] [yangtools]'
+    archive-artifacts: ''
+
 - project:
     name: snmp4sdn-carbon
     jobs:
@@ -12,7 +41,8 @@
     stream: carbon
     project: 'snmp4sdn'
     project-name: 'snmp4sdn'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -40,6 +70,7 @@
     project: 'snmp4sdn'
     project-name: 'snmp4sdn'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -67,6 +98,7 @@
     project: 'snmp4sdn'
     project-name: 'snmp4sdn'
     branch: 'stable/beryllium'
+    karaf-version: karaf3
     jdk: openjdk7
     jdks:
       - openjdk7
index 414d668ad79d6c1b30f5e5a92ef6eb4e4ceb0c4b..8429fcdffe91a2309e9c49010d8dd7c1f039b9b9 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
index c32e756e87b9248b0086e4f0fe47713a726254fc..afd64a358f57fda459547ee870cd41d8a60c09e4 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
 
     install:
       - only:
index d0834f40a7647dda38b65bb91eefc6492f298610..b651009edc36bc5e68be8ec9a8b59590b27cb780 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
 
     install:
       - only:
index b634427c8b58e235df966a5ade7ff299f8f8d372..4d58157cf5033378dfcc2fb35c89061491707522 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
index 2a4081709e793dd2118fcded7065edc5107f1d84..5b1b39e2b17eba78e316f9510e9d5d92ee4945be 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
 
     install:
       - only:
index 577c418828aab015a5ff62a8fb6c627420686de0..25edbef3abdb8c3182126de46c2a364ce3985d54 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
index 31e894bc19f9aa80d9987914138cd04f07b79ab3..32152e1dddd66d203171512ac2f04895eb3e2686 100644 (file)
@@ -1,4 +1,32 @@
 ---
+- project:
+    name: sxp-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-distribution3-check-nitrogen'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-validate-autorelease-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'sxp'
+    project-name: 'sxp'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'sxp-settings'
+    mvn-goals: 'clean install'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: 'odlparent-merge-{stream},controller-merge-{stream},yangtools-merge-{stream}'
+    email-upstream: '[sxp] [odlparent] [controller] [yangtools]'
+    archive-artifacts: ''
+
 - project:
     name: sxp-carbon
     jobs:
@@ -12,7 +40,8 @@
     stream: carbon
     project: 'sxp'
     project-name: 'sxp'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -40,6 +69,7 @@
     project: 'sxp'
     project-name: 'sxp'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -67,6 +97,7 @@
     project: 'sxp'
     project-name: 'sxp'
     branch: 'stable/beryllium'
+    karaf-version: karaf3
     jdk: openjdk7
     jdks:
       - openjdk7
index c65b6919db4ed2a8765c0fb63adb1a0ffc15a5c0..db349c98c3a3747b62e55ac07c3f15c66dc77325 100644 (file)
@@ -1,4 +1,29 @@
 ---
+- project:
+    name: systemmetrics-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    project: 'systemmetrics'
+    project-name: 'systemmetrics'
+    stream: nitrogen
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'systemmetrics-settings'
+    mvn-goals: 'clean install -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: 'odlparent-merge-{stream},yangtools-merge-{stream},controller-merge-{stream}'
+    email-upstream: '[systemmetrics] [odlparent] [yangtools] [controller]'
+    archive-artifacts: ''
+
 - project:
     name: systemmetrics-carbon
     jobs:
@@ -10,7 +35,8 @@
     project: 'systemmetrics'
     project-name: 'systemmetrics'
     stream: carbon
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
index 33e543297ecf2f5d561b05e4bb3de0589e86024f..cd2bb78d2874ff5a9da3d2e3d1a17d1fd250d5c3 100644 (file)
@@ -1,4 +1,30 @@
 ---
+- project:
+    name: tcpmd5-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'tcpmd5'
+    project-name: 'tcpmd5'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'tcpmd5-settings'
+    mvn-goals: 'clean -DrepoBuild install javadoc:aggregate'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: 'odlparent-merge-{stream},yangtools-merge-{stream},controller-merge-{stream}'
+    email-upstream: '[tcpmd5] [odlparent] [yangtools] [controller]'
+    archive-artifacts: ''
+
 - project:
     name: tcpmd5-carbon
     jobs:
@@ -10,7 +36,8 @@
     stream: carbon
     project: 'tcpmd5'
     project-name: 'tcpmd5'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -37,6 +64,7 @@
     project: 'tcpmd5'
     project-name: 'tcpmd5'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -65,6 +93,7 @@
     project: 'tcpmd5'
     project-name: 'tcpmd5'
     branch: 'stable/beryllium'
+    karaf-version: karaf3
     jdk: openjdk7
     jdks:
       - openjdk7
index e93045fcee340ae5d41901871042e2b3b6c1b394..d8a8881f225a32a6f7f7e832dafe8ee890de9ce2 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
index 9177b5289a20f475d2685b455d33f63886e7f525..7ac5137e08155d3120ff422687d27c37396a14f5 100644 (file)
@@ -1,4 +1,32 @@
 ---
+- project:
+    name: topoprocessing-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-distribution3-check-nitrogen'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-validate-autorelease-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'topoprocessing'
+    project-name: 'topoprocessing'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'topoprocessing-settings'
+    mvn-goals: 'clean install'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: 'odlparent-merge-{stream},controller-merge-{stream},yangtools-merge-{stream}'
+    email-upstream: '[topoprocessing] [odlparent] [controller] [yangtools]'
+    archive-artifacts: ''
+
 - project:
     name: topoprocessing-carbon
     jobs:
@@ -12,7 +40,8 @@
     stream: carbon
     project: 'topoprocessing'
     project-name: 'topoprocessing'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -40,6 +69,7 @@
     project: 'topoprocessing'
     project-name: 'topoprocessing'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -68,6 +98,7 @@
     project: 'topoprocessing'
     project-name: 'topoprocessing'
     branch: 'stable/beryllium'
+    karaf-version: karaf3
     jdk: openjdk7
     jdks:
       - openjdk7
index 52502dc9b5808c4451d548094ad953ddc4cd18e2..b8fff6e13c4eb531db64ecc640821ba1cea05cbf 100644 (file)
@@ -1,4 +1,29 @@
 ---
+- project:
+    name: transportpce-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    project: 'transportpce'
+    project-name: 'transportpce'
+    stream: nitrogen
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'transportpce-settings'
+    mvn-goals: 'clean install -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: 'odlparent-merge-{stream},yangtools-merge-{stream},controller-merge-{stream}'
+    email-upstream: '[transportpce] [odlparent] [yangtools] [controller]'
+    archive-artifacts: ''
+
 - project:
     name: transportpce-carbon
     jobs:
@@ -10,7 +35,8 @@
     project: 'transportpce'
     project-name: 'transportpce'
     stream: carbon
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
index f9b18a572271e7ace5c5902a1bbe2ffaee807bd5..99c9dc322bd215b5fa373757e9b549709947cafa 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
index 974b5594aa5fe4c91be7b362f01d81c2cda79ad9..674b57b3f7cc65fbfd1070ddc1d9e743d6c1ece8 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
 
     install:
       - only:
index c3520844876e364bc53327c16483422c9bdc4644..bb99a172a347b3b899464a847a8c432511edfa24 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
index d34fb0494671617fa799c361f8575b286e3175a2..401c1e09f9758738bd272c4c3af12a8d6eac956e 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
index 095d98438d73b311624dc4bc798ac4f25e267ef8..b8e5cd3c8a02cd96112f609407742494a3524a80 100644 (file)
@@ -1,4 +1,32 @@
 ---
+- project:
+    name: tsdr-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-distribution3-check-nitrogen'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-validate-autorelease-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'tsdr'
+    project-name: 'tsdr'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'tsdr-settings'
+    mvn-goals: 'clean install javadoc:aggregate -DrepoBuild'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: ''
+    email-upstream: '[tsdr]'
+    archive-artifacts: ''
+
 - project:
     name: tsdr-carbon
     jobs:
@@ -12,7 +40,8 @@
     stream: carbon
     project: 'tsdr'
     project-name: 'tsdr'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -40,6 +69,7 @@
     project: 'tsdr'
     project-name: 'tsdr'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -67,6 +97,7 @@
     project: 'tsdr'
     project-name: 'tsdr'
     branch: 'stable/beryllium'
+    karaf-version: karaf3
     jdk: openjdk7
     jdks:
       - openjdk7
index 26b1598b32ae342e0cde4c38440d542b5648599f..5a9d13f93138e3d7357f9a7303b1ad7a2aa93c79 100644 (file)
@@ -1,4 +1,32 @@
 ---
+- project:
+    name: ttp-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-distribution3-check-nitrogen'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-validate-autorelease-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'ttp'
+    project-name: 'ttp'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'ttp-settings'
+    mvn-goals: 'clean install'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: 'odlparent-merge-{stream}'
+    email-upstream: '[ttp] [odlparent]'
+    archive-artifacts: ''
+
 - project:
     name: ttp-carbon
     jobs:
@@ -12,7 +40,8 @@
     stream: carbon
     project: 'ttp'
     project-name: 'ttp'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -40,6 +69,7 @@
     project: 'ttp'
     project-name: 'ttp'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -67,6 +97,7 @@
     project: 'ttp'
     project-name: 'ttp'
     branch: 'stable/beryllium'
+    karaf-version: karaf3
     jdk: openjdk7
     jdks:
       - openjdk7
index 1310c4f7170fd1a976569d65cd91c4ee7562e1ef..8a5067f273b16018e28fc87746a90a097289ff48 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
index d374f188c8eba5f45ab680bcb31de9335cec86d2..214c62042cb99cef545e50f4c5e49c1524ad45e4 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
 
     install:
       - only:
index 3f692b74a91cf4abefd7d0a4439c97e84df17694..d0df6b98d213f783e1b2ce2cef6f029b326447a1 100644 (file)
@@ -1,4 +1,32 @@
 ---
+- project:
+    name: unimgr-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-distribution3-check-nitrogen'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-validate-autorelease-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'unimgr'
+    project-name: 'unimgr'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'unimgr-settings'
+    mvn-goals: 'clean install'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: 'ovsdb-merge-{stream}'
+    email-upstream: '[unimgr] [ovsdb]'
+    archive-artifacts: ''
+
 - project:
     name: unimgr-carbon
     jobs:
@@ -12,7 +40,8 @@
     stream: carbon
     project: 'unimgr'
     project-name: 'unimgr'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -40,6 +69,7 @@
     project: 'unimgr'
     project-name: 'unimgr'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -68,6 +98,7 @@
     project: 'unimgr'
     project-name: 'unimgr'
     branch: 'stable/beryllium'
+    karaf-version: karaf3
     jdk: openjdk7
     jdks:
       - openjdk7
index 516ff2cf733e166c4e8ec71fe1001c178ebb0df1..402b071b47bfe7f2bd8f943fdf866c763121b506 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
index 128ce4220b54b1f2e42a4851ec6d609932b9a086..675c3b6d051cf8af01f29fbd2f414e6b593ae328 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
index a503acef2cb02f945cc45b609b0a59c20e09dd68..b827b37005ee47937d216a5fdb88d740973351ac 100644 (file)
       - boron:
           branch: 'master'
           jre: 'openjdk8'
+          karaf-version: karaf3
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
index 32ae9455a3b94943b510af57debded42d8aebd1d..7798961f115a961b266d3940248182d39c395166 100644 (file)
@@ -1,4 +1,32 @@
 ---
+- project:
+    name: usc-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-distribution3-check-nitrogen'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-validate-autorelease-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'usc'
+    project-name: 'usc'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'usc-settings'
+    mvn-goals: 'clean install'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: 'controller-merge-{stream},yangtools-merge-{stream},odlparent-merge-{stream}'
+    email-upstream: '[usc] [controller] [yangtools] [odlparent]'
+    archive-artifacts: ''
+
 - project:
     name: usc-carbon
     jobs:
@@ -12,7 +40,8 @@
     stream: carbon
     project: 'usc'
     project-name: 'usc'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -40,6 +69,7 @@
     project: 'usc'
     project-name: 'usc'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -67,6 +97,7 @@
     project: 'usc'
     project-name: 'usc'
     branch: 'stable/beryllium'
+    karaf-version: karaf3
     jdk: openjdk7
     jdks:
       - openjdk7
index 9e92258308d70421ca78a1842c4093a6ed51cdb4..c13bbf62c330c9fd3d0fe2b71adf77c16104f790 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
index 8b13afb2039f3d09b79f8dfc840985d4a81a0c07..67ce4ac85131fb448d1b6f90f6424bb0c795a0d0 100644 (file)
@@ -1,4 +1,32 @@
 ---
+- project:
+    name: usecplugin-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-distribution3-check-nitrogen'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-validate-autorelease-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'usecplugin'
+    project-name: 'usecplugin'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'usecplugin-settings'
+    mvn-goals: 'clean install'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: 'openflowplugin-merge-{stream}'
+    email-upstream: '[usecplugin] [openflowplugin]'
+    archive-artifacts: ''
+
 - project:
     name: usecplugin-carbon
     jobs:
@@ -12,7 +40,8 @@
     stream: carbon
     project: 'usecplugin'
     project-name: 'usecplugin'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -40,6 +69,7 @@
     project: 'usecplugin'
     project-name: 'usecplugin'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -67,6 +97,7 @@
     project: 'usecplugin'
     project-name: 'usecplugin'
     branch: 'stable/beryllium'
+    karaf-version: karaf3
     jdk: openjdk7
     jdks:
       - openjdk7
index 29985c070abfd12e0af5de0467982a0c4fc41691..debef1f1f7e4afe72b09446c16596b8aab93ba15 100644 (file)
@@ -13,6 +13,7 @@
     project: 'vpnservice'
     project-name: 'vpnservice'
     branch: 'stable/beryllium'
+    karaf-version: karaf3
     jdk: openjdk7
     jdks:
       - openjdk7
index b6864b656c6be013bf2488c638b65720f8c26719..1e7185d5e06260b5bbf8bea8376af447f3abfcb9 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
 
     install:
       - only:
index 033f82f50862055376783237ad5ff5b894062534..f1ba019d082c87bf2ccf8caa09a8e491ccfaf015 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
           tools_system_image: Ubuntu 14.04 - mininet-ovs-25 - 20170210-0300
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
           tools_system_image: Ubuntu 14.04 - mininet-ovs-25 - 20170210-0300
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     install:
       - only:
index b1e55ad5d5e21ba8001a9283b108818a3d0390da..b2b0482889cfe11d4edd90febe26d630b175170d 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
           tools_system_image: Ubuntu 14.04 - mininet - 20170210-0439
 
     install:
index 960e64f6d68bce1771212395b8939358a2836331..e6fdab106d97dab09fc4d30c1b4fe2bf49666d71 100644 (file)
     functionality: 'neutron'
 
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
       - boron:
           branch: 'stable/boron'
           jre: 'openjdk8'
+          karaf-version: karaf3
       - beryllium:
           branch: 'stable/beryllium'
           jre: 'openjdk7'
+          karaf-version: karaf3
 
     openstack:
-      - mitaka:
-          openstack-branch: 'stable/mitaka'
-          odl-ml2-branch: 'stable/mitaka'
-          openstack_system_image: 'CentOS 7 - devstack-mitaka - 20170314-2255'
       - newton:
           openstack-branch: 'stable/newton'
           odl-ml2-branch: 'stable/newton'
index a19aaa85cdfc4dea13dec8fc42a6b971b71e7923..347fe2deb06bb834901b7d3edc85d5e3fe798bde 100644 (file)
 
     # Project branches
     stream:
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jdk: 'openjdk8'
           csit-list: >
              vtn-csit-1node-manager-only-{stream},
              vtn-csit-3node-manager-only-{stream}
-
+      - carbon:
+          branch: 'stable/carbon'
+          jdk: 'openjdk8'
+          karaf-version: karaf3
+          csit-list: >
+             vtn-csit-1node-manager-only-{stream},
+             vtn-csit-3node-manager-only-{stream}
       - boron:
           branch: 'stable/boron'
           jdk: 'openjdk8'
+          karaf-version: karaf3
           csit-list: >
              vtn-csit-1node-manager-only-{stream},
              vtn-csit-3node-manager-only-{stream}
index ce28ce30c6fa1e271cf0cd39701f92d622d0794a..bf46dcc81f852b1cfeb4a0a48c1bd520914cb887 100644 (file)
@@ -1,4 +1,36 @@
 ---
+- project:
+    name: vtn-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-distribution3-check-nitrogen'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-validate-autorelease-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'vtn'
+    project-name: 'vtn'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'vtn-settings'
+    mvn-goals: 'clean install -V -Pintegrationtests,strictcheck,docs -Dvtn.build.jobs=2'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: 'neutron-merge-{stream},openflowplugin-merge-{stream},ovsdb-merge-{stream}'
+    email-upstream: '[vtn] [neutron] [openflowplugin] [ovsdb]'
+
+    # Please do not archive maven sites!!!
+    # Maven sites are published to Nexus at:
+    # https://nexus.opendaylight.org/content/sites/site/
+    archive-artifacts: 'manager/dist/*/target/*.zip coordinator/dist/target/*.bz2'
+
 - project:
     name: vtn-carbon
     jobs:
@@ -12,7 +44,8 @@
     stream: carbon
     project: 'vtn'
     project-name: 'vtn'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -44,6 +77,7 @@
     project: 'vtn'
     project-name: 'vtn'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
     project: 'vtn'
     project-name: 'vtn'
     branch: 'stable/beryllium'
+    karaf-version: karaf3
     jdk: openjdk7
     jdks:
       - openjdk7
index 31b89fdec28bd5ac2b10af1a7f06e754cde78362..d839cb7b9275b863e2e6c1f0aa2d648fa7842dc7 100644 (file)
@@ -1,4 +1,32 @@
 ---
+- project:
+    name: yang-push-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-distribution3-check-nitrogen'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-validate-autorelease-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'yang-push'
+    project-name: 'yang-push'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'yang-push-settings'
+    mvn-goals: 'clean install'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: ''
+    email-upstream: '[yang-push]'
+    archive-artifacts: ''
+
 - project:
     name: yang-push-carbon
     jobs:
@@ -12,7 +40,8 @@
     stream: carbon
     project: 'yang-push'
     project-name: 'yang-push'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -40,6 +69,7 @@
     project: 'yang-push'
     project-name: 'yang-push'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -67,6 +97,7 @@
     project: 'yang-push'
     project-name: 'yang-push'
     branch: 'stable/beryllium'
+    karaf-version: karaf3
     jdk: openjdk7
     jdks:
       - openjdk7
index e40378e5e2a45cbf0b8524bec1331aa1824256dd..b09ac1a5ab170c2d5f210af557df60ae4d6a011c 100644 (file)
@@ -1,4 +1,29 @@
 ---
+- project:
+    name: yangide-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'yangide'
+    project-name: 'yangide'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'yangide-settings'
+    mvn-goals: 'clean install'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: 'odlparent-merge-{stream},yangtools-merge-{stream}'
+    email-upstream: '[yangide] [odlparent] [yangtools]'
+    archive-artifacts: ''
+
 - project:
     name: yangide-carbon
     jobs:
@@ -10,7 +35,8 @@
     stream: carbon
     project: 'yangide'
     project-name: 'yangide'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -36,6 +62,7 @@
     project: 'yangide'
     project-name: 'yangide'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
index f00e35ec690527d816c9beaf1e1b916dfe967459..bf59fe140b5ae9464297a5d07f219ed90cdb45bb 100644 (file)
     # Project branches.
     stream:
       # The tested component was only introduced in Carbon.
-      - carbon:
+      - nitrogen:
           branch: 'master'
           jre: 'openjdk8'
+      - carbon:
+          branch: 'stable/carbon'
+          jre: 'openjdk8'
+          karaf-version: karaf3
 
     install:
       - only:
index 6dd2316fb132acd40d9640d8e5a142594f426eb7..4aeeea1478272594db0a067bb1178f70e02842d5 100644 (file)
@@ -1,4 +1,32 @@
 ---
+- project:
+    name: yangtools-nitrogen
+    jobs:
+      - '{project-name}-clm-{stream}'
+      - '{project-name}-distribution-check-{stream}'
+      - '{project-name}-distribution3-check-nitrogen'
+      - '{project-name}-integration-{stream}'
+      - '{project-name}-merge-{stream}'
+      - '{project-name}-validate-autorelease-{stream}'
+      - '{project-name}-verify-{stream}-{maven}-{jdks}'
+
+    stream: nitrogen
+    project: 'yangtools'
+    project-name: 'yangtools'
+    branch: 'master'
+    jdk: openjdk8
+    jdks:
+      - openjdk8
+    maven:
+      - mvn33:
+          mvn-version: 'mvn33'
+    mvn-settings: 'yangtools-settings'
+    mvn-goals: 'clean install'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+    dependencies: 'odlparent-merge-{stream}'
+    email-upstream: '[yangtools] [odlparent]'
+    archive-artifacts: ''
+
 - project:
     name: yangtools-carbon
     jobs:
@@ -12,7 +40,8 @@
     stream: carbon
     project: 'yangtools'
     project-name: 'yangtools'
-    branch: 'master'
+    branch: 'stable/carbon'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -40,6 +69,7 @@
     project: 'yangtools'
     project-name: 'yangtools'
     branch: 'stable/boron'
+    karaf-version: karaf3
     jdk: openjdk8
     jdks:
       - openjdk8
@@ -69,6 +99,7 @@
     project: 'yangtools'
     project-name: 'yangtools'
     branch: 'stable/beryllium'
+    karaf-version: karaf3
     jdk: openjdk7
     jdks:
       - openjdk7
index a91d7619d68d843467b6a73d0153f402bf5189e9..42bcbca17c8160c9489b6642c39375e3826d62a9 100644 (file)
@@ -43,15 +43,9 @@ do
     pip install -c requirements/upper-constraints.txt -r ${proj}/test-requirements.txt
 done
 
-if [ "$branch" == "stable/mitaka" ] || [ "$branch" == "stable/liberty" ]; then
-    # the newton release has ovs 2.5.0
-    echo '---> Installing openvswitch from openstack Newton repo (2.5.0)'
-    yum install -y http://rdoproject.org/repos/openstack-newton/rdo-release-newton.rpm
-else
-    # 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
-fi
+# 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
 
 yum install -y --nogpgcheck openvswitch
 
index 9f3da56efa2ac25790cebdced4fbbd79bb52fdbc..ad0ef81e2e242142bc3c5b0475ab17fc02df7f9a 100644 (file)
@@ -19,6 +19,9 @@ yum install -y python34-{devel,virtualenv,setuptools,pip}
 # Install python dependencies, useful generally
 yum install -y python-{devel,virtualenv,setuptools,pip}
 
+# Use pip to install newer version of git-review
+pip install git-review --upgrade
+
 # Needed by autorelease scripts
 yum install -y xmlstarlet
 
@@ -45,21 +48,21 @@ yum-config-manager -y --add-repo http://download.mono-project.com/repo/centos/
 yum -y install mono-complete nuget
 
 # Needed by TSDR
-echo "Installing the Hbase Server..."
+echo "---> Installing the Hbase Server..."
 mkdir /tmp/Hbase
 cd /tmp/Hbase
-wget --no-verbose http://apache.osuosl.org/hbase/hbase-0.94.27/hbase-0.94.27.tar.gz
+wget --no-verbose https://archive.apache.org/dist/hbase/hbase-0.94.27/hbase-0.94.27.tar.gz
 tar -xvf hbase-0.94.27.tar.gz
 
 # Needed by TSDR
-echo "Installing the Cassandra Server..."
+echo "---> Installing the Cassandra Server..."
 mkdir /tmp/cassandra
 cd /tmp/cassandra
-wget --no-verbose http://apache.osuosl.org/cassandra/2.1.16/apache-cassandra-2.1.16-bin.tar.gz
+wget --no-verbose https://archive.apache.org/dist/cassandra/2.1.16/apache-cassandra-2.1.16-bin.tar.gz
 tar -xvf apache-cassandra-2.1.16-bin.tar.gz
 
 # Generally useful for all projects
-echo "Installing the Elasticsearch node..."
+echo "---> Installing the Elasticsearch node..."
 mkdir /tmp/elasticsearch
 cd /tmp/elasticsearch
 wget --no-verbose https://download.elastic.co/elasticsearch/elasticsearch/elasticsearch-1.7.5.tar.gz
@@ -73,3 +76,15 @@ unzip packer_0.12.2_linux_amd64.zip -d /usr/local/bin/
 # rename packer to avoid conflict with binary in cracklib
 mv /usr/local/bin/packer /usr/local/bin/packer.io
 
+#Check out 6Wind quagga with tag name '20170418', compile and install for router functionalities
+echo "---> Installing the Quagga..."
+mkdir -p /tmp/build_quagga
+cd /tmp/build_quagga
+git clone https://github.com/6WIND/zrpcd.git
+cd zrpcd
+git checkout 20170418
+chmod a+x /tmp/build_quagga/zrpcd/pkgsrc/dev_compile_script.sh
+/tmp/build_quagga/zrpcd/pkgsrc/dev_compile_script.sh -d -b -t -v 2
+
+# Removing the build_quagga folder
+rm -rf /tmp/build_quagga/
diff --git a/packer/templates/devstack-pre-pip-mitaka.json b/packer/templates/devstack-pre-pip-mitaka.json
deleted file mode 100644 (file)
index 9c2ac20..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-{
-  "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-mitaka - {{isotime \"20060102-1504\"}}",
-      "source_image_name": "{{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-mitaka - {{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/mitaka"
-      ],
-      "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"
-    }
-  ]
-}
diff --git a/scripts/branch_cut/branch_cut.awk b/scripts/branch_cut/branch_cut.awk
new file mode 100755 (executable)
index 0000000..f2d1991
--- /dev/null
@@ -0,0 +1,234 @@
+#!/usr/bin/awk -f
+
+# @License EPL-1.0 <http://spdx.org/licenses/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
+#
+##############################################################################
+
+BEGIN {
+    new_tag                     = new_reltag       # new release tag
+    curr_tag                    = curr_reltag      # current release tag
+    prev_tag                    = prev_reltag      # previous release tag
+
+    new_release                 = tolower(new_tag)
+    curr_release                = tolower(curr_tag)
+    prev_release                = tolower(prev_tag)
+
+    ws = "[\\t ]*"                                 # white-spaces
+    startpat = "^" ws "- project:"                 # start pattern
+    endpat = startpat                              # end pattern
+    op = "^" ws "---" ws "$"                       # match files starts with "---"
+
+    next_release_tag            = "^" ws "next-release-tag: " curr_tag
+    master                      = "'master'"
+    new_branch                  = "'stable/" new_release "'"
+    curr_branch                 = "'stable/" curr_release "'"
+    prev_branch                 = "'stable/" prev_release "'"
+
+    # replace block to add new release
+    new_rel_yaml_tag            = "- " new_release ":";
+    br_master_yaml_tag          = "    branch: 'master'";
+    jre_yaml_tag                = "    jre: 'openjdk8'";
+    curr_rel_yaml_tag           = "- " curr_release ":";
+    br_stable_curr_yaml_tag     = "    branch: 'stable/" curr_release "'";
+
+    # replace block for autorelease-projects
+    #new_rel_yaml_tag           = "- " new_release ":";
+    next_rel_tag_new_yaml_tag   = "    next-release-tag: " new_tag;
+    #br_master_yaml_tag         = "    branch: 'master'";
+    jdk_yaml_tag                = "    jdk: 'openjdk8'";
+    intg_test_yaml_tag          = "    integration-test: " new_release;
+    #curr_rel_yaml_tag          = "- " curr_release ":";
+    next_rel_tag_curr_yaml_tag  = "    next-release-tag: " curr_tag;
+    #br_stable_curr_yaml_tag    = "    branch: 'stable/" curr_release "'";
+
+    # search patterns
+    smaster = "^" ws "- master:"
+    sstream = "^" ws "stream:"
+    srelease = "^" ws "- " curr_release ":"
+    #if (l ~ next_release_tag) { next_release_tag = 1; continue; }
+    sbranch = "^" ws "branch: " master
+
+    debug = 0                                   # set to 1 to print debug info
+    file_format = 2                             # project stream format
+
+    release_found = 0
+    stream_found = 0
+    nrt_found = 0
+}
+
+{
+    # exit if release info is not available
+    if ((length(new_release) == 0 || length(curr_release) == 0)) {
+        exit;
+    }
+
+    # read all lines of the file into an array
+    file[NR] = $0
+}
+
+END {
+    n = NR                                      # total number of lines
+    find_blks()                                 # gets number of blocks between start/end pattern
+    process_blk(arr_bs[1], arr_be[1], 1)        # pass start and end of each block and process first block
+    update_file(arr_be[1])                      # write processed content
+
+    if (debug) {
+        print "number of blocks="nb;
+        print "total records in file[]="length(f);
+        print "size of firstblk[]="length(firstblk);
+        print "size of newblk[]="length(newblk);
+        print "size of oldmaster[]="length(oldmaster);
+        print "size of newblk[]="length(newblk);
+    }
+}
+
+function find_blks(   i, l, bs, be) {
+    for (i = 1; i <= n; i++) {
+        l = file[i]
+        if (l ~ startpat) project = 1                        # start pattern
+        if (bs > be && l ~ endpat) arr_be[++be] = i - 1      # block end
+        if (           l ~ startpat) arr_bs[++bs] = i - 1    # block start
+    }
+    nb = be
+
+    # to handle files with single blocks
+    if (nb == 0 && length(file) > 1 && project == 1) {
+        nb = 1
+        arr_bs[1] = 1                               # start after line '---'
+        arr_be[1] = length(file)                    # set length of the file
+    }
+
+    if (debug) {
+        for (i = 1; i < nb; i++)
+            print "find_blks: nb=" nb " arr_bs[" i "]="arr_bs[i]" arr_be[" i "]="arr_be[i];
+    }
+}
+
+function process_blk(bs, be, bn,   i, l) {
+    if (debug) {
+        print "process_blk: bn=" bn ", bs=" bs " ,be=" be
+    }
+
+    # get the first block
+    for (i = bs + 1; i <= be ; i++) {
+        l = file[i]
+        # determine file format
+        if (l ~ /stream:/) {
+            x=index(l,":")
+            s = substr(l, x+2, length(l) - x)
+            if (s == curr_release || s == new_release) {
+                file_format = 1
+            } else if (length(s) == 0 ) {
+                file_format = 0
+            }
+        }
+        firstblk[++nex] = l
+    }
+
+    if (debug) {
+        print "process_blk: stream='" s "' length(s)=" length(s)" file_format='" file_format "'"
+    }
+
+    # Handle single stream format
+    if (file_format == 1) {
+        # create new block to be inserted
+        for (i = 1; i <= length(firstblk); i++) {
+            l = firstblk[i]
+            if (l ~ /name:|stream:/) sub(curr_release, new_release, l)
+            newblk[++nex1] = l
+        }
+        # re-create old block and change master to stable/branch
+        for (i = 1; i <= length(firstblk)-1; i++) {
+            l = firstblk[i]
+            if (l ~ /branch:/) sub(master, curr_branch, l)
+            oldmaster[++nex2] = l
+        }
+    } else if (file_format == 0) {
+        # Handle multi-stream format
+        for (i = 1; i <= length(firstblk)-1; i++) {
+            l = firstblk[i]
+            if (l ~ sstream) { stream_found = 1; }
+            if (l ~ srelease) { release_found = 1; indent = substr(l, 1, index(l, "-")-1); continue; }
+            if (l ~ next_release_tag) { nrt_found = 1; continue; }
+            if (l ~ sbranch) {
+                # append lines
+                if (stream_found && release_found && !nrt_found) {
+                    newblk[++nex3] = indent new_rel_yaml_tag;
+                    newblk[++nex3] = indent br_master_yaml_tag;
+                    newblk[++nex3] = indent jre_yaml_tag;
+                    newblk[++nex3] = indent curr_rel_yaml_tag;
+                    newblk[++nex3] = indent br_stable_curr_yaml_tag;
+                    stream_found = 0; release_found = 0;
+                    continue;
+                }
+                if (stream_found && release_found && nrt_found) {
+                    newblk[++nex3] = indent new_rel_yaml_tag;
+                    newblk[++nex3] = indent next_rel_tag_new_yaml_tag;
+                    newblk[++nex3] = indent br_master_yaml_tag;
+                    newblk[++nex3] = indent jdk_yaml_tag;
+                    newblk[++nex3] = indent intg_test_yaml_tag;
+                    newblk[++nex3] = indent curr_rel_yaml_tag;
+                    newblk[++nex3] = indent next_rel_tag_curr_yaml_tag;
+                    newblk[++nex3] = indent br_stable_curr_yaml_tag;
+                    stream_found = 0; release_found = 0; nrt_found=0;
+                    continue;
+                }
+            }
+            newblk[++nex3] = l
+
+            if (debug) {
+                print "process_blk: append(newblk[]) : stream="stream" release_found="release_found
+            }
+        }
+    } else {
+        # exit on unknown file format
+        exit;
+    }
+}
+
+function update_file(be,   i, j, l) {
+    i = 1
+    # handle lines before "---"
+    while (i <= n) {
+        print l = file[i++]
+        if (l ~ op) break
+    }
+
+    if (debug) {
+        print "writing master block"
+    }
+
+    # Handle single stream format
+    if (file_format == 1) {
+        for (j = 1; j <= nex1; j++)                   # write new branch block
+            print newblk[j]
+
+        if (debug) {
+            print "writing stable block"
+        }
+
+        for (j = 1; j <= nex2; j++)                   # write updated branch block
+            print oldmaster[j]
+
+    # Handle multi-stream format
+    } else if (file_format == 0) {
+        # print the first block
+        for (j = 1; j <= nex3; j++)                   # write multi-stream block
+            print newblk[j]
+    }
+
+    if (debug) {
+        print "writing rest of the file"
+    }
+
+    while (be <= n) {                                 # write rest of the file
+        print file[be++]
+    }
+}
diff --git a/scripts/branch_cut/branch_cutter.sh b/scripts/branch_cut/branch_cutter.sh
new file mode 100755 (executable)
index 0000000..6f9c7a3
--- /dev/null
@@ -0,0 +1,77 @@
+#!/bin/bash
+
+# @License EPL-1.0 <http://spdx.org/licenses/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
+#
+##############################################################################
+
+# List of files exclude
+declare -a excludes=("releng-defaults.yaml"
+                     "releng-macros.yaml")
+
+TEMP="/tmp/tmp.yaml"
+mod=0
+count=0
+
+function usage {
+    echo "Usage: $(basename $0) options (-n [next release]) (-c [current release]) (-p [previous release]) -h for help";
+    exit 1;
+}
+
+if ( ! getopts ":n:c:p:h" opt ); then
+    usage;
+fi
+
+while getopts ":n:c:p:h" opt; do
+    case $opt in
+        n)
+            new_reltag=$OPTARG
+            ;;
+        c)
+            curr_reltag=$OPTARG
+            ;;
+        p)
+            prev_reltag=$OPTARG
+            ;;
+        \?)
+            echo "Invalid option: -$OPTARG" >&2
+            exit 1
+            ;;
+        h)
+            usage
+            ;;
+        :)
+            echo "Option -$OPTARG requires an argument." >&2
+            exit 1
+            ;;
+    esac
+done
+
+echo "Start Branch Cutting:"
+
+while IFS="" read -r y; do
+    found=0
+    for f in "${excludes[@]}"; do
+        if [[ $y =~ $f && $found -eq 0 ]]; then
+            found=1
+            break
+        fi
+    done
+    if [[ $found -eq 1 ]]; then
+        echo "Ignore file $y found in excludes list"
+    else
+        ./branch_cut.awk -v new_reltag="$new_reltag" -v curr_reltag="$curr_reltag" -v prev_reltag="$prev_reltag" "$y" > "$TEMP"
+        [[ ! -s "$TEMP" ]] && echo "$y: excluded"
+        [[ -s "$TEMP" ]] && mv "$TEMP" "$y" && echo "$y: Done" && let "mod++"
+        let "count++"
+    fi
+done < <(find ../../jjb -name "*.yaml")
+
+echo "Modified $mod out of $count files"
+echo "Completed"
diff --git a/tox.ini b/tox.ini
index 3f2334b99a4949974e300e80efda64d0944d2859..65dd26cb68a868952e16f2d530ef83bbdc1e4686 100644 (file)
--- a/tox.ini
+++ b/tox.ini
@@ -6,7 +6,7 @@ skipsdist = true
 [testenv:coala]
 basepython = python3
 deps =
-    coala
+    coala<0.11
     coala-bears
 commands =
     python3 -m nltk.downloader punkt maxent_treebank_pos_tagger averaged_perceptron_tagger