---
#
# ============LICENSE_START=======================================================
#  Copyright (C) 2018-2020 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=========================================================
- job-template:
    name: 'win-geode-native-{test-type}'

    node: geode-windows2019
    disabled: true
    concurrent: true

    properties:
      - logrotate
      - github:
          url: 'https://github.com/Nordix/geode-native.git/'

    parameters:
      - string:
          name: PROJECT
          default: 'Nordix/geode-native'
          description: JJB configured PROJECT parameter to identify a Nordix GitHub project
      - string:
          name: BRANCH
          default: 'release-nordix/1.13.0'
          description: JJB configured BRANCH parameter for Nordix GitHub project
      - string:
          name: GEODE_SERVER_VERSION
          default: '1.13.1'
          description: Version of Geode Server required to test geode-native client on Windows
      - string:
          name: GEODE_SERVER_PATH
          default: 'C:\GeodeServer'
          description: Location of Geode Server on the Windows test instance
      - string:
          name: MSVC_TOOLSET_VERSION
          default: '14.25'
          description: MS Visual Studio build toolset version

    scm:
      - git-scm-github:
          branch: '$BRANCH'
          refspec: ''
          wipe_workspace: true
          clean_before: false
          base_dir: 'geode-native'

    wrappers:
      - workspace-cleanup:
          disable-deferred-wipeout: true

    builders:
      - '{build-executor}'

    publishers:
      - workspace-cleanup:
          clean-if:
            - failure: false
      - notify-slack:
          slack-channel: '#geode-ci'
          notify-start: true
          notify-success: true
          notify-failure: true
          notify-back-to-normal: true
