name: autorelease-projects
jobs:
- 'autorelease-generate-release-notes-{stream}'
- - 'autorelease-release-{stream}'
+ - 'autorelease-release-{stream}':
+ build-node: centos7-autorelease-4c-16g
- 'autorelease-update-validate-jobs-{stream}'
- - 'autorelease-version-bump-{stream}'
+ - 'autorelease-version-bump-{stream}':
+ build-node: centos7-autorelease-4c-16g
- '{project-name}-validate-autorelease-{stream}'
+ - gerrit-tox-verify
+ # todo: After Carbon EOL remove next-release-tag and directy pass
+ # '{stream}' to autorelease-release-tag parameter
stream:
- - nitrogen:
- next-release-tag: Nitrogen
+ - oxygen:
+ next-release-tag: '{stream}'
branch: 'master'
- jdk: 'openjdk8'
+ integration-test: oxygen
+ extra-mvn-opts: -Dsft.heap.max=4g
+ - nitrogen:
+ next-release-tag: '{stream}'
+ branch: 'stable/nitrogen'
integration-test: nitrogen
+ extra-mvn-opts: -Dsft.heap.max=4g
- carbon:
- next-release-tag: Carbon
+ # Run once a week now that Nitrogen is released and Oxygen is in active development
+ cron: 'H 12 * * 0'
+ next-release-tag: '{stream}'
branch: 'stable/carbon'
- jdk: 'openjdk8'
integration-test: carbon
karaf-version: karaf3
extra-mvn-opts: -Dskip.karaf4.featureTest=true
- - boron:
- # Only run once a week since Boron is in maintenance mode
- cron: 'H H * * 0'
- next-release-tag: Boron-SR5
- branch: 'stable/boron'
- jdk: 'openjdk8'
- integration-test: boron
- karaf-version: karaf3
project: releng/autorelease
project-name: autorelease
+ build-node: centos7-builder-2c-8g
+ # Before adding more here, beware of https://jira.linuxfoundation.org/browse/RELENG-280
archive-artifacts: >
**/*.prop
**/*.log
- patches/**
- patches.tar.gz
- error.log.gz
-
-###
-# TODO: Remove this job once guava21 testing is complete
-###
-
-- project:
- name: autorelease-projects-guava21
- jobs:
- - 'autorelease-release-guava21-{stream}'
-
- stream:
- - carbon:
- next-release-tag: Guava21-Testing
- branch: 'master'
- jdk: 'openjdk8'
- integration-test: carbon
-
- project: 'releng/autorelease'
- archive-artifacts: '**/*.prop **/*.log **/patches/*.bundle **/patches/*.patch all-bundles.tar.gz'
-
-- job-template:
- name: 'autorelease-release-guava21-{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:
- os-cloud: '{os-cloud}'
- project: '{project}'
- branch: '{branch}'
- refspec: 'refs/heads/{branch}'
- artifacts: '{archive-artifacts}'
- - distribution-karaf-version:
- karaf-version: '{karaf-version}'
- - 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:
- - gerrit:
- server-name: '{server-name}'
- trigger-on:
- - comment-added-contains-event:
- comment-contains-value: 'test-guava21-patches'
- projects:
- - project-compare-type: 'ANT'
- project-pattern: '{project}'
- branches:
- - branch-compare-type: 'ANT'
- branch-pattern: '**/{branch}'
- skip-vote:
- successful: true
- failed: true
- unstable: true
- notbuilt: true
-
- builders:
- - shell: |
- #!/bin/bash
- cd bgpcep
- git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/bgpcep
- git review -d 50184
- cd ..
- cd centinel
- git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/centinel
- git review -d 50185
- cd ..
- cd controller
- git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/controller
- git review -d 50176
- cd ..
- cd didm
- git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/didm
- git review -d 50187
- cd ..
- cd faas
- git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/faas
- git review -d 50190
- cd ..
- cd genius
- git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/genius
- git review -d 50192
- cd ..
- cd groupbasedpolicy
- git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/groupbasedpolicy
- git review -d 50200
- cd ..
- cd netvirt
- git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/netvirt
- git review -d 50215
- cd ..
- cd odlparent
- git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/odlparent
- git review -d 49820
- cd ..
- cd openflowplugin
- git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/openflowplugin
- git review -d 50183
- cd ..
- cd ovsdb
- git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/ovsdb
- git review -d 50191
- cd ..
- cd yangtools
- git remote add gerrit ssh://jenkins-$SILO@git.opendaylight.org:29418/yangtools
- git review -d 50173
- cd ..
- # 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: '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'
- global-settings: 'odl-global-settings'
- - autorelease-generate-taglist
- - autorelease-distribute-taglist
- - 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: 'global-settings'
- global-settings-type: cfp
- - autorelease-maven-deploy
- - autorelease-get-integration-test-variables
- - autorelease-maven-sources:
- opendaylight-infra-mvn-opts: '{opendaylight-infra-mvn-opts}'
- maven-version: 'mvn33'
- settings: 'autorelease-settings'
- global-settings: 'global-settings'
- - autorelease-maven-sources-post-process
- - shell: |
- mkdir -p archives/
- cp *.log *.prop $_
-
- publishers:
- - 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
- - lf-infra-publish
+ **/target/surefire-reports/*-output.txt
+ **/target/failsafe-reports/failsafe-summary.xml
+ **/hs_err_*.log
+ **/target/feature/feature.xml
+ # TODO: **/*.hprof is too large, compress with xz first