---
#
# ============LICENSE_START=======================================================
#  Copyright (C) 2018-2019 Nordix Foundation.
# ================================================================================
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#      http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
# SPDX-License-Identifier: Apache-2.0
# ============LICENSE_END=========================================================
- project:
    name: 'apache-geode-coordinator'
    project: 'Nordix/geode'

    stream:
      - 'release-nordix-1.9.0':
          branch: 'release-nordix/1.9.0'
    jobs:
      - 'apache-geode-verify-{stream}-coordinator'

- job-template:
    name: 'apache-geode-verify-{stream}-coordinator'
    project-type: multijob
    disabled: false
    concurrent: true
    node: geode-ubuntu1804

    parameters:
      - string:
          name: PROJECT
          default: '{project}'
          description: JJB configured PROJECT parameter to identify a Nordix GitHub project
      - string:
          name: BRANCH
          default: '{branch}'
          description: JJB configured BRANCH parameter for Nordix GitHub project

    properties:
      - logrotate
      - github:
          url: 'https://github.com/Nordix/geode.git/'
      - throttle:
          max-per-node: 1
          max-total: 3
          option: project

    wrappers:
      - openstack:
          single-use: True

    scm:
      - git-scm-github:
          branch: '{branch}'
          refspec: ''
          wipe_workspace: true
          clean_before: false
          base_dir: 'geode'

    triggers:
      - github

    builders:
      - multijob:
          name: SlaveSetup
          condition: SUCCESSFUL
          execution-type: SEQUENTIALLY
          projects:
            - name: 'apache-geode-SlaveSetup'
              current-parameters: true
              git-revision: false
              abort-all-job: true
              node-parameters: true
      - multijob:
          name: Test
          condition: SUCCESSFUL
          execution-type: SEQUENTIALLY
          projects:
            - name: 'apache-geode-UnitTest-jdk8'
              current-parameters: true
              git-revision: true
              abort-all-job: true
              node-parameters: true
            - name: 'apache-geode-UnitTest-jdk11'
              current-parameters: true
              git-revision: true
              abort-all-job: true
              node-parameters: true
            - name: 'apache-geode-StressNewTest-jdk11'
              current-parameters: true
              git-revision: true
              abort-all-job: true
              node-parameters: true
            - name: 'apache-geode-IntegrationTest-jdk11'
              current-parameters: true
              git-revision: true
              abort-all-job: true
              node-parameters: true
            - name: 'apache-geode-AcceptanceTest-jdk11'
              current-parameters: true
              git-revision: true
              abort-all-job: true
              node-parameters: true
            - name: 'apache-geode-UpgradeTest-jdk11'
              current-parameters: true
              git-revision: true
              abort-all-job: true
              node-parameters: true
            - name: 'apache-geode-DistributedTest-jdk11'
              current-parameters: true
              git-revision: true
              abort-all-job: true
              node-parameters: true
      - multijob:
          name: Build&Release
          condition: SUCCESSFUL
          execution-type: SEQUENTIALLY
          projects:
            - name: 'apache-geode-build-release-jdk8'
              current-parameters: true
              git-revision: true
              abort-all-job: true
              node-parameters: true

    publishers:
      - notify-slack:
          slack-channel: '#geode'
          notify-start: true
          notify-success: true
          notify-failure: true
          notify-back-to-normal: true