# Autorelease build jobs - job-template: name: 'autorelease-release-{stream}' project-type: freestyle node: centos7-autorelease-4c-16g jdk: '{jdk}' properties: - opendaylight-infra-properties: build-days-to-keep: '30' parameters: - maven-exec: maven-version: 'mvn33' - opendaylight-infra-parameters: project: '{project}' branch: '{branch}' refspec: 'refs/heads/{branch}' artifacts: '{archive-artifacts}' - autorelease-release-tag: release-tag: '{next-release-tag}' - autorelease-release-branch: release-branch: '{branch}' scm: - git: credentials-id: 'opendaylight-jenkins-ssh' url: '$GIT_BASE' refspec: '$GERRIT_REFSPEC' branches: - '$GERRIT_BRANCH' choosing-strategy: 'gerrit' skip-tag: true submodule: recursive: true timeout: 60 wrappers: - opendaylight-infra-wrappers: build-timeout: '1440' triggers: - timed: 'H 0 * * *' builders: # force jenkins install of maven version before any shell scripts use it - maven-target: maven-version: 'mvn33' goals: '-version' settings: 'autorelease-settings' settings-type: cfp global-settings: 'odl-global-settings' global-settings-type: cfp - wipe-local-maven-repo - jacoco-nojava-workaround - shell: "./scripts/list-project-dependencies.sh" - autorelease-determine-merge-order - autorelease-cfp: autorelease-settings: 'autorelease-settings' odl-global-settings: 'odl-global-settings' - autorelease-generate-taglist - autorelease-distribute-taglist - distribute-build-url: path: 'integration/distribution/distribution-karaf/src/main/assembly' - autorelease-generate-release-patches # In a perfect world projects should be releasing separately and we consume them # via a project that pulls the release bits from each project from Nexus. # Keep the patches compatible with that ideal, but apply an edit # to enable building in a single maven reactor afterwards. - autorelease-fix-relative-paths - maven-target: maven-version: 'mvn33' pom: 'pom.xml' goals: 'clean deploy -V -B -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' java-opts: - '-Xmx10g -XX:MaxPermSize=1024m -Dmaven.compile.fork=true' settings: 'autorelease-settings' settings-type: cfp global-settings: 'odl-global-settings' global-settings-type: cfp - autorelease-maven-deploy - autorelease-get-integration-test-variables - autorelease-maven-sources: maven-version: 'mvn33' settings: 'autorelease-settings' global-settings: 'odl-global-settings' - autorelease-maven-sources-post-process - autorelease-sys-stats - shell: | mkdir -p archives/ cp *.log *.prop $_ publishers: - archive: artifacts: 'dependencies.log' - email-notification: email-recipients: '{email-recipients}' email-prefix: '[autorelease]' - trigger-parameterized-builds: - project: 'integration-distribution-test-{integration-test}' condition: UNSTABLE_OR_BETTER property-file: variables.jenkins-trigger fail-on-missing: true - opendaylight-infra-shiplogs: maven-version: 'mvn33' - job-template: name: 'autorelease-project-report-{stream}' project-type: freestyle node: centos7-java-builder-2c-8g properties: - opendaylight-infra-properties: build-days-to-keep: '{build-days-to-keep}' parameters: - opendaylight-infra-parameters: project: '{project}' branch: '{branch}' refspec: 'refs/heads/{branch}' artifacts: '{archive-artifacts}' - string: name: REPORT_DIR default: '$WORKSPACE/project-reports' description: "The directory containing project reports" scm: - git: credentials-id: 'opendaylight-jenkins-ssh' url: '$GIT_BASE' refspec: '$GERRIT_REFSPEC' branches: - '$GERRIT_BRANCH' choosing-strategy: 'gerrit' skip-tag: true submodule: recursive: true wrappers: - opendaylight-infra-wrappers: build-timeout: '30' 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-determine-merge-order - autorelease-sys-stats publishers: - 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 - opendaylight-infra-shiplogs: maven-version: 'mvn33'