Merge "Install openssl-devel on robot VM"
[releng/builder.git] / jjb / integration / integration-distribution-jobs.yaml
index 50588c0749f53308b029d3d02a34d67a16da6782..68451440363e2652199628bb81bb56638e05c2f7 100644 (file)
@@ -59,7 +59,7 @@
                 - '{ssh-credentials}'
 
     triggers:
-        - gerrit-trigger-patch-submitted:
+        - gerrit-trigger-relevant-patch-submitted:
             name: 'integration/distribution'
             branch: '{branch}'
 
         - 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 -Djenkins -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r source:jar javadoc:jar'
-        maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
-        settings: '{integration-settings}'
+        goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r  -Djenkins -Dstream={stream}'
+        maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
         global-settings: '{odl-global-settings}'
+        settings: '{integration-settings}'
         ignore-upstream-changes: true
         post-step-run-condition: 'SUCCESS'
 
     publishers:
         - email-notification:
             email-prefix: '[integration]'
+        - archive-artifacts:
+            artifacts: '**/target/surefire-reports/*-output.txt, '
+        - findbugs
+        - jacoco-report
 
 - job-template:
     name: 'integration-distribution-merge-{stream}'
                 - '{ssh-credentials}'
 
     triggers:
+        - timed: 'H H * * 0'
         - gerrit-trigger-patch-merged:
             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}'
 
     maven:
         maven-name: '{mvn33}'
         root-pom: 'pom.xml'
-        goals: 'clean install -Djenkins -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r  source:jar javadoc:jar'
-        maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
-        settings: '{integration-settings}'
+        goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r  -Djenkins -Dmerge -Dstream={stream}'
+        maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
         global-settings: '{odl-global-settings}'
+        settings: '{integration-settings}'
+
+    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 -Dstream={stream}'
+                java-opts:
+                    - '-Xmx2g'
+                global-settings: '{odl-global-settings}'
+                settings: '{integration-settings}'
+            - maven-target:
+                maven-version: '{mvn33}'
+                pom: deploy-site.xml
+                goals: 'site:deploy -Dstream={stream}'
+                java-opts:
+                    - '-Xmx2g'
+                global-settings: '{odl-global-settings}'
+                settings: '{integration-settings}'
+
+    reporters:
+        - findbugs
 
     publishers:
+        - archive-artifacts:
+            artifacts: '**/target/surefire-reports/*-output.txt, '
         - email-notification:
             email-prefix: '[integration]'
         - maven-deploy:
             id: ''
             unique-version: true
             deploy-unstable: false
+        - jacoco-report
 
 # Template: integration-distribution-deploy-{stream}
 # Goal: Verify distribution starts with no issues when all features are loaded