X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=jjb%2Fautorelease%2Fautorelease-templates.yaml;h=2aa6c68dca852da5840fbd222fd4c26f09609b4f;hb=b3d57ed4f4108ad1aaf0e445fd045d58b743ee77;hp=3a2d3ce4216d7920264ab4c351c1eae27a16c1db;hpb=e65f32946a58ffaaabb9a4ab128a7c06ae3b6ed5;p=releng%2Fbuilder.git diff --git a/jjb/autorelease/autorelease-templates.yaml b/jjb/autorelease/autorelease-templates.yaml index 3a2d3ce42..2aa6c68dc 100644 --- a/jjb/autorelease/autorelease-templates.yaml +++ b/jjb/autorelease/autorelease-templates.yaml @@ -1,7 +1,7 @@ # Autorelease build jobs - job-template: - name: 'autorelease-daily-{stream}' + name: 'autorelease-release-{stream}' project-type: maven node: dynamic_autorelease @@ -10,14 +10,14 @@ logrotate: daysToKeep: '{build-days-to-keep}' numToKeep: '{build-num-to-keep}' - artifactDaysToKeep: '{build-artifact-days-to-keep}' - artifactNumToKeep: '{build-artifact-num-to-keep}' + artifactDaysToKeep: '14' + artifactNumToKeep: '-1' parameters: - project-parameter: project: '{project}' - autorelease-release-tag: - release-tag: 'Daily' + release-tag: '{stream}-daily' - autorelease-release-branch: release-branch: '{branch}' - autorelease-release-datestamp: @@ -46,21 +46,26 @@ prebuilders: - wipe-org-opendaylight-repo - jacoco-nojava-workaround + - autorelease-cfp: + autorelease-settings: '{autorelease-settings}' + odl-global-settings: '{odl-global-settings}' - autorelease-generate-taglist - autorelease-generate-release-patches maven: maven-name: '{mvn33}' root-pom: 'pom.xml' - goals: 'clean install -Pintegrationtests,docs,repoBuild -Dcheckstyle.skip=true -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r' - maven-opts: '-Xmx8g -XX:MaxPermSize=1024m -Dmaven.compile.fork=true' + goals: 'clean deploy -Pintegrationtests,docs,repoBuild -Djenkins -Dcheckstyle.skip=true -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r -DaltDeploymentRepository=staging::default::file:hide/from/pom/files/stage' + maven-opts: '-Xmx10g -XX:MaxPermSize=1024m -Dmaven.compile.fork=true' settings: '{autorelease-settings}' global-settings: '{odl-global-settings}' - automatic-archiving: false + automatic-archiving: true post-step-run-condition: UNSTABLE postbuilders: + - autorelease-maven-deploy - shell: "./scripts/list-project-dependencies.sh" + - autorelease-get-integration-test-variables - autorelease-maven-sources: maven-version: '{mvn33}' settings: '{autorelease-settings}' @@ -69,18 +74,21 @@ - autorelease-sys-stats publishers: - - archive-artifacts: - artifacts: '*.log,patches/*.patch' - - email-notification: - email-prefix: '[autorelease]' - + - archive-artifacts: + artifacts: '*.prop,*.log,patches/*.patch,patches/*.log' + - email-notification: + email-prefix: '[autorelease]' + - trigger-parameterized-builds: + - project: 'integration-distribution-test-{integration-test}' + condition: UNSTABLE_OR_BETTER + property-file: variables.prop + fail-on-missing: true - job-template: - name: 'autorelease-release-{stream}' + name: 'autorelease-project-report-{stream}' - project-type: maven - node: dynamic_autorelease - jdk: '{jdk}' + project-type: freestyle + node: dynamic_verify logrotate: daysToKeep: '{build-days-to-keep}' @@ -91,12 +99,10 @@ parameters: - project-parameter: project: '{project}' - - autorelease-release-tag: - release-tag: 'Test-{stream}' - - autorelease-release-branch: - release-branch: '{branch}' - - autorelease-release-datestamp: - datestamp: false + - string: + name: REPORT_DIR + default: '$WORKSPACE/project-reports' + description: "The directory containing project reports" scm: - git: @@ -110,42 +116,142 @@ recursive: true wrappers: - - autorelease-build-timeout + - timeout: + type: absolute + timeout: 30 + fail: true - ssh-agent-credentials: users: - '{ssh-credentials}' - prebuilders: - - wipe-org-opendaylight-repo - - jacoco-nojava-workaround - - autorelease-generate-taglist - - autorelease-generate-release-patches + triggers: + - timed: '0 0 * * 0' + + builders: + - shell: 'echo "DATE=`date +%Y-%m-%d`" > $WORKSPACE/variables.prop' + - inject: + properties-file: variables.prop + - autorelease-generate-project-report + - shell: "./scripts/list-project-dependencies.sh" + - autorelease-sys-stats + + publishers: + - archive-artifacts: + artifacts: '*.log,project-reports/*.log' + - email-ext: + attachments: 'project-reports/*.log' + recipients: 'skitt@redhat.com thanh.ha@linuxfoundation.org' + reply-to: dev@lists.opendaylight.org + content-type: default + subject: '[releng] ODL {stream} project report for ${{ENV, var="DATE"}}' + body: | + This is a project report generated on $DATE listing the commit + history of ODL projects for the past week. See attached + git-report.log + + Archive also available on Jenkins at $BUILD_URL + always: true + +### +### Maven Sites +### + +- job-template: + name: 'autorelease-site-publish-{stream}' + node: dynamic_merge + concurrent: false + jdk: 'openjdk8' + + # This job's purpose is to publish maven site + + project-type: maven + + logrotate: + daysToKeep: 7 + numToKeep: 10 + artifactDaysToKeep: -1 + artifactNumToKeep: -1 + + parameters: + - project-parameter: + project: '{project}' + - gerrit-parameter: + branch: '{branch}' + + scm: + - gerrit-trigger-scm: + credentials-id: '{ssh-credentials}' + refspec: '' + choosing-strategy: 'default' + + wrappers: + - ssh-agent-credentials: + users: + - '{ssh-credentials}' + + triggers: + - autorelease-trigger-patch-site-merged: + name: '{project}' + branch: '{branch}' maven: maven-name: '{mvn33}' - root-pom: 'pom.xml' - goals: 'clean install -Pintegrationtests,docs,repoBuild -Dcheckstyle.skip=true -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r' - maven-opts: '-Xmx8g -XX:MaxPermSize=1024m -Dmaven.compile.fork=true' + root-pom: 'site.xml' + goals: 'site:site site:deploy -Dstream={stream}' + maven-opts: '-Xmx1024m' settings: '{autorelease-settings}' global-settings: '{odl-global-settings}' - automatic-archiving: true - post-step-run-condition: UNSTABLE - postbuilders: - - autorelease-cfp: - autorelease-settings: '{autorelease-settings}' - odl-global-settings: '{odl-global-settings}' - - autorelease-maven-deploy - - shell: "./scripts/list-project-dependencies.sh" - - autorelease-maven-sources: - maven-version: '{mvn33}' - settings: '{autorelease-settings}' - global-settings: '{odl-global-settings}' - - autorelease-maven-sources-post-process - - autorelease-sys-stats + publishers: + - email-notification: + email-prefix: '[releng]' + +- job-template: + name: 'autorelease-site-verify-{stream}' + node: dynamic_verify + concurrent: true + jdk: 'openjdk8' + + # This job's purpose is to verify maven site configuration + + project-type: maven + + logrotate: + daysToKeep: 7 + numToKeep: 10 + artifactDaysToKeep: -1 + artifactNumToKeep: -1 + + parameters: + - project-parameter: + project: '{project}' + - gerrit-parameter: + branch: '{branch}' + + scm: + - gerrit-trigger-scm: + credentials-id: '{ssh-credentials}' + refspec: '$GERRIT_REFSPEC' + choosing-strategy: 'gerrit' + + wrappers: + - ssh-agent-credentials: + users: + - '{ssh-credentials}' + + triggers: + - autorelease-trigger-patch-site-submitted: + name: '{project}' + branch: '{branch}' + + maven: + maven-name: '{mvn33}' + root-pom: 'site.xml' + goals: 'site:site -Dstream={stream}' + maven-opts: '-Xmx1024m' + settings: '{autorelease-settings}' + global-settings: '{odl-global-settings}' publishers: - - archive-artifacts: - artifacts: '*.log,patches/*.patch' - email-notification: - email-prefix: '[autorelease]' + email-prefix: '[releng]'