blob: 259fb4ebeddabfa3477274eb15cc165e11671972 [file] [log] [blame]
####################
# COMMON FUNCTIONS #
####################
- integration_maven_common: &integration_maven_common
# This common maven base template is based on
# lf-maven-common in global-jjb/jjb/lf-maven-jobs.yaml
# and adjusted for jobs in project-specific CSIT flow
name: integration-maven-common
######################
# Default parameters #
######################
archive-artifacts: >
**/*.log
**/hs_err_*.log
**/target/**/feature.xml
**/target/failsafe-reports/failsafe-summary.xml
**/target/surefire-reports/*-output.txt
#####################
# Job Configuration #
#####################
project-type: freestyle
node: "{build-node}"
properties:
- lf-infra-properties:
build-days-to-keep: "{build-days-to-keep}"
parameters:
- lf-infra-parameters:
project: "{project}"
branch: "{branch}"
stream: "{stream}"
- lf-infra-maven-parameters:
mvn-opts: "{mvn-opts}"
mvn-params: "{mvn-params}"
mvn-version: "{mvn-version}"
- string:
name: ARCHIVE_ARTIFACTS
default: "{archive-artifacts}"
description: Artifacts to archive to the logs server.
scm:
- lf-infra-gerrit-scm:
jenkins-ssh-credential: "{jenkins-ssh-credential}"
git-url: "{git-url}"
refspec: "$GERRIT_REFSPEC"
branch: "$GERRIT_BRANCH"
submodule-recursive: "{submodule-recursive}"
submodule-timeout: "{submodule-timeout}"
submodule-disable: "{submodule-disable}"
choosing-strategy: "gerrit"
wrappers:
- lf-infra-wrappers:
build-timeout: "{build-timeout}"
jenkins-ssh-credential: "{jenkins-ssh-credential}"
publishers:
- lf-infra-publish
#############################
# Maven Snapshot for Docker #
#############################
- integration_maven_docker_snapshot: &integration_maven_docker_snapshot
name: integration-maven-docker-snapshot
builders:
- lf-infra-pre-build
- lf-jacoco-nojava-workaround
- lf-maven-install:
mvn-version: "{mvn-version}"
- lf-update-java-alternatives:
java-version: "{java-version}"
- lf-infra-docker-login:
global-settings-file: "{mvn-global-settings}"
settings-file: "{mvn-settings}"
# must provide maven settings AFTER docker-login due to its cleanup
- lf-provide-maven-settings:
global-settings-file: "{mvn-global-settings}"
settings-file: "{mvn-settings}"
- lf-maven-versions-plugin:
maven-versions-plugin: "{maven-versions-plugin}"
version-properties-file: "{version-properties-file}"
mvn-version: "{mvn-version}"
mvn-pom: "{mvn-pom}"
mvn-settings: "{mvn-settings}"
- inject:
properties-content: |
CONTAINER_PULL_REGISTRY={container-public-registry}
CONTAINER_PUSH_REGISTRY={container-snapshot-registry}
- lf-maven-build:
mvn-goals: "{mvn-goals}"
- lf-sigul-sign-dir:
sign-artifacts: "{sign-artifacts}"
sign-dir: "$WORKSPACE/m2repo"
sign-mode: "{sign-mode}"
- lf-provide-maven-settings-cleanup
- job-template:
# Job template for creating snapshot docker images
# identified by given unique tag with maven
# in project-specific CSIT flow
name: "{project-name}-{stream}-maven-docker-snapshot"
id: gerrit-maven-docker-snapshot
<<: *integration_maven_common
# yamllint disable-line rule:key-duplicates
<<: *integration_maven_docker_snapshot
######################
# Default parameters #
######################
branch: master
build-days-to-keep: 30 # 30 days in case a release takes long to get approved.
build-timeout: 60
disable-job: false
git-url: "$GIT_URL/$PROJECT"
github-url: "https://github.com"
java-version: openjdk8
maven-versions-plugin: false
version-properties-file: version.properties
mvn-central: false
mvn-global-settings: global-settings
mvn-goals: clean deploy
mvn-opts: ""
mvn-params: ""
maven-version: mvn36
ossrh-profile-id: ""
mvn-pom: ""
sign-artifacts: false
sign-mode: serial
stream: master
submodule-recursive: true
submodule-timeout: 10
submodule-disable: false
parameters:
- infra-parameters:
project: '{project}'
branch: '{branch}'
refspec: 'refs/heads/{branch}'
artifacts: '{archive-artifacts}'
- maven-exec:
maven-version: '{maven-version}'
- maven-params:
mvn-params: '{mvn-params}'
- integration-unique-docker-tag:
unique-docker-tag: ''