X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=jjb%2Fmdsal%2Fmdsal.yaml;h=7fb888199a643ea26ad56c2f9c92b1e2844663fb;hb=1430c001dcd561076a0c6925de3d2b8bb1fe1d27;hp=1c9e9e7e859f9af3c6b99622b2cd1c3340cdf307;hpb=58384a7ab9ed7c2c19ccf29f97e64e6ebb129485;p=releng%2Fbuilder.git diff --git a/jjb/mdsal/mdsal.yaml b/jjb/mdsal/mdsal.yaml index 1c9e9e7e8..7fb888199 100644 --- a/jjb/mdsal/mdsal.yaml +++ b/jjb/mdsal/mdsal.yaml @@ -8,22 +8,30 @@ jobs: - 'mdsal-verify-{stream}' - 'mdsal-merge-{stream}' - - 'mdsal-daily-{stream}' + - 'mdsal-periodic-{stream}' - 'mdsal-distribution-{stream}' - 'mdsal-integration-{stream}' - 'mdsal-sonar' - 'mdsal-clm-{stream}' + - 'mdsal-validate-autorelease-{stream}' # stream: release stream (eg. stable-lithium or beryllium) # branch: git branch (eg. stable/lithium or master) stream: - - beryllium: + - boron: branch: 'master' + jdk: openjdk8 + jdks: + - openjdk8 + disable_autorelease: False + - beryllium: + branch: 'stable/beryllium' jdk: openjdk7 jdks: - openjdk7 - openjdk8 + disable_autorelease: False project: 'mdsal' @@ -69,6 +77,8 @@ project: '{project}' - gerrit-parameter: branch: '{branch}' + - gerrit-refspec-parameter: + refspec: 'refs/heads/{branch}' scm: - gerrit-trigger-scm: @@ -92,13 +102,13 @@ - jacoco-nojava-workaround - provide-maven-settings: global-settings-file: '{odl-global-settings}' - settings-file: '{yangtools-settings}' + settings-file: '{mdsal-settings}' - maven-target: maven-version: '{mvn33}' pom: 'pom.xml' - goals: 'clean install -Dintegrationtests' + goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -Dmaven.compile.fork=true clean install -Dintegrationtests -Djenkins -Dstream={stream}' java-opts: - - '-Xmx2048m -XX:MaxPermSize=1024m -Dmaven.compile.fork=true' + - '-Xmx2048m -XX:MaxPermSize=1024m' settings: '{mdsal-settings}' global-settings: '{odl-global-settings}' @@ -133,6 +143,10 @@ parameters: - project-parameter: project: '{project}' + - gerrit-parameter: + branch: '{branch}' + - gerrit-refspec-parameter: + refspec: 'refs/heads/{branch}' scm: - gerrit-trigger-scm: @@ -147,6 +161,7 @@ - '{ssh-credentials}' triggers: + - timed: 'H H * * 0' - gerrit-trigger-patch-merged: name: 'mdsal' branch: '{branch}' @@ -156,20 +171,53 @@ - jacoco-nojava-workaround - provide-maven-settings: global-settings-file: '{odl-global-settings}' - settings-file: '{yangtools-settings}' + settings-file: '{mdsal-settings}' maven: maven-name: '{mvn33}' root-pom: 'pom.xml' - goals: 'clean install -Dintegrationtests -Dmerge' - maven-opts: '-Xmx2048m -XX:MaxPermSize=1024m -Dmaven.compile.fork=true' + goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -Dmaven.compile.fork=true clean install -Dintegrationtests -Djenkins -Dmerge -Dstream={stream}' + maven-opts: '-Xmx2048m -XX:MaxPermSize=1024m' settings: '{mdsal-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: '{mdsal-settings}' + global-settings: '{odl-global-settings}' + - maven-target: + maven-version: '{mvn33}' + pom: deploy-site.xml + goals: 'site:deploy -Dstream={stream}' + java-opts: + - '-Xmx2g' + settings: '{mdsal-settings}' + global-settings: '{odl-global-settings}' reporters: - findbugs publishers: + - archive-artifacts: + artifacts: '**/target/surefire-reports/*-output.txt, ' - email-notification: email-prefix: '[mdsal]' - maven-deploy: @@ -179,12 +227,12 @@ - jacoco-report - job-template: - name: 'mdsal-daily-{stream}' + name: 'mdsal-periodic-{stream}' - # 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) @@ -217,20 +265,20 @@ - '{ssh-credentials}' triggers: - - timed: 'H H * * *' + - timed: '@daily' prebuilders: - wipe-org-opendaylight-repo - jacoco-nojava-workaround - provide-maven-settings: global-settings-file: '{odl-global-settings}' - settings-file: '{yangtools-settings}' + settings-file: '{mdsal-settings}' maven: maven-name: '{mvn33}' root-pom: 'pom.xml' - goals: 'clean install -Dintegrationtests' - maven-opts: '-Xmx2048m -XX:MaxPermSize=1024m -Dmaven.compile.fork=true' + goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -Dmaven.compile.fork=true clean install -Dintegrationtests -Djenkins' + maven-opts: '-Xmx2048m -XX:MaxPermSize=1024m' settings: '{mdsal-settings}' global-settings: '{odl-global-settings}' @@ -261,7 +309,7 @@ parameters: - project-parameter: - project: 'integration' + project: 'integration/distribution' scm: - git-scm: @@ -284,12 +332,12 @@ - wipe-org-opendaylight-repo - provide-maven-settings: global-settings-file: '{odl-global-settings}' - settings-file: '{yangtools-settings}' + settings-file: '{mdsal-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' + 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}' @@ -352,13 +400,13 @@ - jacoco-nojava-workaround - provide-maven-settings: global-settings-file: '{odl-global-settings}' - settings-file: '{yangtools-settings}' + settings-file: '{mdsal-settings}' maven: maven-name: '{mvn33}' root-pom: 'pom.xml' - goals: 'clean install -Dintegrationtests' - maven-opts: '-Xmx2048m -XX:MaxPermSize=1024m -Dmaven.compile.fork=true' + goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -Dmaven.compile.fork=true clean install -Dintegrationtests -Djenkins' + maven-opts: '-Xmx2048m -XX:MaxPermSize=1024m' settings: '{mdsal-settings}' global-settings: '{odl-global-settings}' @@ -400,7 +448,7 @@ - '{ssh-credentials}' triggers: - - timed: 'H H * * *' + - timed: '@weekly' - gerrit-trigger-patch-sonar: name: 'mdsal' @@ -409,13 +457,13 @@ - jacoco-nojava-workaround - provide-maven-settings: global-settings-file: '{odl-global-settings}' - settings-file: '{yangtools-settings}' + settings-file: '{mdsal-settings}' maven: maven-name: '{mvn33}' root-pom: 'pom.xml' - goals: 'clean install -Dintegrationtests -Dsonar' - maven-opts: '-Xmx2048m -XX:MaxPermSize=1024m -Dmaven.compile.fork=true' + goals: '-Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -Dmaven.compile.fork=true clean install -Dintegrationtests -Djenkins -Dsonar' + maven-opts: '-Xmx2048m -XX:MaxPermSize=1024m' settings: '{mdsal-settings}' global-settings: '{odl-global-settings}' @@ -466,17 +514,18 @@ - wipe-org-opendaylight-repo - provide-maven-settings: global-settings-file: '{odl-global-settings}' - settings-file: '{yangtools-settings}' + settings-file: '{mdsal-settings}' 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' + 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: '{mdsal-settings}' global-settings: '{odl-global-settings}' postbuilders: + - shell: 'find . -regex ".*karaf/target" | xargs rm -rf' - check-clm: application-name: mdsal @@ -484,3 +533,103 @@ - email-notification: email-prefix: '[mdsal]' +- job-template: + name: 'mdsal-validate-autorelease-{stream}' + disabled: '{obj:disable_autorelease}' + + project-type: maven + node: dynamic_verify + concurrent: true + 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}' + - gerrit-parameter: + branch: '{branch}' + - autorelease-release-tag: + release-tag: 'validate' + - autorelease-release-branch: + release-branch: '{branch}' + - autorelease-release-datestamp: + datestamp: true + + scm: + - git: + url: 'https://git.opendaylight.org/gerrit/releng/autorelease' + refspec: '' + branches: + - 'origin/{branch}' + skip-tag: true + submodule: + recursive: true + + wrappers: + - autorelease-build-timeout + - ssh-agent-credentials: + users: + - '{ssh-credentials}' + + triggers: + - gerrit: + server-name: 'OpenDaylight' + trigger-on: + - patchset-created-event: + exclude-drafts: 'false' + exclude-trivial-rebase: 'false' + exclude-no-code-change: 'false' + - draft-published-event + - comment-added-contains-event: + comment-contains-value: 'recheck' + - comment-added-contains-event: + comment-contains-value: 'reverify' + - comment-added-contains-event: + comment-contains-value: 'revalidate' + projects: + - project-compare-type: 'ANT' + project-pattern: 'mdsal' + branches: + - branch-compare-type: 'ANT' + branch-pattern: '**/{branch}' + + prebuilders: + - wipe-org-opendaylight-repo + - jacoco-nojava-workaround + - autorelease-checkout-gerrit-patch + - autorelease-generate-taglist + - autorelease-generate-release-patches + - maven-target: + maven-version: '{mvn33}' + pom: validate-pom.xml + 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}' + global-settings: '{odl-global-settings}' + + maven: + maven-name: '{mvn33}' + root-pom: 'pom.xml' + 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}' + automatic-archiving: false + post-step-run-condition: UNSTABLE + + postbuilders: + - shell: "./scripts/list-project-dependencies.sh" + - autorelease-sys-stats + + publishers: + - archive-artifacts: + artifacts: '*.log' + - email-notification: + email-prefix: '[autorelease] [mdsal]' +