- 'snbi-verify-{stream}'
- 'snbi-merge-{stream}'
- 'snbi-daily-{stream}'
+ - 'snbi-distribution-{stream}'
- 'snbi-integration-{stream}'
- 'snbi-sonar'
+ - 'snbi-clm-{stream}'
- # stream: branch with - in place of / (eg. stable-helium)
- # branch: branch (eg. stable/helium)
+
+ # stream: release stream (eg. stable-lithium or beryllium)
+ # branch: git branch (eg. stable/lithium or master)
stream:
- - master:
+ - beryllium:
branch: 'master'
+ jdk: openjdk7
+ jdks:
+ - openjdk7
+ - stable-lithium:
+ branch: 'stable/lithium'
+ jdk: openjdk7
+ jdks:
+ - openjdk7
- stable-helium:
branch: 'stable/helium'
+ jdk: openjdk7
+ jdks:
+ - openjdk7
project: 'snbi'
- jdk: 'openjdk7'
# For the Job templates below replace instances of:
-# PROJECT with your project name (eg. controller)
+# PROJECT_SHORTNAME with your project name (eg. circuitsw)
+# PROJECT_PATH with your project name (eg. ofextensions/circuitsw)
# MAVEN_GOALS with your maven goals to build
# MAVEN_OPTS with your maven options to build
# The purpose of this job template is to setup a ODL verify job
#
# Required Variables:
- # stream: branch with - in place of / (eg. stable-helium)
- # branch: branch (eg. stable/helium)
+ # stream: release stream (eg. stable-lithium or beryllium)
+ # branch: git branch (eg. stable/lithium or master)
- project-type: maven
- node: dynamic_verify
+ project-type: matrix
+ node: matrix_master
concurrent: true
- jdk: '{jdk}'
+
+ axes:
+ - axis:
+ type: slave
+ name: nodes
+ values:
+ - dynamic_verify
+ - axis:
+ type: jdk
+ values: '{obj:jdks}'
logrotate:
daysToKeep: '{build-days-to-keep}'
wrappers:
- build-timeout
- ssh-agent-credentials:
- user: '{ssh-credentials}'
+ users:
+ - '{ssh-credentials}'
triggers:
- gerrit-trigger-patch-submitted:
name: 'snbi'
branch: '{branch}'
- maven:
- maven-name: '{mvn32}'
- root-pom: 'pom.xml'
- goals: 'clean install -V -Dmaven.repo.local=$WORKSPACE/.m2repo -Dorg.ops4j.pax.url.mvn.localRepository=$WORKSPACE/.m2repo '
- maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
- settings: '{snbi-settings}'
- global-settings: '{odl-global-settings}'
- ignore-upstream-changes: true
+ builders:
+ - wipe-org-opendaylight-repo
+ - jacoco-nojava-workaround
+ - provide-maven-settings:
+ global-settings-file: '{odl-global-settings}'
+ settings-file: '{snbi-settings}'
+ - maven-target:
+ maven-version: '{mvn33}'
+ pom: 'pom.xml'
+ goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -Dstream={stream}'
+ java-opts:
+ - '-Xmx1024m -XX:MaxPermSize=256m'
+ settings: '{snbi-settings}'
+ global-settings: '{odl-global-settings}'
publishers:
+ - findbugs
- email-notification:
email-prefix: '[snbi]'
- jacoco-report
# and deploy artifacts to Nexus.
#
# Required Variables:
- # stream: branch with - in place of / (eg. stable-helium)
- # branch: branch (eg. stable/helium)
+ # stream: release stream (eg. stable-lithium or beryllium)
+ # branch: git branch (eg. stable/lithium or master)
project-type: maven
node: dynamic_merge
wrappers:
- build-timeout
- ssh-agent-credentials:
- user: '{ssh-credentials}'
+ users:
+ - '{ssh-credentials}'
triggers:
- gerrit-trigger-patch-merged:
name: 'snbi'
branch: '{branch}'
+ prebuilders:
+ - wipe-org-opendaylight-repo
+ - jacoco-nojava-workaround
+ - provide-maven-settings:
+ global-settings-file: '{odl-global-settings}'
+ settings-file: '{snbi-settings}'
+
maven:
- maven-name: '{mvn32}'
+ maven-name: '{mvn33}'
root-pom: 'pom.xml'
- goals: 'clean install -V -Dmaven.repo.local=$WORKSPACE/.m2repo -Dorg.ops4j.pax.url.mvn.localRepository=$WORKSPACE/.m2repo source:jar javadoc:jar'
+ goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -Dmerge -Dstream={stream}'
maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
settings: '{snbi-settings}'
global-settings: '{odl-global-settings}'
+ post-step-run-condition: UNSTABLE
+
+ 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'
+ settings: '{snbi-settings}'
+ global-settings: '{odl-global-settings}'
+ - maven-target:
+ maven-version: '{mvn33}'
+ pom: deploy-site.xml
+ goals: 'site:deploy -Dstream={stream}'
+ java-opts:
+ - '-Xmx2g'
+ settings: '{snbi-settings}'
+ global-settings: '{odl-global-settings}'
+
+ reporters:
+ - findbugs
publishers:
- email-notification:
# builder and pushes to Sonar analysis.
#
# Required Variables:
- # stream: branch with - in place of / (eg. stable-helium)
- # branch: branch (eg. stable/helium)
+ # stream: release stream (eg. stable-lithium or beryllium)
+ # branch: git branch (eg. stable/lithium or master)
project-type: maven
node: dynamic_verify
wrappers:
- build-timeout
- ssh-agent-credentials:
- user: '{ssh-credentials}'
+ users:
+ - '{ssh-credentials}'
triggers:
- timed: 'H H * * *'
+ prebuilders:
+ - wipe-org-opendaylight-repo
+ - jacoco-nojava-workaround
+ - provide-maven-settings:
+ global-settings-file: '{odl-global-settings}'
+ settings-file: '{snbi-settings}'
+
maven:
- maven-name: '{mvn32}'
+ maven-name: '{mvn33}'
root-pom: 'pom.xml'
- goals: 'clean install -V -Dmaven.repo.local=$WORKSPACE/.m2repo -Dorg.ops4j.pax.url.mvn.localRepository=$WORKSPACE/.m2repo '
+ goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r '
maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
settings: '{snbi-settings}'
global-settings: '{odl-global-settings}'
+ reporters:
+ - findbugs
+
publishers:
- email-notification:
email-prefix: '[snbi]'
- jacoco-report
+- job-template:
+ name: 'snbi-distribution-{stream}'
+
+ # Required variables:
+ # stream: release stream (eg. stable-lithium or beryllium)
+ # branch: git branch (eg. stable/lithium or master)
+
+ project-type: maven
+ node: dynamic_merge
+ jdk: '{jdk}'
+
+ logrotate:
+ daysToKeep: '{build-days-to-keep}'
+ numToKeep: '{build-num-to-keep}'
+ artifactDaysToKeep: '{build-artifact-days-to-keep}'
+ artifactNumToKeep: '{build-artifact-num-to-keep}'
+
+ parameters:
+ - project-parameter:
+ project: 'integration/distribution'
+
+ scm:
+ - git-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: ''
+ branch: '{branch}'
+
+ wrappers:
+ - build-timeout
+ - ssh-agent-credentials:
+ users:
+ - '{ssh-credentials}'
+
+ triggers:
+ - reverse:
+ jobs: '{project}-merge-{stream}'
+ result: 'success'
+
+ prebuilders:
+ - wipe-org-opendaylight-repo
+ - provide-maven-settings:
+ global-settings-file: '{odl-global-settings}'
+ settings-file: '{snbi-settings}'
+
+ maven:
+ maven-name: '{mvn33}'
+ root-pom: 'pom.xml'
+ goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install'
+ maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true'
+ settings: '{integration-settings}'
+ global-settings: '{odl-global-settings}'
+
+ publishers:
+ - email-notification:
+ email-prefix: '[{project}]'
+ - maven-deploy:
+ id: ''
+ unique-version: true
+ deploy-unstable: false
+
- job-template:
name: 'snbi-integration-{stream}'
- disabled: true
+ disabled: false
- # Job template for ODL merge jobs
+ # Job template for ODL integration verify jobs
#
- # The purpose of this job template is to setup a ODL merge job
- # and deploy artifacts to Nexus.
+ # This is similar to a normal verify job, but it runs
+ # when a project that's a dependency of your project
+ # is successfully built.
#
# Required Variables:
- # stream: branch with - in place of / (eg. stable-helium)
- # branch: branch (eg. stable/helium)
+ # stream: release stream (eg. stable-lithium or beryllium)
+ # branch: git branch (eg. stable/lithium or master)
project-type: maven
node: dynamic_merge
wrappers:
- build-timeout
- ssh-agent-credentials:
- user: '{ssh-credentials}'
+ users:
+ - '{ssh-credentials}'
triggers:
- reverse:
- jobs: ''
+ jobs: 'odlparent-merge-{stream}'
result: 'success'
+ prebuilders:
+ - wipe-org-opendaylight-repo
+ - jacoco-nojava-workaround
+ - provide-maven-settings:
+ global-settings-file: '{odl-global-settings}'
+ settings-file: '{snbi-settings}'
+
maven:
- maven-name: '{mvn32}'
+ maven-name: '{mvn33}'
root-pom: 'pom.xml'
- goals: 'clean install -V -Dmaven.repo.local=$WORKSPACE/.m2repo -Dorg.ops4j.pax.url.mvn.localRepository=$WORKSPACE/.m2repo source:jar javadoc:jar'
+ goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r '
maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
settings: '{snbi-settings}'
global-settings: '{odl-global-settings}'
+ reporters:
+ - findbugs
+
publishers:
- email-notification:
- email-prefix: '[snbi]'
- - maven-deploy:
- id: ''
- unique-version: true
- deploy-unstable: false
+ email-prefix: '[snbi] [odlparent]'
- jacoco-report
- job-template:
project-type: maven
node: dynamic_verify
- jdk: '{jdk}'
+ jdk: 'openjdk7'
logrotate:
daysToKeep: '7'
wrappers:
- build-timeout
- ssh-agent-credentials:
- user: '{ssh-credentials}'
+ users:
+ - '{ssh-credentials}'
triggers:
- timed: 'H H * * *'
+ - gerrit-trigger-patch-sonar:
+ name: 'snbi'
+
+ prebuilders:
+ - wipe-org-opendaylight-repo
+ - jacoco-nojava-workaround
+ - provide-maven-settings:
+ global-settings-file: '{odl-global-settings}'
+ settings-file: '{snbi-settings}'
maven:
- maven-name: '{mvn32}'
+ maven-name: '{mvn33}'
root-pom: 'pom.xml'
- goals: 'clean install -V -Dmaven.repo.local=$WORKSPACE/.m2repo -Dorg.ops4j.pax.url.mvn.localRepository=$WORKSPACE/.m2repo -Dsonar'
+ goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -Dsonar'
maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
settings: '{snbi-settings}'
global-settings: '{odl-global-settings}'
+ reporters:
+ - findbugs
+
publishers:
- sonar:
language: 'java'
- email-notification:
email-prefix: '[snbi]'
- jacoco-report
+
+- job-template:
+ name: 'snbi-clm-{stream}'
+
+ project-type: maven
+ node: dynamic_verify
+ jdk: '{jdk}'
+
+ logrotate:
+ daysToKeep: '{build-days-to-keep}'
+ numToKeep: '{build-num-to-keep}'
+ artifactDaysToKeep: '{build-artifact-days-to-keep}'
+ artifactNumToKeep: '{build-artifact-num-to-keep}'
+
+ parameters:
+ - project-parameter:
+ project: '{project}'
+
+ scm:
+ - git-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: ''
+ branch: '{branch}'
+
+ wrappers:
+ - build-timeout
+ - ssh-agent-credentials:
+ users:
+ - '{ssh-credentials}'
+
+ triggers:
+ - timed: '@weekly'
+
+ prebuilders:
+ - wipe-org-opendaylight-repo
+ - provide-maven-settings:
+ global-settings-file: '{odl-global-settings}'
+ settings-file: '{snbi-settings}'
+
+ maven:
+ maven-name: '{mvn33}'
+ root-pom: 'pom.xml'
+ goals: 'clean install com.sonatype.clm:clm-maven-plugin:index -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
+ maven-opts: '-Xmx4096m -XX:MaxPermSize=512m'
+ settings: '{snbi-settings}'
+ global-settings: '{odl-global-settings}'
+
+ postbuilders:
+ - check-clm:
+ application-name: snbi
+
+ publishers:
+ - email-notification:
+ email-prefix: '[snbi]'
+