gpt4 book ai didi

azure - 如何重用 Azure 中不同管道的工件

转载 作者:行者123 更新时间:2023-12-03 05:31:37 25 4
gpt4 key购买 nike

我在 2 个不同的存储库中有 2 个管道:

  • repo.git 中的 lib.yml 生成可重用的库工件 A(为此需要在不同节点上的多个阶段),并且还有一个在生成 A 后运行自动测试的阶段。
  • app.git 中的 app.yml 构建并测试需要 A 构建的应用程序。

在app.yml中,我想集成A而不重复lib.yml。有人告诉我模板是一种解决方案,但我不太确定。在我可以使用所需的工件之前,必须运行 lib.yml 的多个阶段。使用作业模板只会使两个管道变得复杂并创建对管道内部的依赖。 app.yml 不应该知道 lib.yml 如何构建 A。

查阅文档后,我认为管道资源更接近我的需要。但我不完全理解它是如何工作的。假设我们想要分支 B 上的 lib.yml 中的工件 A。

  1. app.yml 会使用分支 B 的最新可用工件 A 还是会在 B 上启动 lib.yml?

  2. 有没有办法告诉 app.yml:如果可用,请使用 lib.yml 的最新 A 作为分支 B,否则在 B 上运行 lib.yml 并等待 A 准备就绪?

最佳答案

你,你说得对-resource pipelines应该为你做一份工作。

要运行 app.yml,你应该有这样的东西:

resources:
pipelines:
- pipeline: hadar
source: kmadof.hadar
trigger:
branches:
- B

并仅使用:

- download: hadar

从分支 B 的管道中获取最新的工件。

您还可以选择运行 app.yaml 手册的管道并选择工件:

enter image description here

enter image description here

enter image description here

并且 - download: hadar 也获得了正确的工件。

所以

  1. app.yml 将使用分支 B 的最新可用工件 A。
  2. 如果您想要 app.yaml 触发 lib.yaml,然后从 lib.yaml 获取工件,那么使用开箱即用的功能将很困难且不可能。因此,没有现成的方法可以让 app.yaml 触发 lib.yaml 并等待来自 lib.yaml 的工件。如果您的应用 yaml 将由资源管道触发器以外的其他触发器触发,它将使用分支 B 的最新可用工件 A。

关于azure - 如何重用 Azure 中不同管道的工件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64983372/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com