---
# vim: sw=2 ts=2 sts=2 et :

- job-template:
    #
    # job template for verifying gerrit changeset by shell script
    #
    # Required Variables:
    #   project-name:   name of project
    #   area:           area of project covered with this verification job
    #   project:        name of scm repository to work on
    #   stream:         name of stream used (set the same as branch if you're not sure)
    #   branch:         git branch to work on
    #   script:         build script to execute
    # Optional Variables:
    #   pattern:          trigger job only if modification covered file in pattern
    #   build-node:     label(flavor) of jenkins slave
    name: '{project-name}-{stream}-{area}-verify-shell'
    node: '{build-node}'
    type: freestyle

    pattern: '**'

    parameters:
      - lf-infra-parameters:
          branch: '{branch}'
          project: '{project}'
          stream: '{stream}'
          lftools-version: '{lftools-version}'

    scm:
      - gerrit-trigger-scm:
          refspec: '$GERRIT_REFSPEC'
          submodule-recursive: '{submodule-recursive}'
          choosing-strategy: 'gerrit'

    triggers:
      - gerrit-trigger-patch-submitted:
          server: '{server-name}'
          project: '{project}'
          branch: '{branch}'
          files: '{pattern}'

    builders:
      - shell: '{script}'

    publishers:
      - lf-infra-publish

- job-template:
    # Job template for 2 scm and script trigger
    #
    # Required Variables:
    #   branch:         git branch
    #   build-node:     what build node to run on
    #   script:         build script to execute
    #   extra-project:  extra gerrit project to checkout
    #   extra-refspec:  refspec for the extra project
    #   extra-branch:   branch to checkout for the extra project
    #   checkout-dir:   directory to checkout the extra project to
    #                     DO NOT SET THIS TO anything that translates to
    #                     $WORKSPACE as it will destroy the initial
    #                     project checkout

    name: '{project-name}-{stream}-two-scm-verify-script'

    project-type: freestyle
    concurrent: true
    node: '{build-node}'

    properties:
      - infra-properties:
          build-days-to-keep: '{build-days-to-keep}'

    parameters:
      - infra-parameters:
          project: '{project}'
          branch: '{branch}'
          refspec: 'refs/heads/{branch}'
          artifacts: '{archive-artifacts}'
      - maven-exec:
          maven-version: '{maven-version}'

    scm:
      - gerrit-trigger-scm:
          refspec: '$GERRIT_REFSPEC'
          choosing-strategy: 'gerrit'
          submodule-recursive: '{submodule-recursive}'
      - git-extra-project:
          project: '{extra-project}'
          refspec: '{extra-refspec}'
          branch: '{extra-branch}'
          checkout-dir: '{checkout-dir}'

    wrappers:
      - infra-wrappers:
          build-timeout: '{build-timeout}'

    triggers:
      - gerrit-trigger-patch-submitted:
          server: '{server-name}'
          project: '{project}'
          branch: '{branch}'
          files: '**'

    builders:
      - lf-infra-pre-build
      - provide-maven-settings:
          global-settings-file: 'global-settings'
          settings-file: '{mvn-settings}'
      # make sure maven gets installed / setup
      - maven-target:
          maven-version: '{maven-version}'
          goals: '--version'
          settings: '{mvn-settings}'
          settings-type: cfp
          global-settings: 'global-settings'
          global-settings-type: cfp
      - shell: '{script}'

    publishers:
      - infra-shiplogs:
          maven-version: '{maven-version}'



# vim: sw=2 ts=2 sts=2 et :

- job-template:
    # Job template for two scm and script trigger - for docker merge
    #
    # Required Variables:
    #   branch:         git branch
    #   build-node:     what build node to run on
    #   script:         build script to execute

    name: '{project-name}-{stream}-two-scm-merge-docker-script'

    project-type: freestyle
    concurrent: true
    node: '{build-node}'

    properties:
      - infra-properties:
          build-days-to-keep: '{build-days-to-keep}'

    parameters:
      - infra-parameters:
          project: '{project}'
          branch: '{branch}'
          refspec: 'refs/heads/{branch}'
          artifacts: '{archive-artifacts}'
      - maven-exec:
          maven-version: '{maven-version}'

    scm:
      - gerrit-trigger-scm:
          refspec: ''
          choosing-strategy: 'default'
          submodule-recursive: '{submodule-recursive}'
      - git-extra-project:
          project: '{extra-project}'
          refspec: '{extra-refspec}'
          branch: '{extra-branch}'
          checkout-dir: '{checkout-dir}'

    wrappers:
      - infra-wrappers:
          build-timeout: '{build-timeout}'

    triggers:
      - gerrit-trigger-patch-merged:
          server: '{server-name}'
          project: '{project}'
          branch: '{branch}'
          files: '**'

    builders:
      - lf-infra-pre-build
      - provide-maven-settings:
          global-settings-file: 'global-settings'
          settings-file: '{mvn-settings}'
      - docker-login
      # make sure maven gets installed / setup
      - maven-target:
          maven-version: '{maven-version}'
          goals: '--version'
          settings: '{mvn-settings}'
          settings-type: cfp
          global-settings: 'global-settings'
          global-settings-type: cfp
      - shell: '{script}'

    publishers:
      - infra-shiplogs:
          maven-version: '{maven-version}'

- job-template:
    # Job template for two scm and script trigger - for docker daily release
    #
    # Required Variables:
    #   branch:         git branch
    #   build-node:     what build node to run on
    #   script:         build script to execute

    name: '{project-name}-{stream}-two-scm-release-docker-script-manual'

    project-type: freestyle
    concurrent: true
    node: '{build-node}'

    properties:
      - infra-properties:
          build-days-to-keep: '{build-days-to-keep}'

    parameters:
      - infra-parameters:
          project: '{project}'
          branch: '{branch}'
          refspec: 'refs/heads/{branch}'
          artifacts: '{archive-artifacts}'
      - maven-exec:
          maven-version: '{maven-version}'

    scm:
      - gerrit-trigger-scm:
          refspec: ''
          choosing-strategy: 'default'
          submodule-recursive: '{submodule-recursive}'
      - git-extra-project:
          project: '{extra-project}'
          refspec: '{extra-refspec}'
          branch: '{extra-branch}'
          checkout-dir: '{checkout-dir}'

    wrappers:
      - infra-wrappers:
          build-timeout: '{build-timeout}'

    triggers:
      - gerrit-trigger-release-manually:
          server: '{server-name}'
          project: '{project}'
          branch: '{branch}'

    builders:
      - lf-infra-pre-build
      - provide-maven-settings:
          global-settings-file: 'global-settings'
          settings-file: '{mvn-settings}'
      - docker-login
      # make sure maven gets installed / setup
      - maven-target:
          maven-version: '{maven-version}'
          goals: '--version'
          settings: '{mvn-settings}'
          settings-type: cfp
          global-settings: 'global-settings'
          global-settings-type: cfp
      - shell: '{script}'

    publishers:
      - infra-shiplogs:
          maven-version: '{maven-version}'
