首页 > 解决方案 > 使用 YAML 在本地构建 Azure DevOps 管道

问题描述

在将其推送到分支以测试可能的错误之前,如何在本地计算机上模拟 Azure Devops 管道的构建过程。

该解决方案在本地正确构建,没有错误和警告。也从 VS 命令行MSBuild构建没有错误的解决方案,但在一些推送尝试中,管道构建会引发许多错误,主要与preprocessor defenitionprecompiled header.

我想知道如何在我的机器上本地测试相同的过程而无需推送到 repo。

azure-pipelines.yml
-------------------
pool:
  vmImage: 'vs2017-win2016'

steps:
- task: MSBuild@1
  displayName: 'Build solution'
  inputs:
    platform: 'Win32'
    configuration: 'release'
    solution: 'mysolution.sln'
- task: VSTest@2
  displayName: 'Run Test'
  inputs:
    platform: 'Win32'
    Configuration: 'release'
    testAssemblyVer2: |
     **\*.Test.dll
     !**\*TestAdapter.dll
     !**\obj\**
    runSettingsFile: project.Test/test.runsettings
    codeCoverageEnabled: true 

标签: visual-c++azure-devopsazure-pipelines

解决方案


如果您使用的是 git repsotiory,您可以创建另一个分支并发出拉取请求。只要拉取请求未设置为自动完成,代码就不会提交到存储库。

如果您使用的是 TFVC 存储库,则可以设置配置为失败的封闭式构建。该管道应该是原始管道的副本,但在生成管道的末尾添加一个 PowerShell 任务,该任务会引发终止错误。请务必在单独的分支上设置此门控构建,以免阻碍正常开发。

Write-Error "Fail here" -ErrorAction 'Stop'

您现在可以在没有实际提交代码的情况下发出拉取请求或触发门控构建。

如果需要其他代理,可以使用AzurePipelinesPS通过 Install-APAgent 命令在本地计算机上安装代理。


推荐阅读