我在Azure DevOps中使用以下简单的构建管道,并将发行版部署到临时插槽。
我想要一个构建修订/版本字符串,并且该字符串是自动递增的。然后,我想在我的Web应用程序中显示它,以便我可以判断该软件的哪个版本正在生产中。
当前,我显示.csproj文件中的版本字符串。
<Version>1.1.4.7</Version>
然后使用以下代码显示在网页上:
Version: @typeof(Startup).Assembly.GetName().Version.ToString()
如果我可以更新现有的版本字符串,那将是不错的选择,但我愿意更改为在CI流程中最容易集成的版本。
答案 0 :(得分:3)
.Net Core世界中的版本已得到简化。
编辑您的csproj并进行如下修改:
<PropertyGroup>
<Version Condition=" '$(BUILD_BUILDNUMBER)' == '' ">1.0.0.0</Version>
<Version Condition=" '$(BUILD_BUILDNUMBER)' != '' ">$(BUILD_BUILDNUMBER)</Version>
</PropertyGroup>
如果您的文件没有版本节点,请添加以上内容。
以上设置将意味着本地调试将为您提供1.0.0.0的版本,并且在这种情况下,如果您在非Azure DevOps环境中进行构建,则最终也将获得1.0.0.0版本。 $(BUILD_BUILDNUMBER)是由Team Build设置的环境变量,将在VSTS或TFS生成时进行更新。
.Net版本的格式应为[major]。[minor]。[build]。[revision],每个段的范围是0到65000之间的数字。您可以在中配置内部版本号格式>选项标签,请参见here有关格式的更多信息。有关配置版本的有用步骤,请参见here。
答案 1 :(得分:0)
您应该使用Azure DevOps Pipelines版本(也称为Azure Pipelines版本),而不要使用Azure DevOps Pipelines版本(也称为Azure Pipelines版本)。默认情况下,Azure Pipelines发布会自动增加您的发布。
Azure Pipelines构建默认情况下没有自动版本编号。因为增加版本后应该在发布阶段完成,因为构建应该只涉及持续的集成,而不能用作对要发布的构建进行版本控制。
这是Azure Pipelines版本的官方文档,可自动增加您的版本: https://docs.microsoft.com/en-us/azure/devops/pipelines/release/?view=vsts#numbering