我有一个类似的具有多个 jobs.template 定义的 yaml,我想在 - 模板步骤之间添加一个手动批准步骤。有没有简单的方法可以做到这一点,或者我需要重做整个 yaml 吗?
# File: jobs/build.yml
parameters:
name: ''
pool: ''
sign: false
jobs:
- job: ${{ parameters.name }}
pool: ${{ parameters.pool }}
steps:
- script: npm install
- script: npm test
- ${{ if eq(parameters.sign, 'true') }}:
- script: sign
YAML
Copy
# File: azure-pipelines.yml
jobs:
- template: jobs/build.yml # Template reference
parameters:
name: macOS
pool:
vmImage: macOS-latest
- template: jobs/build.yml # Template reference
parameters:
name: Linux
pool:
vmImage: ubuntu-latest
- template: jobs/build.yml # Template reference
parameters:
name: Windows
pool:
vmImage: windows-latest
sign: true # Extra step on Windows only
我已经尝试添加 - 任务:ManualValidation@8 但它不起作用,因为我收到错误消息“Unexpected value 'task'”
您无法直接在作业之间添加任务 - 请使用作业或作业模板。
示例:
jobs:
- job: waitForValidation
pool: server
displayName: Wait for external validation
timeoutInMinutes: 4320 # job times out in 3 days
steps:
- task: ManualValidation@0
timeoutInMinutes: 1440 # task times out in 1 day
inputs:
notifyUsers: |
[email protected]
[email protected]
instructions: 'Please validate the build configuration and resume'
onTimeout: 'reject'
- job: doSomething
dependsOn: waitForValidation
displayName: Show environment variables
steps:
- checkout: none
- script: |
echo "Do something"
displayName: Echo message
注:
dependsOn
pool: server
中,值server
是保留关键字,表示这是一项无代理作业