X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=jjb%2Farmoury%2Farmoury.yaml;h=24eca1faeb4c4992d159a92cf1fb7dc5759e0e3f;hb=46a6e3714a42994591c5287e2240d823f7f9d039;hp=1195420d68f70034b0ceb023d466b7dee7137be7;hpb=f0410b63b98ac55f67349dda1623f2f18aacb4c5;p=releng%2Fbuilder.git diff --git a/jjb/armoury/armoury.yaml b/jjb/armoury/armoury.yaml index 1195420d6..24eca1fae 100644 --- a/jjb/armoury/armoury.yaml +++ b/jjb/armoury/armoury.yaml @@ -8,8 +8,9 @@ jobs: - 'armoury-verify-{stream}' - 'armoury-merge-{stream}' - - 'armoury-daily-{stream}' + - 'armoury-periodic-{stream}' - 'armoury-distribution-{stream}' + - 'armoury-distribution-check-{stream}' - 'armoury-integration-{stream}' - 'armoury-sonar' - 'armoury-clm-{stream}' @@ -19,20 +20,22 @@ # stream: release stream (eg. stable-lithium or beryllium) # branch: git branch (eg. stable/lithium or master) stream: - - pre-boron: - branch: 'pre-boron' + - boron: + branch: 'master' jdk: openjdk8 jdks: - openjdk8 - openjdk7 disable_autorelease: True + disable_distribution_check: False - beryllium: - branch: 'master' + branch: 'stable/beryllium' jdk: openjdk8 jdks: - openjdk8 - openjdk7 - disable_autorelease: False + disable_autorelease: True + disable_distribution_check: False project: 'armoury' @@ -107,7 +110,7 @@ - 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}' + goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -Djenkins -Dstream={stream}' java-opts: - '-Xmx2048m -XX:MaxPermSize=256m -Dmaven.compile.fork=true' settings: '{armoury-settings}' @@ -136,8 +139,8 @@ jdk: '{jdk}' logrotate: - daysToKeep: '{build-days-to-keep}' - numToKeep: '{build-num-to-keep}' + daysToKeep: '14' + numToKeep: '10' artifactDaysToKeep: '{build-artifact-days-to-keep}' artifactNumToKeep: '{build-artifact-num-to-keep}' @@ -162,6 +165,7 @@ - '{ssh-credentials}' triggers: + - timed: 'H H * * 0' - gerrit-trigger-patch-merged: name: 'armoury' branch: '{branch}' @@ -176,7 +180,7 @@ maven: maven-name: '{mvn33}' root-pom: 'pom.xml' - goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -Dmerge -Dstream={stream}' + goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -Djenkins -Dmerge -Dstream={stream}' maven-opts: '-Xmx2048m -XX:MaxPermSize=256m -Dmaven.compile.fork=true' settings: '{armoury-settings}' global-settings: '{odl-global-settings}' @@ -216,6 +220,8 @@ - findbugs publishers: + - archive-artifacts: + artifacts: '**/target/surefire-reports/*-output.txt, ' - email-notification: email-prefix: '[armoury]' - maven-deploy: @@ -225,12 +231,13 @@ - jacoco-report - job-template: - name: 'armoury-daily-{stream}' + name: 'armoury-periodic-{stream}' + disabled: false - # Job template for daily builders + # Job template for periodic builders # - # The purpose of this job template is to setup a daily/nightly - # builder and pushes to Sonar analysis. + # The purpose of this job template is to setup a periodic + # builder. # # Required Variables: # stream: release stream (eg. stable-lithium or beryllium) @@ -241,8 +248,8 @@ jdk: '{jdk}' logrotate: - daysToKeep: '{build-days-to-keep}' - numToKeep: '{build-num-to-keep}' + daysToKeep: '14' + numToKeep: '10' artifactDaysToKeep: '{build-artifact-days-to-keep}' artifactNumToKeep: '{build-artifact-num-to-keep}' @@ -263,7 +270,7 @@ - '{ssh-credentials}' triggers: - - timed: 'H H * * 7' + - timed: '@daily' prebuilders: - wipe-org-opendaylight-repo @@ -275,7 +282,7 @@ maven: maven-name: '{mvn33}' root-pom: 'pom.xml' - goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r ' + goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -Djenkins' maven-opts: '-Xmx2048m -XX:MaxPermSize=256m -Dmaven.compile.fork=true' settings: '{armoury-settings}' global-settings: '{odl-global-settings}' @@ -335,7 +342,7 @@ maven: maven-name: '{mvn33}' root-pom: 'pom.xml' - goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r clean install' + goals: 'clean install -Djenkins -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r' maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true' settings: '{integration-settings}' global-settings: '{odl-global-settings}' @@ -348,6 +355,109 @@ unique-version: true deploy-unstable: false +# Template: integration-patch-distribution-{stream} +# Goal: Build a patch and make sure the distribution can deploy with this change +# Operation: This job template builds a patch, creates a distribution containing +# the patch, and triggers the distribution deploy test + +- job-template: + name: 'armoury-distribution-check-{stream}' + disabled: '{obj:disable_distribution_check}' + + project-type: maven + node: dynamic_verify + concurrent: true + jdk: '{jdk}' + + logrotate: + daysToKeep: '14' + numToKeep: '10' + artifactDaysToKeep: '{build-artifact-days-to-keep}' + artifactNumToKeep: '{build-artifact-num-to-keep}' + + parameters: + - gerrit-project-parameter: + project: '{project}' + - gerrit-refspec-parameter: + refspec: '{branch}' + - project-parameter: + project: '{project}' + - integration-distribution-git-url + + scm: + - integration-gerrit-scm: + credentials-id: '{ssh-credentials}' + basedir: '$GERRIT_PROJECT' + refspec: '$GERRIT_REFSPEC' + branch: '{branch}' + - integration-distribution-scm: + credentials-id: '{ssh-credentials}' + branch: '{branch}' + + wrappers: + - build-timeout + - ssh-agent-credentials: + users: + - '{ssh-credentials}' + + triggers: + - gerrit: + server-name: 'OpenDaylight' + trigger-on: + - patchset-created-event: + exclude-drafts: 'true' + exclude-trivial-rebase: 'false' + exclude-no-code-change: 'true' + - draft-published-event + - comment-added-contains-event: + comment-contains-value: 'test-distribution' + projects: + - project-compare-type: 'ANT' + project-pattern: '{name}' + branches: + - branch-compare-type: 'ANT' + branch-pattern: '**/{branch}' + skip-vote: + successful: true + failed: true + unstable: true + notbuilt: true + + prebuilders: + - integration-get-bundle-url + - inject: + properties-file: 'bundle.txt' + - wipe-org-opendaylight-repo + - maven-target: + maven-version: '{mvn33}' + pom: '$GERRIT_PROJECT/pom.xml' + goals: 'clean install -Djenkins -DskipTests -Dcheckstyle.skip=true -Dmaven.javadoc.skip=true -Dmaven.site.skip=true -DgenerateReports=false -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -Dstream={stream}' + java-opts: + - '-Xmx4096m -XX:MaxPermSize=1024m -Dmaven.compile.fork=true' + settings: '{armoury-settings}' + global-settings: '{odl-global-settings}' + + maven: + maven-name: '{mvn33}' + root-pom: 'distribution/pom.xml' + goals: 'clean install -Djenkins -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r' + maven-opts: '-Xmx1024m -XX:MaxPermSize=256m -Dmaven.compile.fork=true' + settings: '{armoury-settings}' + global-settings: '{odl-global-settings}' + ignore-upstream-changes: true + post-step-run-condition: 'SUCCESS' + + postbuilders: + - trigger-builds: + - project: 'integration-distribution-deploy-{stream}' + block: true + predefined-parameters: + BUNDLEURL=$BUNDLEURL + + publishers: + - email-notification: + email-prefix: '[armoury]' + - job-template: name: 'armoury-integration-{stream}' disabled: false @@ -403,7 +513,7 @@ maven: maven-name: '{mvn33}' root-pom: 'pom.xml' - goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r ' + goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -Djenkins' maven-opts: '-Xmx2048m -XX:MaxPermSize=256m -Dmaven.compile.fork=true' settings: '{armoury-settings}' global-settings: '{odl-global-settings}' @@ -418,10 +528,11 @@ - job-template: name: 'armoury-sonar' + disabled: false project-type: maven node: dynamic_verify - jdk: 'openjdk7' + jdk: 'openjdk8' logrotate: daysToKeep: '7' @@ -437,7 +548,7 @@ - git-scm: credentials-id: '{ssh-credentials}' refspec: '' - branch: 'pre-boron' + branch: 'master' wrappers: - build-timeout @@ -460,7 +571,7 @@ maven: maven-name: '{mvn33}' root-pom: 'pom.xml' - goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -Dsonar' + goals: 'clean install -V -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -Djenkins -Dsonar' maven-opts: '-Xmx2048m -XX:MaxPermSize=256m -Dmaven.compile.fork=true' settings: '{armoury-settings}' global-settings: '{odl-global-settings}' @@ -478,6 +589,7 @@ - job-template: name: 'armoury-clm-{stream}' + disabled: false project-type: maven node: dynamic_verify @@ -517,12 +629,13 @@ maven: maven-name: '{mvn33}' root-pom: 'pom.xml' - goals: 'clean install com.sonatype.clm:clm-maven-plugin:index -DskipTests=true -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r' + goals: 'clean install com.sonatype.clm:clm-maven-plugin:index -Djenkins -DskipTests=true -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r' maven-opts: '-Xmx4096m -XX:MaxPermSize=512m' settings: '{armoury-settings}' global-settings: '{odl-global-settings}' postbuilders: + - shell: 'find . -regex ".*karaf/target" | xargs rm -rf' - check-clm: application-name: armoury @@ -604,7 +717,7 @@ - maven-target: maven-version: '{mvn33}' pom: validate-pom.xml - goals: 'clean install -T1.5C -DskipTests -Dcheckstyle.skip=true -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r' + goals: 'clean install -T1.5C -Djenkins -DskipTests -Dcheckstyle.skip=true -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r' java-opts: - '-Xmx8g' settings: '{autorelease-settings}' @@ -613,7 +726,7 @@ maven: maven-name: '{mvn33}' root-pom: 'pom.xml' - goals: 'clean validate -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r' + goals: 'clean validate -Djenkins -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r' maven-opts: '-Xmx8g -XX:MaxPermSize=1024m -Dmaven.compile.fork=true' settings: '{autorelease-settings}' global-settings: '{odl-global-settings}'