azure-devops - 如何指定特定 Azure 作业需要作业级别的给定操作系统?
问题描述
我所有的构建代理都在一个池中,但不同的构建代理有不同的操作系统。然而,某些工作需要 Windows,而我目前未能成功地通过要求将其告诉为 azure:
stages:
- stage: project_frontend
dependsOn: common_container
demands: Agent.OS -equals Windows_NT
jobs:
- job: build_container
steps:
- task: Docker@2
displayName: 'login to docker hub'
inputs:
command: login
containerRegistry: dockerHubServiceConnection
解决方案
在此处查看文档:YAML 架构参考。工作级别支持池和需求。以Microsoft 托管代理为例:
jobs:
- job: Windows
pool:
vmImage: 'vs2017-win2016'
steps:
- script: echo hello from Windows
- job: macOS
pool:
vmImage: 'macOS-10.14'
steps:
- script: echo hello from macOS
- job: Linux
pool:
vmImage: 'ubuntu-16.04'
steps:
- script: echo hello from Linux