# Common configuration for all branches
version: 1.0.{build}
max_jobs: 2
clone_depth: 10
clone_folder: c:\projects\vcmi\source
install:
- bash c:\projects\vcmi\source\CI\msvc\install.sh
build_script:
- cmd: c:\projects\vcmi\source\CI\msvc\build_script.bat
artifacts:
- path: build_$(VCMI_BUILD_PLATFORM)\*.exe
notifications:
  - provider: Slack
    incoming_webhook:
      secure: zxT3HTnxL744HiSv7ig7sjGL4LmJ8n3MsY8PEA/kinbVMkmcxrSgVBVkHV79RfSWSyq4oLMSRvMMpG8SuDWnf6oK/qvgaiAWfwwlCIiA7uQ=

# Branch-specific configuration
for:
# Extended configuration for toolchain_test branch
-
  branches:
    only:
      - toolchain_test
  environment:
    matrix:
      - NAME: MSVS 2015 x86 - Release
        APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
        VCMI_GENERATOR: Visual Studio 14 2015
        VCMI_BUILD_PLATFORM: x86
        VCMI_BUILD_CONFIGURATION: Release
      - NAME: MSVS 2015 x86 - Debug
        APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
        VCMI_GENERATOR: Visual Studio 14 2015
        VCMI_BUILD_PLATFORM: x86
        VCMI_BUILD_CONFIGURATION: Debug

      - NAME: MSVS 2015 x64 - Release
        APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
        VCMI_GENERATOR: Visual Studio 14 2015 Win64
        VCMI_BUILD_PLATFORM: x64
        VCMI_BUILD_CONFIGURATION: Release
      - NAME: MSVS 2015 x64 - Debug
        APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
        VCMI_GENERATOR: Visual Studio 14 2015 Win64
        VCMI_BUILD_PLATFORM: x64
        VCMI_BUILD_CONFIGURATION: Debug

      - NAME: MSVS 2017 x86 - Release
        APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
        VCMI_GENERATOR: Visual Studio 15 2017
        VCMI_BUILD_PLATFORM: x86
        VCMI_BUILD_CONFIGURATION: Release
      - NAME: MSVS 2017 x86 - Debug
        APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
        VCMI_GENERATOR: Visual Studio 15 2017
        VCMI_BUILD_PLATFORM: x86
        VCMI_BUILD_CONFIGURATION: Debug

      - NAME: MSVS 2017 x64 - Release
        APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
        VCMI_GENERATOR: Visual Studio 15 2017 Win64
        VCMI_BUILD_PLATFORM: x64
        VCMI_BUILD_CONFIGURATION: Release
      - NAME: MSVS 2017 x64 - Debug
        APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
        VCMI_GENERATOR: Visual Studio 15 2017 Win64
        VCMI_BUILD_PLATFORM: x64
        VCMI_BUILD_CONFIGURATION: Debug

# Special configuration for coverity_scan branch
-
  branches:
    only:
      - coverity_scan
  environment:
    matrix:
      - NAME: Coverity - MSVS 2015 x86 - Release
        APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
        VCMI_GENERATOR: Visual Studio 14 2015
        VCMI_BUILD_PLATFORM: x86
        VCMI_BUILD_CONFIGURATION: Release
        environment:
    coverity_token:
      secure: XNnpYevnZxGmXW1zLu+3js2S+pqfWPQmL26hVgOTBTI=
    coverity_email:
      secure: JDd5yXvYaq/yJEVjoadEhA==
  build_script:
    - cmd: c:\projects\vcmi\source\CI\msvc\coverity_build_script.bat
  after_test:
    - ps: c:\projects\vcmi\source\CI\msvc\coverity_upload_script.ps

# Default configuration for all other branches
-
  environment:
    matrix:
      - NAME: MSVS 2015 x86 - Release
        APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
        VCMI_GENERATOR: Visual Studio 14 2015
        VCMI_BUILD_PLATFORM: x86
        VCMI_BUILD_CONFIGURATION: Release
      - NAME: MSVS 2017 x64 - Release
        APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
        VCMI_GENERATOR: Visual Studio 15 2017 Win64
        VCMI_BUILD_PLATFORM: x64
        VCMI_BUILD_CONFIGURATION: Release
