From: Andrew Grimberg Date: Mon, 19 Jan 2015 16:09:23 +0000 (+0000) Subject: Merge "jjb-init-project script support for branches" X-Git-Tag: release/lithium~514 X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=commitdiff_plain;h=47d4010399d98feeee089e0bc21f8ce1636bedc5;hp=a0602142769da3c35e3a97474e9368d8b586d543;p=releng%2Fbuilder.git Merge "jjb-init-project script support for branches" --- diff --git a/jenkins.ini b/jenkins.ini.example similarity index 100% rename from jenkins.ini rename to jenkins.ini.example diff --git a/jjb/autorelease/autorelease-lithium.yaml b/jjb/autorelease/autorelease-lithium.yaml new file mode 100644 index 000000000..8f868b369 --- /dev/null +++ b/jjb/autorelease/autorelease-lithium.yaml @@ -0,0 +1,62 @@ +# Lithium build jobs + +- project: + name: autorelease + jobs: + - 'autorelease-lithium-daily' + + # stream: branch with - in place of / (eg. stable-helium) + # branch: branch (eg. stable/helium) + stream: + - master: + branch: 'master' + + project: 'releng/autorelease' + jdk: 'openjdk7' + +- job-template: + name: 'autorelease-lithium-daily' + + 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: + credentials-id: '{ssh-credentials}' + url: '$GIT_BASE' + refspec: '' + branches: + - 'origin/{branch}' + skip-tag: true + recursive-submodules: true + + wrappers: + - autorelease-build-timeout + - ssh-agent-credentials: + user: '{ssh-credentials}' + + triggers: + - timed: 'H 0 * * *' + + maven: + maven-name: '{mvn32}' + root-pom: 'pom.xml' + goals: 'clean install -Pintegrationtests,docs -fae -Dcheckstyle.skip=true -Dmaven.repo.local=$WORKSPACE/.m2repo -Dorg.ops4j.pax.url.mvn.localRepository=$WORKSPACE/.m2repo' + maven-opts: '-Xmx4096m -XX:MaxPermSize=1024m -Dmaven.compile.fork=true' + settings: '{autorelease-settings}' + global-settings: '{odl-global-settings}' + + publishers: + - email-notification: + email-prefix: '[autorelease]' diff --git a/jjb/autorelease/autorelease-macros.yaml b/jjb/autorelease/autorelease-macros.yaml new file mode 100644 index 000000000..623230906 --- /dev/null +++ b/jjb/autorelease/autorelease-macros.yaml @@ -0,0 +1,9 @@ +# Macros for the AutoRelease project +- wrapper: + name: autorelease-build-timeout + wrappers: + - timeout: + type: elastic + elastic-percentage: 200 + elastic-default-timeout: 300 + fail: true diff --git a/jjb/docs/docs.yaml b/jjb/docs/docs.yaml new file mode 100644 index 000000000..a39a1fafb --- /dev/null +++ b/jjb/docs/docs.yaml @@ -0,0 +1,254 @@ +# 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: docs + jobs: + - 'docs-verify-{stream}' + - 'docs-merge-{stream}' + - 'docs-daily-{stream}' + - 'docs-integration-{stream}' + + # stream: branch with - in place of / (eg. stable-helium) + # branch: branch (eg. stable/helium) + stream: + - master: + branch: 'master' + - stable-helium: + branch: 'stable/helium' + + project: 'docs' + 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: 'docs-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: 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}' + + 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: 'docs' + branch: '{branch}' + + maven: + maven-name: '{mvn32}' + root-pom: 'pom.xml' + goals: 'clean install -V -Dmaven.repo.local=$WORKSPACE/.m2repo -Dorg.ops4j.pax.url.mvn.localRepository=$WORKSPACE/.m2repo ' + maven-opts: '-Xmx1024m -XX:MaxPermSize=256m' + settings: '{docs-settings}' + global-settings: '{odl-global-settings}' + ignore-upstream-changes: true + + publishers: + - email-notification: + email-prefix: '[docs]' + +- job-template: + name: 'docs-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: 'docs' + branch: '{branch}' + + maven: + maven-name: '{mvn32}' + root-pom: 'pom.xml' + goals: 'clean install -V -Dmaven.repo.local=$WORKSPACE/.m2repo -Dorg.ops4j.pax.url.mvn.localRepository=$WORKSPACE/.m2repo ' + maven-opts: '-Xmx1024m -XX:MaxPermSize=256m' + settings: '{docs-settings}' + global-settings: '{odl-global-settings}' + + publishers: + - email-notification: + email-prefix: '[docs]' + - maven-deploy: + id: '' + unique-version: true + deploy-unstable: false + +- job-template: + name: 'docs-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 * * *' + + maven: + maven-name: '{mvn32}' + root-pom: 'pom.xml' + goals: 'clean install -V -Dmaven.repo.local=$WORKSPACE/.m2repo -Dorg.ops4j.pax.url.mvn.localRepository=$WORKSPACE/.m2repo ' + maven-opts: '-Xmx1024m -XX:MaxPermSize=256m' + settings: '{docs-settings}' + global-settings: '{odl-global-settings}' + + publishers: + - email-notification: + email-prefix: '[docs]' + - sonar: + branch: '{stream}' + language: 'java' + maven-opts: '-Xmx1024m -XX:MaxPermSize=256m' + +- job-template: + name: 'docs-integration-{stream}' + disabled: true + + # 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: '' + result: 'success' + + maven: + maven-name: '{mvn32}' + root-pom: 'pom.xml' + goals: 'clean install -V -Dmaven.repo.local=$WORKSPACE/.m2repo -Dorg.ops4j.pax.url.mvn.localRepository=$WORKSPACE/.m2repo ' + maven-opts: '-Xmx1024m -XX:MaxPermSize=256m' + settings: '{docs-settings}' + global-settings: '{odl-global-settings}' + + publishers: + - email-notification: + email-prefix: '[docs]'