parameters:
- maven-exec:
maven-version: 'mvn33'
- - opendaylight-infra-parameters:
- os-cloud: '{os-cloud}'
+ - lf-infra-parameters:
project: '{project}'
+ stream: '{stream}'
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}'
- string:
name: EXTRA_MVN_OPTS
default: '{extra-mvn-opts}'
-Dskip.karaf.featureTest=true # To disable karaf SingleFeatureTests
--fail-never # NEVER fail the build, regardless of project result
--fail-at-end # Only fail the build afterwards; allow all non-impacted builds to continue
+ - string:
+ name: ARCHIVE_ARTIFACTS
+ default: '{archive-artifacts}'
+ description: Artifacts to archive to the logs server.
+ - bool:
+ name: TRIGGER_DOWNSTREAM_JOBS
+ default: true
+ description: |
+ Used by the post-build-script step to determine if downstream
+ jobs should be triggered for this run or not.
scm:
- git:
refspec: '$GERRIT_REFSPEC'
branches:
- '$GERRIT_BRANCH'
- choosing-strategy: 'gerrit'
+ choosing-strategy: default
skip-tag: true
submodule:
recursive: true
- autorelease-cfp:
autorelease-settings: 'autorelease-settings'
global-settings: 'odl-global-settings'
- - autorelease-generate-taglist
+ - autorelease-generate-release-patches
- autorelease-distribute-taglist
- distribute-build-url:
path: 'integration/distribution/$KARAF_ARTIFACT/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
publishers:
- opendaylight-infra-notify-status
- - trigger-parameterized-builds:
- - project: 'integration-distribution-test-{integration-test}'
- condition: UNSTABLE_OR_BETTER
- property-file: variables.jenkins-trigger
- fail-on-missing: true
- - project: 'integration-distribution-test-{integration-test}'
- condition: FAILED
- trigger-with-no-params: true
- - project: 'integration-sanity-test-{integration-test}'
- condition: UNSTABLE_OR_BETTER
- property-file: variables.jenkins-trigger
- fail-on-missing: true
- - project: 'integration-sanity-test-{integration-test}'
- condition: FAILED
- trigger-with-no-params: true
- - project: 'packaging-build-rpm-{stream}'
- condition: UNSTABLE_OR_BETTER
- predefined-parameters: DOWNLOAD_URL=$BUNDLE_URL
- property-file: variables.jenkins-trigger
- fail-on-missing: true
- - project: 'packaging-build-deb-{stream}'
- condition: UNSTABLE_OR_BETTER
- predefined-parameters: DOWNLOAD_URL=$BUNDLE_URL
- property-file: variables.jenkins-trigger
- fail-on-missing: true
+ - postbuildscript:
+ builders:
+ - conditional-step:
+ condition-kind: boolean-expression
+ condition-expression: $TRIGGER_DOWNSTREAM_JOBS
+ steps:
+ - trigger-builds:
+ - project: 'integration-distribution-test-{integration-test}'
+ condition: UNSTABLE_OR_BETTER
+ property-file: variables.jenkins-trigger
+ fail-on-missing: true
+ - project: 'integration-distribution-test-{integration-test}'
+ condition: FAILED
+ trigger-with-no-params: true
+ - project: 'integration-sanity-test-{integration-test}'
+ condition: UNSTABLE_OR_BETTER
+ property-file: variables.jenkins-trigger
+ fail-on-missing: true
+ - project: 'integration-sanity-test-{integration-test}'
+ condition: FAILED
+ trigger-with-no-params: true
+ - project: 'packaging-build-rpm-{stream}'
+ condition: UNSTABLE_OR_BETTER
+ predefined-parameters: DOWNLOAD_URL=$BUNDLE_URL
+ property-file: variables.jenkins-trigger
+ fail-on-missing: true
+ - project: 'packaging-build-deb-{stream}'
+ condition: UNSTABLE_OR_BETTER
+ predefined-parameters: DOWNLOAD_URL=$BUNDLE_URL
+ property-file: variables.jenkins-trigger
+ fail-on-missing: true
+ script-only-if-succeeded: false
+ script-only-if-failed: false
- lf-infra-publish
- job-template:
project-type: freestyle
node: '{build-node}'
concurrent: true
- jdk: '{jdk}'
+ jdk: openjdk8
properties:
- - opendaylight-infra-properties:
+ - lf-infra-properties:
build-days-to-keep: 7
parameters:
- - opendaylight-infra-parameters:
- os-cloud: '{os-cloud}'
+ - lf-infra-parameters:
project: '{project}'
+ stream: '{stream}'
branch: '{branch}'
- refspec: 'refs/heads/{branch}'
- artifacts: '{archive-artifacts}'
- autorelease-release-tag:
- release-tag: 'validate'
+ release-tag: validate
- string:
name: CLONE_URL
default: '{git-url}/releng/autorelease'
# to enable building in a single maven reactor afterwards.
- autorelease-fix-relative-paths
- maven-target:
- maven-version: 'mvn33'
+ maven-version: mvn33
pom: validate-pom.xml
goals: |
clean install dependency:tree
{opendaylight-infra-mvn-opts}
java-opts:
- '-Xmx8g'
- settings: 'autorelease-settings'
+ settings: autorelease-settings
settings-type: cfp
- global-settings: 'global-settings'
+ global-settings: global-settings
global-settings-type: cfp
- maven-target:
- maven-version: 'mvn33'
- pom: 'pom.xml'
+ maven-version: mvn33
+ pom: pom.xml
goals: |
clean validate
-Pq
{opendaylight-infra-mvn-opts}
java-opts:
- '-Xmx8g -XX:MaxPermSize=1024m -Dmaven.compile.fork=true'
- settings: 'autorelease-settings'
+ settings: autorelease-settings
settings-type: cfp
- global-settings: 'global-settings'
+ global-settings: global-settings
global-settings-type: cfp
publishers: