X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=jjb%2Fgroupbasedpolicy%2Fgroupbasedpolicy.yaml;h=a0661b893997411bc9d55385384b8f57afb60034;hb=4309cf74446708a622c9da0dffb0fe312a4fa7fd;hp=7289546fdb713791f1c2f53f3dea7467701c66ae;hpb=bd58f2aecd86492446d3235898def3dc2a6ec6cc;p=releng%2Fbuilder.git diff --git a/jjb/groupbasedpolicy/groupbasedpolicy.yaml b/jjb/groupbasedpolicy/groupbasedpolicy.yaml index 7289546fd..a0661b893 100644 --- a/jjb/groupbasedpolicy/groupbasedpolicy.yaml +++ b/jjb/groupbasedpolicy/groupbasedpolicy.yaml @@ -9,22 +9,36 @@ - 'groupbasedpolicy-verify-{stream}' - 'groupbasedpolicy-merge-{stream}' - 'groupbasedpolicy-daily-{stream}' + - 'groupbasedpolicy-distribution-{stream}' - 'groupbasedpolicy-integration-{stream}' - 'groupbasedpolicy-sonar' + - 'groupbasedpolicy-clm-{stream}' - # stream: branch with - in place of / (eg. stable-helium) - # branch: branch (eg. stable/helium) + + # stream: release stream (eg. stable-lithium or beryllium) + # branch: git branch (eg. stable/lithium or master) stream: - - master: + - 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: 'groupbasedpolicy' - jdk: 'openjdk7' # For the Job templates below replace instances of: -# PROJECT with your project name (eg. controller) +# PROJECT_SHORTNAME with your project name (eg. circuitsw) +# PROJECT_PATH with your project name (eg. ofextensions/circuitsw) # MAVEN_GOALS with your maven goals to build # MAVEN_OPTS with your maven options to build @@ -36,13 +50,22 @@ # 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) + # stream: release stream (eg. stable-lithium or beryllium) + # branch: git branch (eg. stable/lithium or master) - project-type: maven - node: dynamic_verify + project-type: matrix + node: matrix_master concurrent: true - jdk: '{jdk}' + + axes: + - axis: + type: slave + name: nodes + values: + - dynamic_verify + - axis: + type: jdk + values: '{obj:jdks}' logrotate: daysToKeep: '{build-days-to-keep}' @@ -65,25 +88,34 @@ wrappers: - build-timeout - ssh-agent-credentials: - user: '{ssh-credentials}' + users: + - '{ssh-credentials}' triggers: - gerrit-trigger-patch-submitted: name: 'groupbasedpolicy' branch: '{branch}' - maven: - maven-name: '{mvn32}' - root-pom: 'pom.xml' - goals: '-U clean install findbugs:findbugs' - maven-opts: '-Xmx1024m -XX:MaxPermSize=256m' - settings: '{groupbasedpolicy-settings}' - global-settings: '{odl-global-settings}' - ignore-upstream-changes: true + builders: + - wipe-org-opendaylight-repo + - jacoco-nojava-workaround + - provide-maven-settings: + global-settings-file: '{odl-global-settings}' + settings-file: '{groupbasedpolicy-settings}' + - maven-target: + maven-version: '{mvn33}' + pom: 'pom.xml' + goals: '-U clean install findbugs:findbugs -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -Dstream={stream}' + java-opts: + - '-Xmx1024m -XX:MaxPermSize=256m' + settings: '{groupbasedpolicy-settings}' + global-settings: '{odl-global-settings}' publishers: + - findbugs - email-notification: email-prefix: '[groupbasedpolicy]' + - jacoco-report - job-template: name: 'groupbasedpolicy-merge-{stream}' @@ -94,8 +126,8 @@ # and deploy artifacts to Nexus. # # Required Variables: - # stream: branch with - in place of / (eg. stable-helium) - # branch: branch (eg. stable/helium) + # stream: release stream (eg. stable-lithium or beryllium) + # branch: git branch (eg. stable/lithium or master) project-type: maven node: dynamic_merge @@ -120,20 +152,62 @@ wrappers: - build-timeout - ssh-agent-credentials: - user: '{ssh-credentials}' + users: + - '{ssh-credentials}' triggers: - gerrit-trigger-patch-merged: name: 'groupbasedpolicy' branch: '{branch}' + prebuilders: + - wipe-org-opendaylight-repo + - jacoco-nojava-workaround + - provide-maven-settings: + global-settings-file: '{odl-global-settings}' + settings-file: '{groupbasedpolicy-settings}' + maven: - maven-name: '{mvn32}' + maven-name: '{mvn33}' root-pom: 'pom.xml' - goals: '-U clean install findbugs:findbugs source:jar javadoc:jar' + goals: '-U clean install findbugs:findbugs -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -Dmerge -Dstream={stream}' maven-opts: '-Xmx1024m -XX:MaxPermSize=256m' settings: '{groupbasedpolicy-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: '{groupbasedpolicy-settings}' + global-settings: '{odl-global-settings}' + - maven-target: + maven-version: '{mvn33}' + pom: deploy-site.xml + goals: 'site:deploy -Dstream={stream}' + java-opts: + - '-Xmx2g' + settings: '{groupbasedpolicy-settings}' + global-settings: '{odl-global-settings}' + + reporters: + - findbugs publishers: - email-notification: @@ -142,6 +216,7 @@ id: '' unique-version: true deploy-unstable: false + - jacoco-report - job-template: name: 'groupbasedpolicy-daily-{stream}' @@ -152,8 +227,8 @@ # builder and pushes to Sonar analysis. # # Required Variables: - # stream: branch with - in place of / (eg. stable-helium) - # branch: branch (eg. stable/helium) + # stream: release stream (eg. stable-lithium or beryllium) + # branch: git branch (eg. stable/lithium or master) project-type: maven node: dynamic_verify @@ -178,36 +253,108 @@ wrappers: - build-timeout - ssh-agent-credentials: - user: '{ssh-credentials}' + users: + - '{ssh-credentials}' triggers: - timed: 'H H * * *' + prebuilders: + - wipe-org-opendaylight-repo + - jacoco-nojava-workaround + - provide-maven-settings: + global-settings-file: '{odl-global-settings}' + settings-file: '{groupbasedpolicy-settings}' + maven: - maven-name: '{mvn32}' + maven-name: '{mvn33}' root-pom: 'pom.xml' - goals: '-U clean install findbugs:findbugs' + goals: '-U clean install findbugs:findbugs -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r' maven-opts: '-Xmx1024m -XX:MaxPermSize=256m' settings: '{groupbasedpolicy-settings}' global-settings: '{odl-global-settings}' + reporters: + - findbugs + publishers: - email-notification: email-prefix: '[groupbasedpolicy]' - jacoco-report +- job-template: + name: 'groupbasedpolicy-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 + - provide-maven-settings: + global-settings-file: '{odl-global-settings}' + settings-file: '{groupbasedpolicy-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' + 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: 'groupbasedpolicy-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) - # branch: branch (eg. stable/helium) + # stream: release stream (eg. stable-lithium or beryllium) + # branch: git branch (eg. stable/lithium or master) project-type: maven node: dynamic_merge @@ -232,35 +379,43 @@ wrappers: - build-timeout - ssh-agent-credentials: - user: '{ssh-credentials}' + users: + - '{ssh-credentials}' triggers: - reverse: - jobs: 'odlparent-merge-{stream},yangtools-merge-{stream},controller-merge-{stream},openflowjava-merge-{stream},openflowplugin-merge-{stream}' + jobs: 'odlparent-merge-{stream},yangtools-merge-{stream},controller-merge-{stream},openflowjava-merge-{stream},openflowplugin-merge-{stream},neutron-merge-{stream},sfc-merge-{stream},ovsdb-merge-{stream}' result: 'success' + prebuilders: + - wipe-org-opendaylight-repo + - jacoco-nojava-workaround + - provide-maven-settings: + global-settings-file: '{odl-global-settings}' + settings-file: '{groupbasedpolicy-settings}' + maven: - maven-name: '{mvn32}' + maven-name: '{mvn33}' root-pom: 'pom.xml' - goals: '-U clean install findbugs:findbugs' + goals: '-U clean install findbugs:findbugs -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r' maven-opts: '-Xmx1024m -XX:MaxPermSize=256m' settings: '{groupbasedpolicy-settings}' global-settings: '{odl-global-settings}' + reporters: + - findbugs + publishers: - email-notification: - email-prefix: '[groupbasedpolicy] [odlparent] [yangtools] [controller] [openflowjava] [openflowplugin]' - - maven-deploy: - id: '' - unique-version: true - deploy-unstable: false + email-prefix: '[groupbasedpolicy] [odlparent] [yangtools] [controller] [openflowjava] [openflowplugin] [neutron] [sfc] [ovsdb]' + - jacoco-report - job-template: name: 'groupbasedpolicy-sonar' project-type: maven node: dynamic_verify - jdk: '{jdk}' + jdk: 'openjdk7' logrotate: daysToKeep: '7' @@ -281,22 +436,91 @@ wrappers: - build-timeout - ssh-agent-credentials: - user: '{ssh-credentials}' + users: + - '{ssh-credentials}' triggers: - timed: 'H H * * *' + - gerrit-trigger-patch-sonar: + name: 'groupbasedpolicy' + + prebuilders: + - wipe-org-opendaylight-repo + - jacoco-nojava-workaround + - provide-maven-settings: + global-settings-file: '{odl-global-settings}' + settings-file: '{groupbasedpolicy-settings}' maven: - maven-name: '{mvn32}' + maven-name: '{mvn33}' root-pom: 'pom.xml' - goals: '-U clean install findbugs:findbugs -Dsonar' + goals: '-U clean install findbugs:findbugs -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -Dsonar' maven-opts: '-Xmx1024m -XX:MaxPermSize=256m' settings: '{groupbasedpolicy-settings}' global-settings: '{odl-global-settings}' + reporters: + - findbugs + publishers: - sonar: language: 'java' maven-opts: '-Xmx6144m -XX:MaxPermSize=1024m' - email-notification: email-prefix: '[groupbasedpolicy]' + - jacoco-report + +- job-template: + name: 'groupbasedpolicy-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 + - provide-maven-settings: + global-settings-file: '{odl-global-settings}' + settings-file: '{groupbasedpolicy-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' + maven-opts: '-Xmx4096m -XX:MaxPermSize=512m' + settings: '{groupbasedpolicy-settings}' + global-settings: '{odl-global-settings}' + + postbuilders: + - check-clm: + application-name: groupbasedpolicy + + publishers: + - email-notification: + email-prefix: '[groupbasedpolicy]' +