Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/tfs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Azure devops 链接Azure DevOps管道_Azure Devops - Fatal编程技术网

Azure devops 链接Azure DevOps管道

Azure devops 链接Azure DevOps管道,azure-devops,Azure Devops,我希望下面的Azure DevOps管道在两个资源管道成功构建相同的主提交时自动触发。这可能吗?现在,当其中一条管道完成并导致两次运行时,它就会触发 触发器:无 公关:没有 资源: 管道: -管道:“buildPipeline1” 来源:“BuildPipeline1” 触发: 分支机构: -主人 -管道:“buildPipeline2” 来源:“BuildPipeline2” 触发: 分支机构: -主人 现在这是不可能的。您的管道将在任何已定义的触发过程中触发。所以,如果你需要这样的东西,你需

我希望下面的Azure DevOps管道在两个资源管道成功构建相同的主提交时自动触发。这可能吗?现在,当其中一条管道完成并导致两次运行时,它就会触发

触发器:无
公关:没有
资源:
管道:
-管道:“buildPipeline1”
来源:“BuildPipeline1”
触发:
分支机构:
-主人
-管道:“buildPipeline2”
来源:“BuildPipeline2”
触发:
分支机构:
-主人

现在这是不可能的。您的管道将在任何已定义的触发过程中触发。所以,如果你需要这样的东西,你需要使用webhook来构建。例如,当管道成功时,您可以调用Azure函数。在某些数据库或其他形式的状态中跟踪管道a为提交32563456而运行,然后当管道B为相同的提交而运行并且您的函数收到通知时,您将从Azure函数触发此管道


我知道这听起来像是大量的工作,但不支持开箱即用。

很抱歉,现在不可能

对于管道触发器,我们只能在完成另一个后触发管道,将触发管道指定为管道资源

您可以在这里查阅我们的官方文件--

我能遇到的唯一解决方法是,在两个管道的末尾添加一个任务,如果相同的提交生成和生成成功,则查询另一个管道的状态

最后,我们可以添加TaskPowerShell并添加脚本来调用RESTAPI,以便根据之前的任务结果对构建/任何其他管道进行排队

$connectionToken="PAT"
$base64AuthInfo= [System.Convert]::ToBase64String([System.Text.Encoding]::ASCII.GetBytes(":$($connectionToken)"))
$PipelineUrl = "https://dev.azure.com/{Org name}/{project name}/_apis/pipelines/{Pipeline ID}/runs?api-version=6.0-preview.1" 

$body ="{ 
 `"resources`":{
        `"repositories`":{
            `"self`":{`"refName`":`"refs/heads/master`"
            }
         }
    }
}"
$Pipelines = Invoke-RestMethod -Uri $PipelineUrl -ContentType "application/json" -Body $body -Headers @{Authorization=("Basic {0}" -f $base64AuthInfo)} -Method POST

谢谢Krzysztof的回复。我会调查的!谢谢帕特里克的回复!我一定会研究你的解决办法。我将“未解决”的问题留给您了解,并希望您或任何其他人能够在Azure DevOps支持的情况下提供更新。