Azure devops 如果nuget包不是最新的,如何阻止管道?
我在azure DevOps上有一个构建管道,其中包含以下任务: -Pack.net核心Azure devops 如果nuget包不是最新的,如何阻止管道?,azure-devops,azure-pipelines,Azure Devops,Azure Pipelines,我在azure DevOps上有一个构建管道,其中包含以下任务: -Pack.net核心 -检查nuget依赖项 -发布工件 第一个任务打包nuget,第二个任务检查它们的版本并显示存在的最新版本 我需要做的是管道停止,以防nuget包不是最新的 知道如何设置它吗?作为建议,您可以定义一个关于当前nuget软件包最新版本的全局变量,以及当前nuget软件包版本 创建两个变量,分别为LastVersion和NewVersion变量 LastVersion是包源上nuget包的最后一个版本,您应该
-检查nuget依赖项
-发布工件
第一个任务打包nuget,第二个任务检查它们的版本并显示存在的最新版本 我需要做的是管道停止,以防nuget包不是最新的
知道如何设置它吗?作为建议,您可以定义一个关于当前nuget软件包最新版本的全局变量,以及当前nuget软件包版本 创建两个变量,分别为
LastVersion
和NewVersion
变量
LastVersion
是包源上nuget包的最后一个版本,您应该搜索它并为其提供值
NewVersion
是您要打包的当前nuget版本
之后,使用条件为'$(LastVersion)'-eq'$(NewVersion)
的powershell任务取消作业。有关步骤,请参阅
或者,您可以使用powershell任务下的退出1
,并使用以下命令取消此操作:
#if LastVersion is the same as NewVersion, cancel the job
if( '$(LastVersion)' -eq '$(NewVersion)')
{
exit 1
}
else
{
exit 0
}
谢谢你的建议,但我不认为它涵盖了整个问题,因为我有几个软件包,每个都有不同的版本。实际上,我已经找到了一个名为“Nukeeper”的任务,它似乎涵盖了这个问题,但是我有一个错误“Oauth missing”。问题是没有任何插槽可以填充令牌信息。这是一个简单的解决方法。您的需求非常复杂,可能无法满足您的期望。而且,我找不到Nukeeper任务。你能试一下这方面的步骤吗?