refactor email recipients to parameter with default value
[releng/builder.git] / jjb / netvirt / netvirt-sonar.yaml
index 211eb6e0f6ecebc4f6d4a52e069ad7e4f3745149..695bb1becebd75c6e911e3d4b3cc79d60922c521 100644 (file)
@@ -5,12 +5,22 @@
 
     project: 'netvirt'
     jdk: 'openjdk8'
+    archive-artifacts: '*.log'
+
+- builder:
+    name: install-docker-composeSonar
+    builders:
+        - shell: |
+            virtualenv $WORKSPACE/venv
+            source $WORKSPACE/venv/bin/activate
+            pip install --upgrade pip
+            pip install docker-compose
 
 - job-template:
     name: 'netvirt-sonar'
 
-    project-type: maven
-    node: dynamic_docker
+    project-type: freestyle
+    node: centos7-docker-2c-4g
     jdk: '{jdk}'
 
     logrotate:
         - gerrit-trigger-patch-sonar:
             name: 'netvirt'
 
-    prebuilders:
+    builders:
         - shell:
             !include-raw-escape:
-                - include-raw-setup-docker.sh
-
-    maven:
-        maven-name: '{mvn33}'
-        root-pom: 'pom.xml'
-        goals: 'clean install dependency:tree -V -B -Dsonar -Dskip.karaf.featureTest=true -Dmaven.compile.fork=true -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
-        maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
-        settings: 'netvirt-settings'
-        settings-type: cfp
-        global-settings: 'odl-global-settings'
-        global-settings-type: cfp
-
-    postbuilders:
+                - include-setup-misc.sh
         - inject:
             properties-file: env.properties
+        - install-docker-composeSonar
         - maven-target:
-            maven-version: '{mvn33}'
+            maven-version: 'mvn33'
             pom: 'pom.xml'
-            goals: 'verify -V -B -Pintegrationtest -Dsonar -Dskip.karaf.featureTest=true -Dovsdb.controller.address=${{CONTROLLER_IP}} -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r '
+            goals: 'clean install dependency:tree -V -B -Dsonar -Dskip.karaf.featureTest=true -Dmaven.compile.fork=true -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
+            java-opts:
+                - '-Xmx1024m -XX:MaxPermSize=256m'
+            settings: 'netvirt-settings'
+            settings-type: cfp
+            global-settings: 'odl-global-settings'
+            global-settings-type: cfp
+        - inject:
+            properties-file: env.properties
+        - maven-target:
+            maven-version: 'mvn33'
+            pom: 'vpnservice/it/pom.xml'
+            goals: 'verify -V -B -l netvirt-vpnservice-sonar.log -Pintegrationtest -Dsonar -Dskip.karaf.featureTest=true -Dovsdb.controller.address=${{CONTROLLER_IP}} -Ddocker.compose.file=ovs-2.5.0-hwvtep.yml -Ddocker.vEnvWs=$WORKSPACE -Dsgm=transparent'
+            properties:
+                - 'maven.repo.local=/tmp/r'
+                - 'org.ops4j.pax.url.mvn.localRepository=/tmp/r'
+            settings: 'netvirt-settings'
+            settings-type: cfp
+            global-settings: 'odl-global-settings'
+            global-settings-type: cfp
+        - maven-target:
+            maven-version: 'mvn33'
+            pom: 'openstack/net-virt-it/pom.xml'
+            goals: 'verify -V -B -l net-virt-sonar.log -Pintegrationtest -Dsonar -Dskip.karaf.featureTest=true -Dovsdb.controller.address=${{CONTROLLER_IP}} -Ddocker.compose.file=ovs-2.5.0-hwvtep.yml -Ddocker.vEnvWs=$WORKSPACE -Dsgm=transparent'
+            properties:
+                - 'maven.repo.local=/tmp/r'
+                - 'org.ops4j.pax.url.mvn.localRepository=/tmp/r'
+            settings: 'netvirt-settings'
+            settings-type: cfp
+            global-settings: 'odl-global-settings'
+            global-settings-type: cfp
+        - shell:
+            !include-raw-escape:
+                - include-raw-setup-docker.sh
+        - inject:
+            properties-file: env.properties
+        - maven-target:
+            maven-version: 'mvn33'
+            pom: 'openstack/net-virt-sfc/it/pom.xml'
+            goals: 'verify -V -B -l openstack/net-virt-sfc-sonar.log -Pintegrationtest -Dsonar -Dskip.karaf.featureTest=true -Dovsdb.controller.address=${{CONTROLLER_IP}} -Dsgm=transparent'
             properties:
+                - 'maven.repo.local=/tmp/r'
+                - 'org.ops4j.pax.url.mvn.localRepository=/tmp/r'
                 - 'ovsdbserver.ipaddress=127.0.0.1'
                 - 'ovsdbserver.port=6641'
                 - 'ovsdb.userspace.enabled=yes'
             settings-type: cfp
             global-settings: 'odl-global-settings'
             global-settings-type: cfp
+        - maven-target:
+            maven-version: 'mvn33'
+            # We should switch to the recommended configuration of sonar once
+            # JJB adds support for configurating the Sonar wrapper:
+            #    http://docs.sonarqube.org/display/SCAN/Analyzing+with+SonarQube+Scanner+for+Jenkins
+            goals: 'sonar:sonar -V -B -Djenkins -Dsonar -Dsonar.host.url=https://sonar.opendaylight.org -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
+            settings: 'netvirt-settings'
+            settings-type: cfp
+            global-settings: 'odl-global-settings'
+            global-settings-type: cfp
         - shell:
             !include-raw-escape:
                 - include-raw-cleanup-docker.sh
         - jacoco-nojava-workaround
 
-    reporters:
-        - findbugs
-
     publishers:
-        - sonar:
-            language: 'java'
-            maven-opts: '-Xmx6144m -XX:MaxPermSize=1024m'
         - email-notification:
+            email-recipients: '{email-recipients}'
             email-prefix: '[netvirt]'
         - jacoco-report
+        - findbugs
+        - opendaylight-infra-shiplogs:
+            maven-version: 'mvn33'