【发布时间】:2026-01-22 19:45:02
【问题描述】:
我在一个平台团队工作,该团队构建并支持 Azure Pipelines YAML 模板和这些管道的各种自定义脚本。我组织中的人员使用这些 YAML 模板,例如:
resources:
repositories:
- repository: templates
type: git
name: PROJECT/cicd_stuff
ref: refs/heads/releases/v0.21
extends:
template: our_awesome_template.yml@templates
parameters:
...
为了可靠地将我们的脚本版本与 YAML 模板的版本相匹配,我们现在在管道模板中包含一个额外的构建阶段,用于检查 repo 模板 repo 并将我们的所有脚本放入一个工件中以供使用在那次运行中。使用“发布分支”可以让我们安全地发布和测试管道的新功能和修复:团队可以按照自己的节奏升级他们的管道,旧版本仍然支持一段时间。
我想开始将 Azure Artifacts 用于我们的脚本工件,但现在我想知道“如何确定我应该从 Azure Artifacts 下载哪个版本的脚本?”资源块中包含的信息对我有用,但我似乎无法使用表达式或预定义变量访问它。我目前能想到的唯一解决方案是使用 az pipelines cli。有什么想法吗?
【问题讨论】:
-
我不知道使用 Azure Artifacts 会带来什么。您认为与您现在使用的方法相比有哪些优势?我已经多次成功地使用了您现在使用的方法;唯一的区别是我们使用标签而不是分支。
-
我们已经开始将这些部署脚本打包为 PowerShell 模块中的函数,并且我们也开始使用 Python。我看到其他团队对使用我们的脚本很感兴趣,我认为如果他们可以从 Azure Artifacts 提要中获取它们会非常有用。当然,我可以同时做到这两点:对我们的管道使用当前方法和将我们的包发布到 Azure Artifacts。在这里使用两种不同的方法只是很痒。
标签: azure-devops azure-pipelines azure-pipelines-yaml