From f34bcd3f102dc250f5f58cbfe5498badcfa8f56d Mon Sep 17 00:00:00 2001 From: Ed Warnicke Date: Tue, 8 Sep 2015 08:51:42 -0700 Subject: [PATCH] Initial commit of armoury jjb Change-Id: I44081d249b5e04a0fdac617aba7f6f693a329cfe Signed-off-by: Ed Warnicke --- jjb/armoury/armoury.cfg | 12 + jjb/armoury/armoury.yaml | 473 +++++++++++++++++++++++++++++++++++++++ 2 files changed, 485 insertions(+) create mode 100644 jjb/armoury/armoury.cfg create mode 100644 jjb/armoury/armoury.yaml diff --git a/jjb/armoury/armoury.cfg b/jjb/armoury/armoury.cfg new file mode 100644 index 000000000..7e2aed208 --- /dev/null +++ b/jjb/armoury/armoury.cfg @@ -0,0 +1,12 @@ +STREAMS: +- beryllium: + branch: master + jdks: openjdk7 +- stable-lithium: + branch: stable/lithium + jdks: openjdk7 +- stable-helium: + branch: stable/helium + jdks: openjdk7 +MVN_OPTS: -Xmx2048m -XX:MaxPermSize=256m -Dmaven.compile.fork=true +DEPENDENCIES: odlparent,yangtools,controller,mdsal diff --git a/jjb/armoury/armoury.yaml b/jjb/armoury/armoury.yaml new file mode 100644 index 000000000..1a1ab73c5 --- /dev/null +++ b/jjb/armoury/armoury.yaml @@ -0,0 +1,473 @@ +# 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: armoury + jobs: + - 'armoury-verify-{stream}' + - 'armoury-merge-{stream}' + - 'armoury-daily-{stream}' + - 'armoury-distribution-{stream}' + - 'armoury-integration-{stream}' + - 'armoury-sonar' + - 'armoury-clm-{stream}' + + + # stream: release stream (eg. stable-lithium or beryllium) + # branch: git branch (eg. stable/lithium or master) + stream: + - 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: 'armoury' + +# 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: 'armoury-verify-{stream}' + + # Job template for ODL verify jobs + # + # The purpose of this job template is to setup a ODL verify job + # + # Required Variables: + # stream: release stream (eg. stable-lithium or beryllium) + # branch: git branch (eg. stable/lithium or master) + + project-type: matrix + node: matrix_master + concurrent: true + + axes: + - axis: + type: slave + name: nodes + values: + - dynamic_verify + - axis: + type: jdk + values: '{obj:jdks}' + + 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: + users: + - '{ssh-credentials}' + + triggers: + - gerrit-trigger-patch-submitted: + name: 'armoury' + branch: '{branch}' + + builders: + - wipe-org-opendaylight-repo + - jacoco-nojava-workaround + - 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 ' + java-opts: + - '-Xmx2048m -XX:MaxPermSize=256m -Dmaven.compile.fork=true' + settings: '{armoury-settings}' + global-settings: '{odl-global-settings}' + + publishers: + - findbugs + - email-notification: + email-prefix: '[armoury]' + - jacoco-report + +- job-template: + name: 'armoury-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: 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: '{project}' + + scm: + - gerrit-trigger-scm: + credentials-id: '{ssh-credentials}' + refspec: '' + choosing-strategy: 'default' + + wrappers: + - build-timeout + - ssh-agent-credentials: + users: + - '{ssh-credentials}' + + triggers: + - gerrit-trigger-patch-merged: + name: 'armoury' + branch: '{branch}' + + prebuilders: + - wipe-org-opendaylight-repo + - jacoco-nojava-workaround + + 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' + maven-opts: '-Xmx2048m -XX:MaxPermSize=256m -Dmaven.compile.fork=true' + settings: '{armoury-settings}' + global-settings: '{odl-global-settings}' + + reporters: + - findbugs + + publishers: + - email-notification: + email-prefix: '[armoury]' + - maven-deploy: + id: '' + unique-version: true + deploy-unstable: false + - jacoco-report + +- job-template: + name: 'armoury-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: release stream (eg. stable-lithium or beryllium) + # branch: git branch (eg. stable/lithium or master) + + 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: 'H H * * *' + + prebuilders: + - wipe-org-opendaylight-repo + - jacoco-nojava-workaround + + 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 ' + maven-opts: '-Xmx2048m -XX:MaxPermSize=256m -Dmaven.compile.fork=true' + settings: '{armoury-settings}' + global-settings: '{odl-global-settings}' + + reporters: + - findbugs + + publishers: + - email-notification: + email-prefix: '[armoury]' + - jacoco-report + +- job-template: + name: 'armoury-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' + + 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 + + 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: 'armoury-integration-{stream}' + disabled: false + + # Job template for ODL integration verify jobs + # + # 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: 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: '{project}' + + scm: + - git-scm: + credentials-id: '{ssh-credentials}' + refspec: '' + branch: '{branch}' + + wrappers: + - build-timeout + - ssh-agent-credentials: + users: + - '{ssh-credentials}' + + triggers: + - reverse: + jobs: 'odlparent-merge-{stream},yangtools-merge-{stream},controller-merge-{stream},mdsal-merge-{stream}' + result: 'success' + + prebuilders: + - wipe-org-opendaylight-repo + - jacoco-nojava-workaround + + 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 ' + maven-opts: '-Xmx2048m -XX:MaxPermSize=256m -Dmaven.compile.fork=true' + settings: '{armoury-settings}' + global-settings: '{odl-global-settings}' + + reporters: + - findbugs + + publishers: + - email-notification: + email-prefix: '[armoury] [odlparent] [yangtools] [controller] [mdsal]' + - jacoco-report + +- job-template: + name: 'armoury-sonar' + + project-type: maven + node: dynamic_verify + jdk: 'openjdk7' + + 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: + users: + - '{ssh-credentials}' + + triggers: + - timed: 'H H * * *' + - gerrit-trigger-patch-sonar: + name: 'armoury' + + prebuilders: + - wipe-org-opendaylight-repo + - jacoco-nojava-workaround + + 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' + maven-opts: '-Xmx2048m -XX:MaxPermSize=256m -Dmaven.compile.fork=true' + settings: '{armoury-settings}' + global-settings: '{odl-global-settings}' + + reporters: + - findbugs + + publishers: + - sonar: + language: 'java' + maven-opts: '-Xmx6144m -XX:MaxPermSize=1024m' + - email-notification: + email-prefix: '[armoury]' + - jacoco-report + +- job-template: + name: 'armoury-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: '{armoury-settings}' + global-settings: '{odl-global-settings}' + + postbuilders: + - check-clm: + application-name: armoury + + publishers: + - email-notification: + email-prefix: '[armoury]' + -- 2.36.6