Stable Boron branch cutting
[releng/builder.git] / jjb / ovsdb / ovsdb-full-integration.yaml
index ad311913fb8e2cfb50df775e89fa914e2cc76b36..d6fb1ad27409a431c54c5743701c4c1122b66ece 100644 (file)
@@ -1,44 +1,53 @@
 - project:
     name: ovsdb-full-integration
     jobs:
-        - 'ovsdb-daily-full-integration'
+        - 'ovsdb-daily-full-integration-{stream}'
+
+    # stream:    release stream (eg. stable-lithium or beryllium)
+    # branch:    git branch (eg. stable/lithium or master)
+    stream:
+        - boron:
+            branch: 'master'
+            jdk: openjdk8
+            jdks:
+                - openjdk8
+        - beryllium:
+            branch: 'stable/beryllium'
+            jdk: openjdk8
+            jdks:
+                - openjdk8
+        - stable-lithium:
+            branch: 'stable/lithium'
+            jdk: openjdk7
+            jdks:
+                - openjdk7
 
     project: 'ovsdb'
 
 - job-template:
-    name: 'ovsdb-daily-full-integration'
+    name: 'ovsdb-daily-full-integration-{stream}'
+
+    # Required Variables:
+    #     stream:    release stream (eg. stable-lithium or beryllium)
+    #     branch:    git branch (eg. stable/lithium or master)
 
     project-type: matrix
     node: matrix_master
-    description: 'Integration tests for the OVSDB project against every known version of OVS. This job runs nightly. '
+    description: 'Integration tests for the OVSDB project against different versions of OVS and branches. This job runs nightly. '
     execution-strategy:
         sequential: true
+
     axes:
         - axis:
             type: user-defined
             name: 'OVS_VERSION'
             values:
-                - 1.4.6
-                - 1.5.0
-                - 1.6.1
-                - 1.7.0
-                - 1.7.1
-                - 1.7.3
-                - 1.9.0
-                - 1.9.3
-                - 1.10.0
-                - 1.10.2
-                - 1.11.0
-                - 2.0.0
-                - 2.0.1
-                - 2.1.0
-                - 2.1.1
-                - 2.1.2
-                - 2.3.0
+                - 2.3.2
+                - 2.4.0
         - axis:
             type: jdk
-            values:
-                - openjdk7
+            values: '{obj:jdks}'
+
         - axis:
             type: slave
             name: nodes
     parameters:
         - project-parameter:
             project: '{project}'
+        - gerrit-parameter:
+            branch: '{branch}'
 
     scm:
         - git-scm:
             credentials-id: '{ssh-credentials}'
             refspec: ''
-            branch: 'master'
+            branch: '{branch}'
 
     wrappers:
         - timeout:
@@ -68,7 +79,8 @@
             timeout-var: 'BUILD_TIMEOUT'
             type: absolute
         - ssh-agent-credentials:
-            user: '{ssh-credentials}'
+            users:
+                - '{ssh-credentials}'
 
     triggers:
         - timed: '@midnight'
     builders:
         - wipe-org-opendaylight-repo
         - shell:
-            !include-raw-escape include-raw-setup-docker.sh
+            !include-raw-escape:
+                - include-raw-setup-docker.sh
+        - inject:
+            properties-file: env.properties
         - maven-target:
-            maven-version: '{mvn32}'
+            maven-version: '{mvn33}'
             pom: 'pom.xml'
-            goals: 'clean install verify -Pintegrationtest,jenkins -V'
+            goals: 'clean install -V verify -Pintegrationtest -Dskip.karaf.featureTest=true -Dmaven.compile.fork=true -Dovsdb.controller.address=${{CONTROLLER_IP}}'
             properties:
                 - 'ovsdbserver.ipaddress=127.0.0.1'
                 - 'ovsdbserver.port=6641'
+                - 'ovsdb.userspace.enabled=yes'
                 - 'maven.repo.local=/tmp/r'
                 - 'org.ops4j.pax.url.mvn.localRepository=/tmp/r'
+                - 'stream={stream}'
             java-opts:
                 - '-Xmx1024m -XX:MaxPermSize=256m'
             settings: '{ovsdb-settings}'
             global-settings: '{odl-global-settings}'
-        - inject:
-            properties-file: env.properties
         - shell:
-            !include-raw-escape include-raw-cleanup-docker.sh
+            !include-raw-escape:
+                - include-raw-cleanup-docker.sh
         - jacoco-nojava-workaround
 
     publishers: