X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=jjb%2Fcontroller%2Fcontroller.yaml;h=e584e7e05e0f1c076804cbe99f4059869d9650b4;hb=487b9c5b46d1824cbe49557db6cc1a89099673f7;hp=a7a31d1e8595a7503f11bd691cc0bcc95f351064;hpb=10b640dfac95aa0c0e4e4fe3ccdb782f8f796ec3;p=releng%2Fbuilder.git diff --git a/jjb/controller/controller.yaml b/jjb/controller/controller.yaml index a7a31d1e8..e584e7e05 100644 --- a/jjb/controller/controller.yaml +++ b/jjb/controller/controller.yaml @@ -6,22 +6,36 @@ - project: name: controller jobs: - - 'controller-verify-{stream}' - 'controller-merge-{stream}' - 'controller-daily-{stream}' + - 'controller-distribution-{stream}' - 'controller-integration-{stream}' - 'controller-sonar' + - 'controller-clm-{stream}' + # stream: branch with - in place of / (eg. stable-helium) # branch: branch (eg. stable/helium) stream: - master: branch: 'master' + jdk: openjdk7 + jdks: + - openjdk7 + - openjdk8 - stable-helium: branch: 'stable/helium' + jdk: openjdk7 + jdks: + - openjdk7 + - stable-lithium: + branch: 'stable/lithium' + jdk: openjdk7 + jdks: + - openjdk7 + - openjdk8 project: 'controller' - jdk: 'openjdk7' # For the Job templates below replace instances of: # PROJECT with your project name (eg. controller) @@ -29,19 +43,19 @@ # MAVEN_OPTS with your maven options to build - job-template: - name: 'controller-verify-{stream}' + name: 'controller-merge-{stream}' - # Job template for ODL verify jobs + # Job template for ODL merge jobs # - # The purpose of this job template is to setup a ODL verify job + # 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_verify - concurrent: true + node: dynamic_merge jdk: '{jdk}' logrotate: @@ -53,52 +67,62 @@ parameters: - project-parameter: project: '{project}' - - gerrit-parameter: - branch: '{branch}' scm: - gerrit-trigger-scm: credentials-id: '{ssh-credentials}' - refspec: '$GERRIT_REFSPEC' - choosing-strategy: 'gerrit' + refspec: '' + choosing-strategy: 'default' wrappers: - build-timeout - ssh-agent-credentials: - user: '{ssh-credentials}' + users: + - '{ssh-credentials}' triggers: - - gerrit-trigger-patch-submitted: + - gerrit-trigger-patch-merged: name: 'controller' branch: '{branch}' + prebuilders: + - wipe-org-opendaylight-repo + - jacoco-nojava-workaround + maven: - maven-name: '{mvn32}' + maven-name: '{mvn33}' root-pom: 'pom.xml' - goals: '-Dmaven.repo.local=$WORKSPACE/.m2repo -Dorg.ops4j.pax.url.mvn.localRepository=$WORKSPACE/.m2repo clean install -Pintegrationtests,docs' + goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install -Pintegrationtests,docs -Dmerge' maven-opts: '-Xmx4096m -XX:MaxPermSize=1024m -Dmaven.compile.fork=true' settings: '{controller-settings}' global-settings: '{odl-global-settings}' - ignore-upstream-changes: true + + reporters: + - findbugs publishers: - email-notification: email-prefix: '[controller]' + - maven-deploy: + id: '' + unique-version: true + deploy-unstable: false + - jacoco-report - job-template: - name: 'controller-merge-{stream}' + name: 'controller-daily-{stream}' - # Job template for ODL merge jobs + # Job template for daily builders # - # The purpose of this job template is to setup a ODL merge job - # and deploy artifacts to Nexus. + # 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_merge + node: dynamic_verify jdk: '{jdk}' logrotate: @@ -112,51 +136,45 @@ project: '{project}' scm: - - gerrit-trigger-scm: + - git-scm: credentials-id: '{ssh-credentials}' refspec: '' - choosing-strategy: 'default' + branch: '{branch}' wrappers: - build-timeout - ssh-agent-credentials: - user: '{ssh-credentials}' + users: + - '{ssh-credentials}' triggers: - - gerrit-trigger-patch-merged: - name: 'controller' - branch: '{branch}' + - timed: 'H H * * *' + + prebuilders: + - wipe-org-opendaylight-repo + - jacoco-nojava-workaround maven: - maven-name: '{mvn32}' + maven-name: '{mvn33}' root-pom: 'pom.xml' - goals: '-Dmaven.repo.local=$WORKSPACE/.m2repo -Dorg.ops4j.pax.url.mvn.localRepository=$WORKSPACE/.m2repo clean install -Pintegrationtests,docs' + goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install -Pintegrationtests,docs' maven-opts: '-Xmx4096m -XX:MaxPermSize=1024m -Dmaven.compile.fork=true' settings: '{controller-settings}' global-settings: '{odl-global-settings}' + reporters: + - findbugs + publishers: - email-notification: email-prefix: '[controller]' - - maven-deploy: - id: '' - unique-version: true - deploy-unstable: false + - jacoco-report - job-template: - name: 'controller-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) + name: 'controller-distribution-{stream}' project-type: maven - node: dynamic_verify + node: dynamic_merge jdk: '{jdk}' logrotate: @@ -167,7 +185,7 @@ parameters: - project-parameter: - project: '{project}' + project: 'integration' scm: - git-scm: @@ -178,32 +196,42 @@ wrappers: - build-timeout - ssh-agent-credentials: - user: '{ssh-credentials}' + users: + - '{ssh-credentials}' triggers: - - timed: 'H H * * *' + - reverse: + jobs: '{project}-merge-{stream}' + result: 'success' + + prebuilders: + - wipe-org-opendaylight-repo maven: - maven-name: '{mvn32}' + maven-name: '{mvn33}' root-pom: 'pom.xml' - goals: '-Dmaven.repo.local=$WORKSPACE/.m2repo -Dorg.ops4j.pax.url.mvn.localRepository=$WORKSPACE/.m2repo clean install -Pintegrationtests,docs' - maven-opts: '-Xmx4096m -XX:MaxPermSize=1024m -Dmaven.compile.fork=true' - settings: '{controller-settings}' + 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: '[controller]' - - jacoco-report + email-prefix: '[{project}]' + - maven-deploy: + id: '' + unique-version: true + deploy-unstable: false - job-template: name: 'controller-integration-{stream}' 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) @@ -232,35 +260,40 @@ wrappers: - build-timeout - ssh-agent-credentials: - user: '{ssh-credentials}' + users: + - '{ssh-credentials}' triggers: - reverse: - jobs: 'yangtools-merge-{stream},aaa-merge-{stream}' + jobs: 'odlparent-merge-{stream},yangtools-merge-{stream},aaa-merge-{stream}' result: 'success' + prebuilders: + - wipe-org-opendaylight-repo + - jacoco-nojava-workaround + maven: - maven-name: '{mvn32}' + maven-name: '{mvn33}' root-pom: 'pom.xml' - goals: '-Dmaven.repo.local=$WORKSPACE/.m2repo -Dorg.ops4j.pax.url.mvn.localRepository=$WORKSPACE/.m2repo clean install -Pintegrationtests,docs' + goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install -Pintegrationtests,docs' maven-opts: '-Xmx4096m -XX:MaxPermSize=1024m -Dmaven.compile.fork=true' settings: '{controller-settings}' global-settings: '{odl-global-settings}' + reporters: + - findbugs + publishers: - email-notification: - email-prefix: '[controller] [yangtools] [aaa]' - - maven-deploy: - id: '' - unique-version: true - deploy-unstable: false + email-prefix: '[controller] [odlparent] [yangtools] [aaa]' + - jacoco-report - job-template: name: 'controller-sonar' project-type: maven node: dynamic_verify - jdk: '{jdk}' + jdk: 'openjdk7' logrotate: daysToKeep: '7' @@ -281,22 +314,83 @@ wrappers: - build-timeout - ssh-agent-credentials: - user: '{ssh-credentials}' + users: + - '{ssh-credentials}' triggers: - timed: 'H H * * *' + prebuilders: + - wipe-org-opendaylight-repo + - jacoco-nojava-workaround + maven: - maven-name: '{mvn32}' + maven-name: '{mvn33}' root-pom: 'pom.xml' - goals: '-Dmaven.repo.local=$WORKSPACE/.m2repo -Dorg.ops4j.pax.url.mvn.localRepository=$WORKSPACE/.m2repo clean install -Pintegrationtests,docs' + goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install -Pintegrationtests,docs -Dsonar' maven-opts: '-Xmx4096m -XX:MaxPermSize=1024m -Dmaven.compile.fork=true' settings: '{controller-settings}' global-settings: '{odl-global-settings}' + reporters: + - findbugs + publishers: - sonar: language: 'java' maven-opts: '-Xmx6144m -XX:MaxPermSize=1024m' - email-notification: email-prefix: '[controller]' + - jacoco-report + +- job-template: + name: 'controller-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 + + maven: + maven-name: '{mvn33}' + root-pom: 'pom.xml' + goals: '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: '{controller-settings}' + global-settings: '{odl-global-settings}' + + postbuilders: + - check-clm: + application-name: controller + + publishers: + - email-notification: + email-prefix: '[controller]' +