refspec: 'refs/heads/master'
jenkins-ssh-credential: opendaylight-jenkins-ssh
submodule-recursive: true
+ submodule-timeout: 10
choosing-strategy: default
wrappers:
build-node: '{build-node}'
cron: 'H 0 * * *'
java-version: openjdk8
+ mvn-global-settings: global-settings
+ mvn-settings: autorelease-settings
mvn-version: mvn35
extra-mvn-opts: ''
parameters:
- maven-exec:
- maven-version: 'mvn35'
+ maven-version: '{mvn-version}'
- lf-infra-parameters:
project: '{project}'
stream: '{stream}'
name: ARCHIVE_ARTIFACTS
default: '{archive-artifacts}'
description: Artifacts to archive to the logs server.
+ - string:
+ name: STAGING_PROFILE_ID
+ default: '{staging-profile-id}'
+ description: Nexus staging profile ID.
scm:
- git:
- timed: '{cron}'
builders:
+ - lf-infra-pre-build
# force jenkins install of maven version before any shell scripts use it
- lf-maven-install:
mvn-version: '{mvn-version}'
- wipe-local-maven-repo
- - jacoco-nojava-workaround
+ - lf-jacoco-nojava-workaround
- shell: "./scripts/list-project-dependencies.sh"
- autorelease-determine-merge-order
- - autorelease-cfp:
- autorelease-settings: 'autorelease-settings'
- global-settings: 'odl-global-settings'
+ - lf-provide-maven-settings:
+ global-settings-file: '{mvn-global-settings}'
+ settings-file: '{mvn-settings}'
+ - lf-infra-create-netrc:
+ server-id: '{mvn-staging-id}'
- autorelease-generate-release-patches
- autorelease-generate-artifact-versions
- autorelease-distribute-taglist
# to enable building in a single maven reactor afterwards.
- autorelease-fix-relative-paths
- maven-target:
- maven-version: 'mvn35'
+ maven-version: '{mvn-version}'
pom: 'pom.xml'
goals: |
clean deploy
$EXTRA_MVN_OPTS
-Pintegrationtests,repoBuild
-Dcheckstyle.skip=true
- -DaltDeploymentRepository=staging::default::file:hide/from/pom/files/stage
+ -DaltDeploymentRepository=staging::default::file:"$WORKSPACE"/m2repo
{opendaylight-infra-mvn-opts}
java-opts:
- '-Xmx8g -XX:MaxPermSize=1024m -Dmaven.compile.fork=true'
- settings: 'autorelease-settings'
+ settings: '{mvn-settings}'
settings-type: cfp
- global-settings: 'global-settings'
+ global-settings: '{mvn-global-settings}'
global-settings-type: cfp
- - autorelease-maven-deploy
+ - lf-maven-stage
- autorelease-get-integration-test-variables
- autorelease-maven-sources:
opendaylight-infra-mvn-opts: '{opendaylight-infra-mvn-opts}'
- maven-version: 'mvn35'
- settings: 'autorelease-settings'
- global-settings: 'global-settings'
- - autorelease-maven-sources-post-process
+ maven-version: '{mvn-version}'
+ settings: '{mvn-settings}'
+ global-settings: '{mvn-global-settings}'
- shell: |
mkdir -p archives/
cp *.log *.prop $_
mark-unstable-if-failed: false
- lf-infra-publish
+- job-template:
+ name: 'autorelease-update-submodules-{stream}'
+
+ ######################
+ # Default parameters #
+ ######################
+
+ cron: 'H 0 * * *'
+
+ #####################
+ # Job configuration #
+ #####################
+
+ project-type: freestyle
+ node: centos7-builder-2c-2g
+
+ properties:
+ - lf-infra-properties:
+ build-days-to-keep: 7
+
+ parameters:
+ - lf-infra-parameters:
+ project: releng/autorelease
+ branch: '{branch}'
+ stream: '{stream}'
+ refspec: 'refs/heads/{branch}'
+ lftools-version: '{lftools-version}'
+
+ scm:
+ - lf-infra-gerrit-scm:
+ git-url: '$GIT_URL/$GERRIT_PROJECT'
+ branch: '{branch}'
+ refspec: 'refs/heads/{branch}'
+ jenkins-ssh-credential: opendaylight-jenkins-ssh
+ submodule-recursive: true
+ submodule-timeout: 10
+ choosing-strategy: default
+
+ wrappers:
+ - lf-infra-wrappers:
+ build-timeout: 10
+ jenkins-ssh-credential: opendaylight-jenkins-ssh
+
+ triggers:
+ - timed: '{obj:cron}'
+
+ builders:
+ - lf-infra-pre-build
+ # Fetch latest head of branch
+ - shell: |
+ git checkout $GERRIT_BRANCH
+ git submodule update --remote
+ git add .
+ - lf-infra-push-gerrit-patch:
+ project: '{project}'
+ gerrit-user: 'jenkins-$SILO'
+ gerrit-host: 'git.opendaylight.org'
+ gerrit-topic: 'autorelease-update-submodules'
+ gerrit-commit-message: 'Update submodules to latest HEAD of branch'
+ reviewers-email: ''
+
+ publishers:
+ - lf-infra-publish
+
- job-template:
name: autorelease-update-validate-jobs-{stream}
refspec: 'refs/heads/master'
jenkins-ssh-credential: opendaylight-jenkins-ssh
submodule-recursive: true
+ submodule-timeout: 10
choosing-strategy: default
triggers:
jenkins-ssh-credential: opendaylight-jenkins-ssh
builders:
+ - lf-infra-pre-build
- autorelease-update-project-views
- autorelease-update-validate-projects
- lf-infra-push-gerrit-patch:
- job-template:
name: autorelease-version-bump-{stream}
+
+ #####################
+ # Default variables #
+ #####################
+
+ mvn-global-settings: global-settings
+ mvn-settings: autorelease-settings
+ mvn-version: mvn35
+
+ #####################
+ # Job configuration #
+ #####################
+
project-type: freestyle
node: '{build-node}'
and artifacts are not pushed to Nexus. Instead the build will be
performed using the goals "clean install".
- maven-exec:
- maven-version: mvn35
+ maven-version: '{mvn-version}'
scm:
- lf-infra-gerrit-scm:
refspec: 'refs/heads/{branch}'
jenkins-ssh-credential: opendaylight-jenkins-ssh
submodule-recursive: true
+ submodule-timeout: 10
choosing-strategy: default
wrappers:
jenkins-ssh-credential: opendaylight-jenkins-ssh
builders:
+ - lf-infra-pre-build
# force jenkins install of maven version before any shell scripts use it
- - maven-target:
- maven-version: mvn35
- goals: '-version'
- settings: autorelease-settings
- settings-type: cfp
- global-settings: global-settings
- global-settings-type: cfp
- - autorelease-cfp
+ - lf-maven-install:
+ mvn-version: '{mvn-version}'
+ - lf-provide-maven-settings:
+ global-settings-file: '{mvn-global-settings}'
+ settings-file: '{mvn-settings}'
- shell: !include-raw-escape:
- - ../global-jjb/shell/lftools-install.sh
- version-bump.sh
publishers:
lftools-version: '{lftools-version}'
- string:
name: RELEASE
- description: Release to generate release notes for.
-
+ description: |
+ Release to generate release notes for.
+ Eg. Oxygen-SR1, Fluorine-SR2...
scm:
- lf-infra-gerrit-scm:
git-url: '$GIT_URL/$GERRIT_PROJECT'
refspec: '$GERRIT_REFSPEC'
jenkins-ssh-credential: opendaylight-jenkins-ssh
submodule-recursive: true
+ submodule-timeout: 10
choosing-strategy: default
wrappers:
branch-pattern: '**/{branch}'
builders:
+ - lf-infra-pre-build
- autorelease-generate-release-notes
publishers:
- job-template:
name: '{project-name}-validate-autorelease-{stream}'
- ############
- # Defaults #
- ############
+ #####################
+ # Default variables #
+ #####################
java-version: openjdk8
+ mvn-global-settings: global-settings
+ mvn-settings: autorelease-settings
+ mvn-version: mvn35
#####################
# Job Configuration #
project: '{project}'
branch: '{branch}'
files: '**/*.xml'
+ forbidden-files: ''
builders:
+ - lf-infra-pre-build
- autorelease-checkout-gerrit-patch
- autorelease-compare-projects
- - jacoco-nojava-workaround
+ - lf-jacoco-nojava-workaround
- shell: "./scripts/list-project-dependencies.sh"
- autorelease-determine-merge-order
- autorelease-generate-release-patches
# to enable building in a single maven reactor afterwards.
- autorelease-fix-relative-paths
- maven-target:
- maven-version: mvn35
+ maven-version: '{mvn-version}'
pom: validate-pom.xml
goals: |
clean install dependency:tree
{opendaylight-infra-mvn-opts}
java-opts:
- '-Xmx8g'
- settings: autorelease-settings
+ settings: '{mvn-settings}'
settings-type: cfp
- global-settings: global-settings
+ global-settings: '{mvn-global-settings}'
global-settings-type: cfp
- # Hack to workaround the duplicate-finder plugin in odlparent breaking validate-autorelease
- - shell: sed -i 's/validate/none/' /tmp/r/org/opendaylight/odlparent/odlparent/3.0.2/odlparent-3.0.2.pom || true
- maven-target:
- maven-version: mvn35
+ maven-version: '{mvn-version}'
pom: pom.xml
goals: |
clean validate
{opendaylight-infra-mvn-opts}
java-opts:
- '-Xmx8g -XX:MaxPermSize=1024m -Dmaven.compile.fork=true'
- settings: autorelease-settings
+ settings: '{mvn-settings}'
settings-type: cfp
- global-settings: global-settings
+ global-settings: '{mvn-global-settings}'
global-settings-type: cfp
- shell: |
mkdir -p archives/