Azure devops Azure DevOps中是否有用于检查生成是否来自门控签入的变量?

Azure devops Azure DevOps中是否有用于检查生成是否来自门控签入的变量?,azure-devops,azure-pipelines,azure-devops-rest-api,Azure Devops,Azure Pipelines,Azure Devops Rest Api,我在Azure DevOps中有两个构建定义,一个用于门控签入,另一个用于持续集成到发布中。我想使用一个构建定义来运行我们的GCI和CI构建,这样我就不必使用类似的设置、拆卸等来维护两个单独的构建定义 当构建排队时,我是否可以在Azure DevOps中检查变量,以区分该构建是否由GCI的PR触发?如果有更好的方法全神贯注。是的!有一个变量生成。原因: IndividualCI:由Git推送或TFVC签入触发的持续集成(CI) BatchedCI:由Git推送或TFVC签入触发的持续集成(CI)

我在Azure DevOps中有两个构建定义,一个用于门控签入,另一个用于持续集成到发布中。我想使用一个构建定义来运行我们的GCI和CI构建,这样我就不必使用类似的设置、拆卸等来维护两个单独的构建定义


当构建排队时,我是否可以在Azure DevOps中检查变量,以区分该构建是否由GCI的PR触发?如果有更好的方法全神贯注。

是的!有一个变量
生成。原因

IndividualCI:由Git推送或TFVC签入触发的持续集成(CI)

BatchedCI:由Git推送或TFVC签入触发的持续集成(CI),已选择批更改

签入服务器集:门控签入触发器

因此,您可以在生成任务中添加一个条件,以仅运行生成的GCI/CI,例如(仅当生成为CI时运行):


我认为可以使用名为Build.Reason的预定义变量

将其添加到Build number格式,然后无论何时触发构建,都可以直接在构建中看到触发它的内容

例如,如果生成编号格式为$(日期:yyyyMMdd)$(Build.Reason),则生成#将显示20190523PullRequest或符合变量定义的其他格式

我希望这对你有帮助,祝你有一个愉快的一天

and(succeeded(), in(variables['Build.Reason'], 'IndividualCI', 'BatchedCI'))