我在Azure DevOps中创建了一个管道。现在我想集成Http调用Azure管道任务。
如果响应为200/201,则将执行其他管道生成步骤,否则将不执行其他管道任务。
建议我解决如何实现这一目标。
发布于 2019-07-23 14:29:56
您可以让Http进入PowerShell,然后根据结果集一个变量,其他任务将取决于这个变量。例如:
$response = Invoke-WebRequest -Uri http://test.com -Method Get
$statusCode = $response.StatusCode
if(($statusCode -eq 200) -or ($statusCode -eq 201))
{
Write-Host "##vso[task.setvariable variable=status]ok"
}
else
{
Write-Host "##vso[task.setvaraible variable=status]notOk"
}现在,在其他任务中,您可以添加status变量的自定义条件基:
and(succeeded(), eq(variables['status'], 'ok'))在yaml中:
- task: CmdLine@2
inputs:
script: 'echo Test'
condition: and(succeeded(), eq(variables['status'], 'ok'))在编辑中:

https://stackoverflow.com/questions/57163719
复制相似问题