在VSTS上配置Nuget包以进行预发布
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在VSTS上配置Nuget包以进行预发布相关的知识,希望对你有一定的参考价值。
注意如果有更简单的方法来创建预发布包,请告诉我!
我正在使用Visual Studio Team Services并设置了nuget包和发布步骤。
我有一个名为$(BuildSuffix)
的构建变量,它允许我将构建特定的变量标记到构建数字格式的末尾,就像这样
$(Build.DefinitionName)_1.0 $(日期:YYYY)$(日期:MM)$(日期:DD)$(REV:.R)$(BuildSuffix)
那么我的想法就是我可以将$(BuildSuffix)
设置为-beta
,这样我的最终构建版本可能就是Build_1.0.20170119.2-beta
。
根据nuget documentation here,将-beta
附加到内部版本号将创建一个预发布包。 VSTS中的构建带有-beta附加,但nuget pack阶段似乎永远不会包含它。它总是作为确切的版本号出现,但没有-beta
标签。
我的nuspec文件看起来像这样:
<package >
<metadata>
<id>MyCompany.Data</id>
<version>$version$</version>
我的NuGet包步骤如下所示:
经过一番研究,把头撞在砖墙上,我弄明白了。你必须:
- 配置本地构建代理
- 安装Nuget CLI
- 在Nuget Packager Task上将
Path To NuGet.exe
设置为NuGet CLI - 在同一个屏幕上设置
NuGet Arguments
到-suffix beta
使用新的NuGet任务(版本2),您可以指定其他构建属性,您可以直接传递自定义构建号,而不是使用-suffix NuGet参数。额外的构建属性用nuspec中提供的值替换$ token $,你可以自由地改变你想要的东西。
我也在你的屏幕截图中看到它,但我从未尝试过使用旧的NuGet任务,因为现在已经弃用了这些任务。
也许尝试导入我在私人项目中使用的NuGet打包任务组定义会很有帮助。看看Here。
以上是关于在VSTS上配置Nuget包以进行预发布的主要内容,如果未能解决你的问题,请参考以下文章