azure-devops - Azure DevOps 管道中的条件 ManualValidation 步骤
问题描述
使用 Azure DevOpsManualValidation
任务,作业是否可以根据管道中先前定义的变量有条件地运行?
该作业接受一个enabled
参数,但似乎必须将其硬编码为真或假。
- stage: Approve_${{ targetPath.stageName }}_${{ parameters.planEnvironment }}
jobs:
- job: waitForValidation
displayName: Wait for external validation
pool: server
timeoutInMinutes: ${{ parameters.timeoutInMinutes }}
steps:
- task: ManualValidation@0
environment: development ## environment not accepted here
#enabled: $[destroy] ## Unexpected value '$[destroy]'",
#enabled: $(destroy) ## fails - syntax error (does not like this to be a var)
# manually setting true/false works
#enabled: true
#enabled: false
inputs:
notifyUsers: |
alert@test.com
instructions: 'Please validate the build configuration and resume'
onTimeout: 'reject'
解决方案
enabled
control 选项为boolean
type,表示是否运行此步骤,默认为'true'。如果您想使用enabled
控制选项来调节 ManualValidation 步骤,您可以检查以下语法:
variables:
- name: destroy
value: true
jobs:
- job: waitForValidation
displayName: Wait for external validation
pool: server
timeoutInMinutes: 4320 # job times out in 3 days
steps:
- task: ManualValidation@0
timeoutInMinutes: 1440 # task times out in 1 day
enabled: ${{ variables.destroy }}
inputs:
notifyUsers: |
test@test.com
example@example.com
instructions: 'Please validate the build configuration and resume'
onTimeout: 'resume'
否则可以在@Shayki Abramczyk 提到的步骤下指定条件。
推荐阅读
- php - 如何从 shell_exec 执行另一个 php 脚本
- r - R数据框仅具有匹配的行
- java - Java StringBuilder 字符附加返回不需要的数字
- reactjs - 使用 Babel-Plugin-React-Css-Modules 导入库样式表
- r - 如何在 R 中使用 sparklyr 进行整数除法(mod)?
- angular - 如何在 ionic 3 / angular 中动态添加 [ngStyle] 指令
- angular - 使用 POST 参数创建 post 服务
- c# - 连接到 SQL Server 2012 并出现服务器表单错误
- c# - 来自网站的 WebRequest 返回意外结果
- dji-sdk - DJI SDK iOS APP 遥测