Azure Release Pipeline 的下载结果

Posted

技术标签:

【中文标题】Azure Release Pipeline 的下载结果【英文标题】:Download result of Azure Release Pipeline 【发布时间】:2021-06-03 14:46:55 【问题描述】:

我有一个发布管道,它结合了两个构建管道工件来创建完整的发布。完成后我需要能够下载此任务的结果。

我运行存档任务来压缩结果,但我不知道如何将其保存在可以使用 Azure Pipeline 代理下载的位置。

是否有可以将其作为下载触发的任务,或者我可以将其保存为工件?

谢谢

【问题讨论】:

您是否使用 YAML 进行管道和发布?还是不行? 不,我使用的是经典管道。 所以你需要使用发布管道工件任务。 这在发布管道上不起作用,除非是文件共享 【参考方案1】:

是的,您要做的就是发布,然后在发布管道中使用工件。这里有documentation

steps:
- publish: $(System.DefaultWorkingDirectory)/bin/WebApp
  artifact: WebApp

如果你使用 Yaml,那么你应该使用这个:

steps:
- download: current
  artifact: WebApp

如果您使用经典版本,则需要在设计器上对其进行配置。

请在您的管道中使用此任务:

然后在此处配置您的版本:

【讨论】:

感谢您的回复。在构建管道上拥有工件的部分我已经在工作了。也是我在发布时结合两个构建管道工件的部分。我想要获得的是,而不是部署到应用程序服务或本地服务器,我希望最终结果作为我可以下载的 zip 文件。 Publish 在 Release Pipelines 上不起作用,除非我给它一个我没有的共享。 确保我理解你。您想下载两个工件,将它们压缩并作为另一个工件发布? 是的,类似的,在发布期间我将我们的 FE Artifact 复制到 API artifact 中。修改那些使用powershell的文件。然后我压缩更新的 API 工件。我想要那个拉链。通常,在这些转换之后,我会部署到应用服务或本地服务器,这可以正常工作,但我希望在某些转换上使用不同值的 zip。 你不能在发布管道上发布这个。你可以做另一个构建管道。你将使用Download Build Artifacts task,做一些你需要的转换,然后作为另一个工件发布,最后将这个工件用于你的发布管道。 我会试一试,因为我更喜欢它而不是挖掘代理的目录结构。【参考方案2】:

刚刚意识到,如果我使用本地代理执行此操作,我可以从代理的文件结构中获取文件。

如果我能直接从 Azure 获取文件就好了。

谢谢。

【讨论】:

太棒了!感谢您在此处分享您的解决方案,您可以接受它作为答案,这样它可以帮助遇到相同问题的其他社区成员,我们可以存档此线程,谢谢。

以上是关于Azure Release Pipeline 的下载结果的主要内容,如果未能解决你的问题,请参考以下文章

在 azure 后端存储中使用状态文件将 terraform 的输出传递到 Azure Devops Pipeline

Azure Pipeline - 获取关联的 git TAG?

Azure DevOps CI-Exporting to a target version is not supported in this release

如何组织 azure-pipeline.yaml 文件

如何向 Azure 存储授予对 Azure Pipeline 的 Azure 文件副本的访问权限?

如何从 Azure DevOps Pipeline 读取 Azure 文件共享文件