# Copyright (c) Microsoft Corporation.
# SPDX-License-Identifier: MIT
#
variables:
  windows-pool: 'PrWin-2020-06-30'
  linux-pool: 'PrLin-2020-06-30'

stages:
- stage: check_cxx_formatting
  displayName: 'Check the formatting of the C++'
  pool: $(windows-pool)
  jobs:
  - job:
    workspace:
      clean: resources
    steps:
    - task: Powershell@2
      displayName: 'Check C++ Formatting'
      inputs:
        filePath: 'scripts/azure-pipelines/windows/Check-CxxFormatting.ps1'
        arguments: '-Root .'
- stage: check_manifest_formatting
  displayName: Check the formatting of port manifests
  pool: $(windows-pool)
  dependsOn: []
  jobs:
  - job:
    workspace:
      clean: resources
    steps:
    - task: Powershell@2
      displayName: 'Check port manifest Formatting'
      inputs:
        filePath: 'scripts/azure-pipelines/windows/Check-ManifestFormatting.ps1'
        arguments: '-Root . -Downloads D:\Downloads'
- stage: run_port_ci
  displayName: 'Run the Port CI'
  dependsOn:
  - check_cxx_formatting
  - check_manifest_formatting
  jobs:
  - template: windows/azure-pipelines.yml
    parameters:
      triplet: x86-windows
      jobName: x86_windows
      poolName: $(windows-pool)

  - template: windows/azure-pipelines.yml
    parameters:
      triplet: x64-windows
      jobName: x64_windows
      poolName: $(windows-pool)

  - template: windows/azure-pipelines.yml
    parameters:
      triplet: x64-windows-static
      jobName: x64_windows_static
      poolName: $(windows-pool)

  - template: windows/azure-pipelines.yml
    parameters:
      triplet: x64-uwp
      jobName: x64_uwp
      poolName: $(windows-pool)

  - template: windows/azure-pipelines.yml
    parameters:
      triplet: arm64-windows
      jobName: arm64_windows
      poolName: $(windows-pool)

  - template: windows/azure-pipelines.yml
    parameters:
      triplet: arm-uwp
      jobName: arm_uwp
      poolName: $(windows-pool)

  - template: osx/azure-pipelines.yml

  - template: linux/azure-pipelines.yml
    parameters:
      poolName: $(linux-pool)