maven:
maven-name: '{mvn32}'
- root-pom: 'pom.xml'
+ root-pom: 'POM'
goals: 'MAVEN_GOALS source:jar javadoc:jar'
maven-opts: 'MAVEN_OPTS'
settings: '{PROJECT-settings}'
maven:
maven-name: '{mvn32}'
- root-pom: 'pom.xml'
+ root-pom: 'POM'
goals: 'MAVEN_GOALS source:jar javadoc:jar'
maven-opts: 'MAVEN_OPTS'
settings: '{PROJECT-settings}'
maven:
maven-name: '{mvn32}'
- root-pom: 'pom.xml'
+ root-pom: 'POM'
goals: 'MAVEN_GOALS source:jar javadoc:jar'
maven-opts: 'MAVEN_OPTS'
settings: '{PROJECT-settings}'
maven:
maven-name: '{mvn32}'
- root-pom: 'pom.xml'
+ root-pom: 'POM'
goals: 'MAVEN_GOALS -Dsonar'
maven-opts: 'MAVEN_OPTS'
settings: '{PROJECT-settings}'
- axis:
type: jdk
values:
- - openjdk7
+JDKS
logrotate:
daysToKeep: '{build-days-to-keep}'
- wipe-org-opendaylight-repo
- maven-target:
maven-version: '{mvn32}'
- pom: 'pom.xml'
+ pom: 'POM'
goals: 'MAVEN_GOALS'
java-opts:
- 'MAVEN_OPTS'
jobs:
- '{project}-csit-1node-imds-{functionality}-{install}-{stream}'
- '{project}-csit-1node-cds-{functionality}-{install}-{stream}'
+ - '{project}-csit-verify-{functionality}-{stream}'
# The project name
project: 'aaa'
name: aaa-csit-authn-stable-helium
jobs:
- '{project}-csit-1node-imds-{functionality}-{install}-{stream}'
+ - '{project}-csit-verify-{functionality}-{stream}'
# The project name
project: 'aaa'
values:
- openjdk7
+
logrotate:
daysToKeep: '{build-days-to-keep}'
numToKeep: '{build-num-to-keep}'
--- /dev/null
+BRANCHES: master
+DEPENDENCIES: controller,yangtools,odlparent,bpgcep
\ No newline at end of file
--- /dev/null
+# REMOVE THIS LINE IF YOU WANT TO CUSTOMIZE ANYTHING BELOW
+# Otherwise this file will be automatically overwritten by the template
+# autobuilder.
+
+# ODL Releng build templates
+- project:
+ name: alto
+ jobs:
+ - 'alto-verify-{stream}'
+ - 'alto-merge-{stream}'
+ - 'alto-daily-{stream}'
+ - 'alto-integration-{stream}'
+ - 'alto-sonar'
+
+
+ # stream: branch with - in place of / (eg. stable-helium)
+ # branch: branch (eg. stable/helium)
+ stream:
+ - master:
+ branch: 'master'
+
+ project: 'alto'
+ jdk: 'openjdk7'
+
+# For the Job templates below replace instances of:
+# PROJECT with your project name (eg. controller)
+# MAVEN_GOALS with your maven goals to build
+# MAVEN_OPTS with your maven options to build
+
+- job-template:
+ name: 'alto-verify-{stream}'
+
+ # Job template for ODL verify jobs
+ #
+ # 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)
+
+ project-type: matrix
+ node: matrix_master
+ concurrent: true
+
+ axes:
+ - axis:
+ type: slave
+ name: nodes
+ values:
+ - dynamic_verify
+ - axis:
+ type: jdk
+ values:
+ - openjdk7
+
+
+ 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}'
+ - gerrit-parameter:
+ branch: '{branch}'
+
+ scm:
+ - gerrit-trigger-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: '$GERRIT_REFSPEC'
+ choosing-strategy: 'gerrit'
+
+ wrappers:
+ - build-timeout
+ - ssh-agent-credentials:
+ user: '{ssh-credentials}'
+
+ triggers:
+ - gerrit-trigger-patch-submitted:
+ name: 'alto'
+ branch: '{branch}'
+
+ builders:
+ - wipe-org-opendaylight-repo
+ - maven-target:
+ maven-version: '{mvn32}'
+ pom: 'pom.xml'
+ goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r '
+ java-opts:
+ - '-Xmx1024m -XX:MaxPermSize=256m'
+ settings: '{alto-settings}'
+ global-settings: '{odl-global-settings}'
+ - jacoco-nojava-workaround
+
+ publishers:
+ - email-notification:
+ email-prefix: '[alto]'
+ - jacoco-report
+
+- job-template:
+ name: 'alto-merge-{stream}'
+
+ # Job template for ODL merge jobs
+ #
+ # The purpose of this job template is to setup a ODL merge job
+ # and deploy artifacts to Nexus.
+ #
+ # Required Variables:
+ # stream: branch with - in place of / (eg. stable-helium)
+ # branch: branch (eg. stable/helium)
+
+ 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: '{project}'
+
+ scm:
+ - gerrit-trigger-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: ''
+ choosing-strategy: 'default'
+
+ wrappers:
+ - build-timeout
+ - ssh-agent-credentials:
+ user: '{ssh-credentials}'
+
+ triggers:
+ - gerrit-trigger-patch-merged:
+ name: 'alto'
+ branch: '{branch}'
+
+ prebuilders:
+ - wipe-org-opendaylight-repo
+
+ maven:
+ maven-name: '{mvn32}'
+ root-pom: 'pom.xml'
+ goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r source:jar javadoc:jar'
+ maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+ settings: '{alto-settings}'
+ global-settings: '{odl-global-settings}'
+
+ postbuilders:
+ - jacoco-nojava-workaround
+
+ publishers:
+
+ - email-notification:
+ email-prefix: '[alto]'
+ - maven-deploy:
+ id: ''
+ unique-version: true
+ deploy-unstable: false
+ - jacoco-report
+
+- job-template:
+ name: 'alto-daily-{stream}'
+
+ # Job template for daily builders
+ #
+ # The purpose of this job template is to setup a daily/nightly
+ # builder and pushes to Sonar analysis.
+ #
+ # Required Variables:
+ # stream: branch with - in place of / (eg. stable-helium)
+ # branch: branch (eg. stable/helium)
+
+ 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:
+ user: '{ssh-credentials}'
+
+ triggers:
+ - timed: 'H H * * *'
+
+ prebuilders:
+ - wipe-org-opendaylight-repo
+
+ maven:
+ maven-name: '{mvn32}'
+ root-pom: 'pom.xml'
+ goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r source:jar javadoc:jar'
+ maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+ settings: '{alto-settings}'
+ global-settings: '{odl-global-settings}'
+
+ postbuilders:
+ - jacoco-nojava-workaround
+
+ publishers:
+ - email-notification:
+ email-prefix: '[alto]'
+ - jacoco-report
+
+- job-template:
+ name: 'alto-integration-{stream}'
+ disabled: false
+
+ # Job template for ODL merge jobs
+ #
+ # The purpose of this job template is to setup a ODL merge job
+ # and deploy artifacts to Nexus.
+ #
+ # Required Variables:
+ # stream: branch with - in place of / (eg. stable-helium)
+ # branch: branch (eg. stable/helium)
+
+ 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: '{project}'
+
+ scm:
+ - git-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: ''
+ branch: '{branch}'
+
+ wrappers:
+ - build-timeout
+ - ssh-agent-credentials:
+ user: '{ssh-credentials}'
+
+ triggers:
+ - reverse:
+ jobs: 'controller-merge-{stream},yangtools-merge-{stream},odlparent-merge-{stream},bpgcep-merge-{stream}'
+ result: 'success'
+
+ prebuilders:
+ - wipe-org-opendaylight-repo
+
+ maven:
+ maven-name: '{mvn32}'
+ root-pom: 'pom.xml'
+ goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r source:jar javadoc:jar'
+ maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+ settings: '{alto-settings}'
+ global-settings: '{odl-global-settings}'
+
+ postbuilders:
+ - jacoco-nojava-workaround
+
+ publishers:
+ - email-notification:
+ email-prefix: '[alto] [controller] [yangtools] [odlparent] [bpgcep]'
+ - jacoco-report
+
+- job-template:
+ name: 'alto-sonar'
+
+ project-type: maven
+ node: dynamic_verify
+ jdk: '{jdk}'
+
+ logrotate:
+ daysToKeep: '7'
+ numToKeep: '10'
+ artifactDaysToKeep: '1'
+ artifactNumToKeep: '1'
+
+ parameters:
+ - project-parameter:
+ project: '{project}'
+
+ scm:
+ - git-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: ''
+ branch: 'master'
+
+ wrappers:
+ - build-timeout
+ - ssh-agent-credentials:
+ user: '{ssh-credentials}'
+
+ triggers:
+ - timed: 'H H * * *'
+
+ maven:
+ maven-name: '{mvn32}'
+ root-pom: 'pom.xml'
+ 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: '{alto-settings}'
+ global-settings: '{odl-global-settings}'
+
+ postbuilders:
+ - jacoco-nojava-workaround
+
+ publishers:
+ - sonar:
+ language: 'java'
+ maven-opts: '-Xmx6144m -XX:MaxPermSize=1024m'
+ - email-notification:
+ email-prefix: '[alto]'
+ - jacoco-report
+
settings: '{autorelease-settings}'
global-settings: '{odl-global-settings}'
+ postbuilders:
+ - maven-target:
+ maven-version: '{mvn32}'
+ pom: 'pom.xml'
+ goals: 'dependency:sources -l sources.log -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r'
+ java-opts:
+ - '-Xmx4096m -XX:MaxPermSize=1024m'
+ settings: '{autorelease-settings}'
+ global-settings: '{odl-global-settings}'
+ - jacoco-nojava-workaround
+
publishers:
+ - archive-artifacts:
+ artifacts: 'sources.log'
- email-notification:
email-prefix: '[autorelease]'
values:
- openjdk7
+
logrotate:
daysToKeep: '{build-days-to-keep}'
numToKeep: '{build-num-to-keep}'
values:
- openjdk7
+
logrotate:
daysToKeep: '{build-days-to-keep}'
numToKeep: '{build-num-to-keep}'
name: controller-csit-nsf-stable-helium
jobs:
- '{project}-csit-1node-imds-{functionality}-{install}-{stream}'
+ - '{project}-csit-verify-{functionality}-{stream}'
# The project name
project: 'controller'
values:
- openjdk7
+
logrotate:
daysToKeep: '{build-days-to-keep}'
numToKeep: '{build-num-to-keep}'
values:
- openjdk7
+
logrotate:
daysToKeep: '{build-days-to-keep}'
numToKeep: '{build-num-to-keep}'
values:
- openjdk7
+
logrotate:
daysToKeep: '{build-days-to-keep}'
numToKeep: '{build-num-to-keep}'
values:
- openjdk7
+
logrotate:
daysToKeep: '{build-days-to-keep}'
numToKeep: '{build-num-to-keep}'
values:
- openjdk7
+
logrotate:
daysToKeep: '{build-days-to-keep}'
numToKeep: '{build-num-to-keep}'
values:
- openjdk7
+
logrotate:
daysToKeep: '{build-days-to-keep}'
numToKeep: '{build-num-to-keep}'
values:
- openjdk7
+
logrotate:
daysToKeep: '{build-days-to-keep}'
numToKeep: '{build-num-to-keep}'
--- /dev/null
+- project:
+ name: integration-csit-basic-master
+ jobs:
+ - '{project}-csit-1node-imds-{functionality}-{install}-{stream}'
+ - '{project}-csit-1node-cds-{functionality}-{install}-{stream}'
+ - '{project}-csit-verify-{functionality}-{stream}'
+
+ # The project name
+ project: 'integration'
+
+ # The functionality under test
+ functionality: 'basic'
+
+ # Project branches
+ stream:
+ - master:
+ branch: 'master'
+
+ install:
+ - all:
+ scope: 'all'
+
+ # Features to install
+ install-features: 'odl-restconf'
+
+ # Robot custom options
+ robot-options: ''
+
+ # Trigger jobs (upstream dependencies)
+ trigger-jobs: 'yangtools-distribution-{stream},controller-distribution-{stream},openflowjava-distribution-{stream},openflowplugin-distribution-{stream},aaa-distribution-{stream},l2switch-distribution-{stream},ovsdb-distribution-{stream},vtn-distribution-{stream},lispflowmapping-distribution-{stream},integration-distribution-merge-{stream}'
+
--- /dev/null
+- project:
+ name: integration-csit-basic-stable-helium
+ jobs:
+ - '{project}-csit-1node-imds-{functionality}-{install}-{stream}'
+ - '{project}-csit-verify-{functionality}-{stream}'
+
+ # The project name
+ project: 'integration'
+
+ # The functionality under test
+ functionality: 'basic'
+
+ # Project branches
+ stream:
+ - stable-helium:
+ branch: 'stable/helium'
+
+ install:
+ - all:
+ scope: 'all'
+
+ # Features to install
+ install-features: 'odl-restconf'
+
+ # Robot custom options
+ robot-options: ''
+
+ # Trigger jobs (upstream dependencies)
+ trigger-jobs: 'yangtools-distribution-{stream},controller-distribution-{stream},openflowjava-distribution-{stream},openflowplugin-distribution-{stream},aaa-distribution-{stream},l2switch-distribution-{stream},ovsdb-distribution-{stream},vtn-distribution-{stream},lispflowmapping-distribution-{stream},integration-distribution-merge-{stream}'
+
+- job-template:
+ name: '{project}-csit-verify-{functionality}-{stream}'
+
+ project-type: freestyle
+ node: dynamic_robot
+
+ 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'
+ - integration-branch:
+ branch: '{branch}'
+ - integration-bundleurl:
+ bundleurl: 'last'
+ - integration-controller-scope:
+ controller-scope: 'only'
+ - integration-controller-features:
+ controller-features: '{install-features}'
+ - integration-test-options:
+ test-options: '{robot-options}'
+ - integration-test-plan:
+ test-plan: '{project}-{functionality}.txt'
+
+ scm:
+ - gerrit-trigger-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: '$GERRIT_REFSPEC'
+ choosing-strategy: 'gerrit'
+
+ wrappers:
+ - build-timeout
+ - integration-jclouds-controller-mininet:
+ controller-vms: 1
+ mininet-vms: 1
+ - ssh-agent-credentials:
+ user: '{ssh-credentials}'
+
+ triggers:
+ - integration-test-gerrit-trigger-patch-submitted:
+ name: 'integration'
+ branch: '{branch}'
+ project: '{project}'
+
+ builders:
+ - integration-get-slave-addresses
+ - inject:
+ properties-file: 'slave_addresses.txt'
+ - integration-deploy-controller-run-test
+
+ publishers:
+ - integration-robot:
+ unstable-if: 97.0
+ pass-if: 100.0
+ - archive:
+ artifacts: 'karaf.log'
+ - email-notification:
+ email-prefix: '[{project}]'
+
- job-template:
name: '{project}-csit-1node-imds-{functionality}-{install}-{stream}'
root-pom: 'pom.xml'
goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r '
maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
- settings: '{odlparent-settings}'
+ settings: '{integration-settings}'
global-settings: '{odl-global-settings}'
ignore-upstream-changes: true
root-pom: 'pom.xml'
goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r source:jar javadoc:jar'
maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
- settings: '{odlparent-settings}'
+ settings: '{integration-settings}'
global-settings: '{odl-global-settings}'
publishers:
branch-pattern: '**/{branch}'
file-paths:
- compare-type: 'ANT'
- pattern: 'test/**'
+ pattern: 'test/csit/suites/{project}/**'
- trigger:
name: integration-test-gerrit-trigger-patch-merged
values:
- openjdk7
+
logrotate:
daysToKeep: '{build-days-to-keep}'
numToKeep: '{build-num-to-keep}'
jobs:
- '{project}-csit-1node-imds-{functionality}-{install}-{stream}'
- '{project}-csit-1node-cds-{functionality}-{install}-{stream}'
+ - '{project}-csit-verify-{functionality}-{stream}'
# The project name
project: 'l2switch'
name: l2switch-csit-switch-stable-helium
jobs:
- '{project}-csit-1node-imds-{functionality}-{install}-{stream}'
+ - '{project}-csit-verify-{functionality}-{stream}'
# The project name
project: 'l2switch'
values:
- openjdk7
+
logrotate:
daysToKeep: '{build-days-to-keep}'
numToKeep: '{build-num-to-keep}'
values:
- openjdk7
+
logrotate:
daysToKeep: '{build-days-to-keep}'
numToKeep: '{build-num-to-keep}'
jobs:
- '{project}-csit-1node-imds-{functionality}-{install}-{stream}'
- '{project}-csit-1node-cds-{functionality}-{install}-{stream}'
+ - '{project}-csit-verify-{functionality}-{stream}'
# The project name
project: 'lispflowmapping'
scope: 'all'
# Features to install
- install-features: 'odl-lispflowmapping-all'
+ install-features: 'odl-lispflowmapping-all,odl-restconf,odl-mdsal-apidocs'
# Robot custom options
robot-options: ''
name: lispflowmapping-csit-all-stable-helium
jobs:
- '{project}-csit-1node-imds-{functionality}-{install}-{stream}'
+ - '{project}-csit-verify-{functionality}-{stream}'
# The project name
project: 'lispflowmapping'
scope: 'all'
# Features to install
- install-features: 'odl-lispflowmapping-all'
+ install-features: 'odl-lispflowmapping-all,odl-restconf,odl-mdsal-apidocs'
# Robot custom options
robot-options: ''
values:
- openjdk7
+
logrotate:
daysToKeep: '{build-days-to-keep}'
numToKeep: '{build-num-to-keep}'
values:
- openjdk7
+
logrotate:
daysToKeep: '{build-days-to-keep}'
numToKeep: '{build-num-to-keep}'
values:
- openjdk7
+
logrotate:
daysToKeep: '{build-days-to-keep}'
numToKeep: '{build-num-to-keep}'
values:
- openjdk7
+
logrotate:
daysToKeep: '{build-days-to-keep}'
numToKeep: '{build-num-to-keep}'
values:
- openjdk7
+
logrotate:
daysToKeep: '{build-days-to-keep}'
numToKeep: '{build-num-to-keep}'
jobs:
- '{project}-csit-1node-imds-{functionality}-{install}-{stream}'
- '{project}-csit-1node-cds-{functionality}-{install}-{stream}'
+ - '{project}-csit-verify-{functionality}-{stream}'
# The project name
project: 'openflowplugin'
name: openflowplugin-csit-flow-services-stable-helium
jobs:
- '{project}-csit-1node-imds-{functionality}-{install}-{stream}'
+ - '{project}-csit-verify-{functionality}-{stream}'
# The project name
project: 'openflowplugin'
values:
- openjdk7
+
logrotate:
daysToKeep: '{build-days-to-keep}'
numToKeep: '{build-num-to-keep}'
values:
- openjdk7
+
logrotate:
daysToKeep: '{build-days-to-keep}'
numToKeep: '{build-num-to-keep}'
values:
- openjdk7
+
logrotate:
daysToKeep: '{build-days-to-keep}'
numToKeep: '{build-num-to-keep}'
values:
- openjdk7
+
logrotate:
daysToKeep: '{build-days-to-keep}'
numToKeep: '{build-num-to-keep}'
values:
- openjdk7
+
logrotate:
daysToKeep: '{build-days-to-keep}'
numToKeep: '{build-num-to-keep}'
--- /dev/null
+MAVEN_GOALS: clean install -Dcheckstyle.skip=true -Dmaven.repo.local=$WORKSPACE/.m2repo -Dorg.ops4j.pax.url.mvn.localRepository=$WORKSPACE/.m2repo
+DEPENDENCIES: odlparent,bgpcep
\ No newline at end of file
--- /dev/null
+# REMOVE THIS LINE IF YOU WANT TO CUSTOMIZE ANYTHING BELOW
+# Otherwise this file will be automatically overwritten by the template
+# autobuilder.
+
+# ODL Releng build templates
+- project:
+ name: sdninterfaceapp
+ jobs:
+ - 'sdninterfaceapp-verify-{stream}'
+ - 'sdninterfaceapp-merge-{stream}'
+ - 'sdninterfaceapp-daily-{stream}'
+ - 'sdninterfaceapp-integration-{stream}'
+ - 'sdninterfaceapp-sonar'
+
+
+ # stream: branch with - in place of / (eg. stable-helium)
+ # branch: branch (eg. stable/helium)
+ stream:
+ - master:
+ branch: 'master'
+ - stable-helium:
+ branch: 'stable/helium'
+
+ project: 'sdninterfaceapp'
+ jdk: 'openjdk7'
+
+# For the Job templates below replace instances of:
+# PROJECT with your project name (eg. controller)
+# MAVEN_GOALS with your maven goals to build
+# MAVEN_OPTS with your maven options to build
+
+- job-template:
+ name: 'sdninterfaceapp-verify-{stream}'
+
+ # Job template for ODL verify jobs
+ #
+ # 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)
+
+ project-type: matrix
+ node: matrix_master
+ concurrent: true
+
+ axes:
+ - axis:
+ type: slave
+ name: nodes
+ values:
+ - dynamic_verify
+ - axis:
+ type: jdk
+ values:
+ - openjdk7
+
+
+ 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}'
+ - gerrit-parameter:
+ branch: '{branch}'
+
+ scm:
+ - gerrit-trigger-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: '$GERRIT_REFSPEC'
+ choosing-strategy: 'gerrit'
+
+ wrappers:
+ - build-timeout
+ - ssh-agent-credentials:
+ user: '{ssh-credentials}'
+
+ triggers:
+ - gerrit-trigger-patch-submitted:
+ name: 'sdninterfaceapp'
+ branch: '{branch}'
+
+ builders:
+ - wipe-org-opendaylight-repo
+ - maven-target:
+ maven-version: '{mvn32}'
+ pom: 'pom.xml'
+ goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r '
+ java-opts:
+ - '-Xmx1024m -XX:MaxPermSize=256m'
+ settings: '{sdninterfaceapp-settings}'
+ global-settings: '{odl-global-settings}'
+ - jacoco-nojava-workaround
+
+ publishers:
+ - email-notification:
+ email-prefix: '[sdninterfaceapp]'
+ - jacoco-report
+
+- job-template:
+ name: 'sdninterfaceapp-merge-{stream}'
+
+ # Job template for ODL merge jobs
+ #
+ # The purpose of this job template is to setup a ODL merge job
+ # and deploy artifacts to Nexus.
+ #
+ # Required Variables:
+ # stream: branch with - in place of / (eg. stable-helium)
+ # branch: branch (eg. stable/helium)
+
+ 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: '{project}'
+
+ scm:
+ - gerrit-trigger-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: ''
+ choosing-strategy: 'default'
+
+ wrappers:
+ - build-timeout
+ - ssh-agent-credentials:
+ user: '{ssh-credentials}'
+
+ triggers:
+ - gerrit-trigger-patch-merged:
+ name: 'sdninterfaceapp'
+ branch: '{branch}'
+
+ prebuilders:
+ - wipe-org-opendaylight-repo
+
+ maven:
+ maven-name: '{mvn32}'
+ root-pom: 'pom.xml'
+ goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r source:jar javadoc:jar'
+ maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+ settings: '{sdninterfaceapp-settings}'
+ global-settings: '{odl-global-settings}'
+
+ postbuilders:
+ - jacoco-nojava-workaround
+
+ publishers:
+
+ - email-notification:
+ email-prefix: '[sdninterfaceapp]'
+ - maven-deploy:
+ id: ''
+ unique-version: true
+ deploy-unstable: false
+ - jacoco-report
+
+- job-template:
+ name: 'sdninterfaceapp-daily-{stream}'
+
+ # Job template for daily builders
+ #
+ # The purpose of this job template is to setup a daily/nightly
+ # builder and pushes to Sonar analysis.
+ #
+ # Required Variables:
+ # stream: branch with - in place of / (eg. stable-helium)
+ # branch: branch (eg. stable/helium)
+
+ 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:
+ user: '{ssh-credentials}'
+
+ triggers:
+ - timed: 'H H * * *'
+
+ prebuilders:
+ - wipe-org-opendaylight-repo
+
+ maven:
+ maven-name: '{mvn32}'
+ root-pom: 'pom.xml'
+ goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r source:jar javadoc:jar'
+ maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+ settings: '{sdninterfaceapp-settings}'
+ global-settings: '{odl-global-settings}'
+
+ postbuilders:
+ - jacoco-nojava-workaround
+
+ publishers:
+ - email-notification:
+ email-prefix: '[sdninterfaceapp]'
+ - jacoco-report
+
+- job-template:
+ name: 'sdninterfaceapp-integration-{stream}'
+ disabled: false
+
+ # Job template for ODL merge jobs
+ #
+ # The purpose of this job template is to setup a ODL merge job
+ # and deploy artifacts to Nexus.
+ #
+ # Required Variables:
+ # stream: branch with - in place of / (eg. stable-helium)
+ # branch: branch (eg. stable/helium)
+
+ 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: '{project}'
+
+ scm:
+ - git-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: ''
+ branch: '{branch}'
+
+ wrappers:
+ - build-timeout
+ - ssh-agent-credentials:
+ user: '{ssh-credentials}'
+
+ triggers:
+ - reverse:
+ jobs: 'odlparent-merge-{stream},bgpcep-merge-{stream}'
+ result: 'success'
+
+ prebuilders:
+ - wipe-org-opendaylight-repo
+
+ maven:
+ maven-name: '{mvn32}'
+ root-pom: 'pom.xml'
+ goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r source:jar javadoc:jar'
+ maven-opts: '-Xmx1024m -XX:MaxPermSize=256m'
+ settings: '{sdninterfaceapp-settings}'
+ global-settings: '{odl-global-settings}'
+
+ postbuilders:
+ - jacoco-nojava-workaround
+
+ publishers:
+ - email-notification:
+ email-prefix: '[sdninterfaceapp] [odlparent] [bgpcep]'
+ - jacoco-report
+
+- job-template:
+ name: 'sdninterfaceapp-sonar'
+
+ project-type: maven
+ node: dynamic_verify
+ jdk: '{jdk}'
+
+ logrotate:
+ daysToKeep: '7'
+ numToKeep: '10'
+ artifactDaysToKeep: '1'
+ artifactNumToKeep: '1'
+
+ parameters:
+ - project-parameter:
+ project: '{project}'
+
+ scm:
+ - git-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: ''
+ branch: 'master'
+
+ wrappers:
+ - build-timeout
+ - ssh-agent-credentials:
+ user: '{ssh-credentials}'
+
+ triggers:
+ - timed: 'H H * * *'
+
+ maven:
+ maven-name: '{mvn32}'
+ root-pom: 'pom.xml'
+ 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: '{sdninterfaceapp-settings}'
+ global-settings: '{odl-global-settings}'
+
+ postbuilders:
+ - jacoco-nojava-workaround
+
+ publishers:
+ - sonar:
+ language: 'java'
+ maven-opts: '-Xmx6144m -XX:MaxPermSize=1024m'
+ - email-notification:
+ email-prefix: '[sdninterfaceapp]'
+ - jacoco-report
+
values:
- openjdk7
+
logrotate:
daysToKeep: '{build-days-to-keep}'
numToKeep: '{build-num-to-keep}'
values:
- openjdk7
+
logrotate:
daysToKeep: '{build-days-to-keep}'
numToKeep: '{build-num-to-keep}'
values:
- openjdk7
+
logrotate:
daysToKeep: '{build-days-to-keep}'
numToKeep: '{build-num-to-keep}'
values:
- openjdk7
+
logrotate:
daysToKeep: '{build-days-to-keep}'
numToKeep: '{build-num-to-keep}'
values:
- openjdk7
+
logrotate:
daysToKeep: '{build-days-to-keep}'
numToKeep: '{build-num-to-keep}'
values:
- openjdk7
+
logrotate:
daysToKeep: '{build-days-to-keep}'
numToKeep: '{build-num-to-keep}'
values:
- openjdk7
+
logrotate:
daysToKeep: '{build-days-to-keep}'
numToKeep: '{build-num-to-keep}'
values:
- openjdk7
+
logrotate:
daysToKeep: '{build-days-to-keep}'
numToKeep: '{build-num-to-keep}'
values:
- openjdk7
+
logrotate:
daysToKeep: '{build-days-to-keep}'
numToKeep: '{build-num-to-keep}'
--- /dev/null
+- project:
+ name: usc-distribution
+ jobs:
+ - '{project}-distribution-{stream}'
+
+ # The project name
+ project: 'usc'
+
+ # The project branches
+ stream:
+ - master:
+ branch: 'master'
+
+ jdk: 'openjdk7'
+
values:
- openjdk7
+
logrotate:
daysToKeep: '{build-days-to-keep}'
numToKeep: '{build-num-to-keep}'
values:
- openjdk7
+
logrotate:
daysToKeep: '{build-days-to-keep}'
numToKeep: '{build-num-to-keep}'
values:
- openjdk7
+
logrotate:
daysToKeep: '{build-days-to-keep}'
numToKeep: '{build-num-to-keep}'
parameters.append("-t '%s'" % v)
elif k == "BRANCHES" and v is not None:
parameters.append("-b '%s'" % v)
+ elif k == "JDKS" and v is not None:
+ parameters.append("-j '%s'" % v)
+ elif k == "POM" and v is not None:
+ parameters.append("-p '%s'" % v)
elif k == "MVN_GOALS" and v is not None:
parameters.append("-g '%s'" % v)
elif k == "MVN_OPTS" and v is not None:
"Example: aaa,controller,yangtools"))
parser.add_argument("-t", "--templates", help="Job templates to use")
parser.add_argument("-b", "--branches", help="Git Branches to build")
+parser.add_argument("-j", "--jdks", help="JDKs to build against (for verify jobs)") # noqa
+parser.add_argument("-p", "--pom", help="Path to pom.xml to use in Maven build"
+ "(Default: pom.xml")
parser.add_argument("-g", "--mvn-goals", help="Maven Goals")
parser.add_argument("-o", "--mvn-opts", help="Maven Options")
parser.add_argument("-a", "--archive-artifacts",
project_file = os.path.join(project_dir, "%s.yaml" % project)
templates = args.templates # Defaults to all templates
branches = args.branches # Defaults to "master,stable/helium" if not passed
+jdks = args.jdks # Defaults to openjdk7
+pom = args.pom # Defaults to pom.xml
mvn_goals = args.mvn_goals # Defaults to "clean install" if not passsed
mvn_opts = args.mvn_opts # Defaults to blank if not passed
dependencies = args.dependencies
(branch.replace('/', '-'),
branch))
+if not jdks:
+ jdks = "openjdk7"
+else:
+ make_cfg = True
+ cfg_string.append("JDKS: %s" % jdks)
+use_jdks = ""
+for jdk in jdks.split(","):
+ use_jdks += " - %s\n" % jdk
+
+if not pom:
+ pom = "pom.xml"
+else:
+ make_cfg = True
+ cfg_string.append("POM: %s" % pom)
+
if not mvn_goals:
mvn_goals = ("clean install "
"-V " # Show Maven / Java version before building
else:
job_templates_yaml = job_templates_yaml + \
" - '%s-%s-{stream}'\n" % (project, t)
+
with open(project_file, "w") as outfile:
for t in use_templates:
template_file = "jjb-templates/%s.yaml" % t
line = re.sub("PROJECT", project, line)
line = re.sub("DISABLED", disabled, line)
line = re.sub("STREAMS", streams, line)
+ line = re.sub("JDKS", use_jdks, line)
+ line = re.sub("POM", pom, line)
line = re.sub("MAVEN_GOALS", mvn_goals, line)
line = re.sub("MAVEN_OPTS", mvn_opts, line)
line = re.sub("DEPENDENCIES", dependent_jobs, line)