Continuous integration 从构建定义X获取最新的工件,并使用它来生成新工件

Continuous integration 从构建定义X获取最新的工件,并使用它来生成新工件,continuous-integration,azure-devops,azure-pipelines,Continuous Integration,Azure Devops,Azure Pipelines,我对azure管道的概念有点纠结,我正在寻找关于如何解决这个问题的提示: 我们有一个构建定义,它以不确定的间隔生成二进制工件生成器 我们有另一个构建定义,它应该每晚运行,从repo中提取一些源代码,从另一个构建定义中获取生成器工件,在源代码上执行它并生成一个新工件 我的问题是,如何从另一个构建定义中获取最新的构建 以下是我的问题的屏幕截图: 虽然我可以选择正确的构建定义,但构建必须是实际的构建。我不能在这里添加最新的尝试和失败,但我真的不想引脚的版本号 假设生成器是一种偶尔更新一次并添加新功能

我对azure管道的概念有点纠结,我正在寻找关于如何解决这个问题的提示:

我们有一个构建定义,它以不确定的间隔生成二进制工件生成器

我们有另一个构建定义,它应该每晚运行,从repo中提取一些源代码,从另一个构建定义中获取生成器工件,在源代码上执行它并生成一个新工件

我的问题是,如何从另一个构建定义中获取最新的构建

以下是我的问题的屏幕截图:

虽然我可以选择正确的构建定义,但构建必须是实际的构建。我不能在这里添加最新的尝试和失败,但我真的不想引脚的版本号

假设生成器是一种偶尔更新一次并添加新功能等的东西。单独的构建定义就在手边,它与生成生成器的构建定义无关,它只想使用最新的生成器,并从它自己的存储库生成一些可以在以后作为工件发布的内容

我很确定我错过了一些东西,我很乐意得到一些提示。设置当前版本而不是特定版本实际上不允许我选择与当前版本不同的项目和版本定义

从构建定义X获取最新的工件,并使用它来生成新工件

您使用的任务似乎不是最新版本,如0.131.1。当我添加此任务时,我的版本是0.148.1,有一个选项Build version可供下载,我可以选择最新版本:

所以,尝试删除它并再次添加,检查您是否有该选项

查看有关此问题的更多详细信息

此外,如果您无法获得最新版本,可以尝试使用该任务


希望这有帮助。

为此使用版本化的软件包和工件提要。想想NuGet、PIP、NPM等等@DanielMann你会建议对必须从命令行运行的可执行文件也这样做吗?是的。外部依赖是外部依赖。您不希望您的应用程序停止运行,因为在最近构建的外部依赖项中发生了破坏性的更改。您希望应用程序的旧版本的生成使用与最初生成时相同的依赖项。版本化软件包解决了这类问题。