.net core 如何使用.net核心构建任务构建预发布包
我有一个解决方案,其中包含许多.net core 如何使用.net核心构建任务构建预发布包,.net-core,azure-devops,nuget-package,.net Core,Azure Devops,Nuget Package,我有一个解决方案,其中包含许多csproj 在我的CI中,我希望所有csproj同时生成一个预发布包(版本号为预发布字符串)和一个具有常规版本号的发布包 稍后,在发布步骤中,我希望自动推送所有预发布包,并能够分别为每个发布包进行手动发布 我的csproj文件包含 <VersionPrefix>1.8.0</VersionPrefix> <VersionSuffix>$(VersionSuffix)</VersionSuffix> 1.8.0 $(
csproj
在我的CI中,我希望所有csproj同时生成一个预发布包(版本号为预发布字符串)和一个具有常规版本号的发布包
稍后,在发布步骤中,我希望自动推送所有预发布包,并能够分别为每个发布包进行手动发布
我的csproj
文件包含
<VersionPrefix>1.8.0</VersionPrefix>
<VersionSuffix>$(VersionSuffix)</VersionSuffix>
1.8.0
$(VersionSuffix)
在CLI中,我将使用dotnet-pack--version后缀foo
构建一个预发布版本,以构建版本1.8.0-foo
,并使用dotnet-pack
,而不使用其他参数来构建版本1.8.0
我正在尝试使用.netcore2.*
构建任务。我在pack options/automatic versioning下看到了自动版本控制,但它们似乎忽略了csproj
文件中的版本前缀
我如何配置这些东西,以便相同的csproj
可以在一个任务中内置到预发布包中,并在另一个任务中内置到发布版nuget包中,它们的区别仅在于一个任务将版本后缀设置为内部版本号,而另一个任务没有版本后缀
编辑:
我尝试在其他属性中设置VersionSuffix=bar
,但这给了我一个相当没有信息的错误:
日志:
2018-05-07T10:31:27.1536721Z[命令]C:\Windows\system32\chcp.com 65001
2018-05-07T10:31:27.1629285Z活动代码页:65001
2018-05-07T10:31:28.1487070Z[命令]“C:\Program Files\dotnet\dotnet.exe”
包D:\a\1\s\path\to\some.csproj——输出D:\a\1\a/p:Configuration=release$VersionSuffix=bar——详细的详细信息
2018-05-07T10:31:28.3350467Z Microsoft(R)针对.NET Core的构建引擎版本15.6.84.34536
2018-05-07T10:31:28.3351167Z版权所有(C)微软公司。版权所有
2018-05-07T10:31:28.3351324Z
2018-05-07T10:31:28.4870038Z###[错误]错误:C:\Program Files\dotnet\dotnet.exe失败,返回代码:1
2018-05-07T10:31:28.4881392Z###[错误]尝试打包文件时出错
只需为预发布包添加其他任务:
关闭
)Off
;其他生成属性:VersionSuffix=foo
)你解决了他的问题吗?@Martijn其他构建属性的值是
VersionSuffix=foo
,而不是$VersionSuffix=foo
(删除$
)啊,这就解决了问题。好的,但是我如何从构建环境中替换该foo呢。我尝试了VersionSuffix=CI-$(日期:yyyyMMdd)-(Rev:r)
,但它只是逐字插入。