请参阅使用 YAML 管道在 Azure DevOps 中构建工件
Posted
技术标签:
【中文标题】请参阅使用 YAML 管道在 Azure DevOps 中构建工件【英文标题】:See Build Artifacts in Azure DevOps with YAML Pipeline 【发布时间】:2020-01-22 15:32:55 【问题描述】:我似乎错过了什么。使用经典编辑器创建构建管道时,我可以在右上角看到一个工件选项卡:
在那里我可以浏览编译器创建的内容,帮助找出发布管道的文件夹结构。
现在,当我使用 YAML 模板(也是 NET 框架)创建构建管道时,没有 Artifacts 之类的东西:
根据日志,已经写入了一些文件。是否有某种文件浏览器,或者我必须猜测these variables 中的哪个与日志文件中的哪个文件夹匹配?
这是我的摘要页面的样子:
这是 YAML:
# .NET Desktop
# Build and run tests for .NET Desktop or Windows classic desktop solutions.
# Add steps that publish symbols, save build artifacts, and more:
# https://docs.microsoft.com/azure/devops/pipelines/apps/windows/dot-net
trigger:
- master
pool:
vmImage: 'windows-latest'
variables:
solution: '**/*.sln'
buildPlatform: 'Any CPU'
buildConfiguration: 'Release'
steps:
- task: NuGetToolInstaller@1
- task: NuGetCommand@2
inputs:
restoreSolution: '$(solution)'
- task: VSBuild@1
inputs:
solution: '$(solution)'
platform: '$(buildPlatform)'
configuration: '$(buildConfiguration)'
- task: ArchiveFiles@2
inputs:
rootFolderOrFile: '$(Build.BinariesDirectory)'
includeRootFolder: false
archiveType: 'zip'
archiveFile: '$(Build.ArtifactStagingDirectory)/Release.zip'
replaceExistingArchive: true
我使用的 YAML 主要是从 Github 存储库构建时生成的标准 YAML。如果我能看到神器,这会影响吗?我应该先以某种方式将 Github 内容复制到 Azure,然后再构建它吗?
【问题讨论】:
你能分享你的 YAML 吗? 【参考方案1】:更新:我发现了问题: GitHub 构建的默认 YAML 文件不包含“发布”步骤。将此添加到 Build YAML 的末尾
- task: PublishBuildArtifacts@1
inputs:
PathtoPublish: '$(Build.ArtifactStagingDirectory)'
ArtifactName: 'drop'
publishLocation: 'Container'
它实际上创建了“Artifacts”选项卡:
感谢大家的帮助
【讨论】:
太棒了!您可以在 2 天后接受它作为答案:-) 我们的摘要页面之间的差异是因为我启用了 Multi-stage builds 的预览功能。你可以试试这个新功能。【参考方案2】:这似乎是 classic
和 YAML
的不同 UI。
要查看工件结构,您可以转到一个构建的摘要页面(https://dev.azure.com/xxxx/xxxx/_build/results?buildId=xxx&view=results)。然后将焦点放在右侧部分,您将看到如下所示:
点击它,你会看到它的文件夹结构(https://dev.azure.com/xxx/xxx/_build/results?buildId=xxx&view=artifacts&type=publishedArtifacts):
【讨论】:
感谢您的回复。不幸的是,这不是我的摘要页面的样子。我在问题中添加了更多信息和屏幕截图。你能复习一下吗? @JensCaasenj,不知道怎么回事,当我想打开你的截图时出错imgur.com/a/v549YhE。你介意再和这个 Imgur 分享一下吗?以上是关于请参阅使用 YAML 管道在 Azure DevOps 中构建工件的主要内容,如果未能解决你的问题,请参考以下文章