【发布时间】:2023-12-24 04:33:01
【问题描述】:
我正在尝试在我们的主分支上为 PR 设置一些构建验证(我们正在使用 Git 和 VSTS)。我添加了一些构建策略来启动各种构建,具体取决于哪些文件已更改。对于一些背景知识,我们在流程的早期创建 PR,以便我们可以跟踪更改并在我们的功能分支开发时添加 cmets。
现在,我希望这些构建运行并成功以完成 PR,但是,我不希望发布这些构建的输出(工件)。我们的发布着眼于要部署的最新构建工件,在这种情况下,最新的构建工件将来自 PR。如果我们确实允许发布来自 PR 的这些构建工件,那么我们会将功能分支代码(来自 PR)发布到我们的主站点,这是不可取的(我们有一个单独的发布来处理我们的功能分支机构)。
基本上,在进行 PR 时,我只想运行构建以确保一切都符合要求,然后在构建完成后将其丢弃。
除了为 PR 验证创建构建定义之外,我不确定我能做什么。我用谷歌搜索并四处询问,但我要么没有问正确的问题,要么答案没有我希望的那么简单。
希望我已经包含了足够的细节来解释我的问题。
TL;DR
如何在 PR 上运行构建验证,而无需发布获取并部署验证构建产生的构建工件?
编辑(更多细节)
我尝试向发布任务添加条件(也尝试将发布置于一个阶段并有条件地运行它)。但是,当我发布新版本时,它仍然会看到运行的构建定义。现在,我想如果我尝试发布该构建定义,它会失败,因为没有创建工件。但是我什至不想在发布时看到该构建定义(不想意外选择它)。
【问题讨论】:
标签: git azure-devops azure-pipelines azure-pipelines-release-pipeline