####################
# 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: ''
