【问题标题】:Access pull request changes programmatically in Azure DevOps pull request validation pipeline?在 Azure DevOps 拉取请求验证管道中以编程方式访问拉取请求更改?
【发布时间】:2020-02-11 00:54:11
【问题描述】:

对于被触发以验证拉取请求的管道,是否可以从管道访问 PR 信息?比如改变了什么

我有一个庞大的脚本和配置存储库,如果在 PR 中只涉及几个文件,那么检查所有这些是没有意义的

我看过这个,但它没有太多信息 https://docs.microsoft.com/en-us/azure/devops/repos/git/pull-request-status?view=azure-devops

【问题讨论】:

    标签: azure-devops azure-devops-rest-api


    【解决方案1】:

    在 dev.azure.com 门户上,如果您转到管道并最后运行,请单击链接, 和此处的突出显示 ,它将带您到 GitHub 并更改拉取请求

    【讨论】:

    • 请查看更新后的问题,我正在寻找一种以编程方式访问更改的方法
    【解决方案2】:

    从配置为 PR 的构建策略的一部分的管道中,您可以使用 $(Build.SourceVersion) 变量并调用 Rest API 来找出 changed in a Commit 是什么。或者也许只是用 git 命令git diff COMMIT

    然后,根据已更改的内容和您要测试的内容,设置 environment variables,然后在 conditions 中使用它以仅在管道中运行某些 Stages\Jobs\Steps。取决于您需要验证或测试的内容...

    另一个更容易考虑的方法是为脚本存储库的不同部分创建单独的验证管道。然后对于触发 PR 的分支策略,为您的每个构建策略配置 路径过滤器,以便仅在对给定路径中的文件进行更改时运行管道。

    【讨论】:

      猜你喜欢
      • 2020-02-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多