在Azure DevOps中,我创建了一个内部版本。在该版本中,我创建了一个ProjectBuildNumber Pipeline变量,该变量可以在队列时间设置。然后在“选项”->“内部版本号”格式下使用该变量来设置我在Azure中显示的内部版本号。
但是,我试图在我正在构建/部署的代码中使ProjectBuildNumber变量可设置。有没有一种方法可以让我的内部版本中有一个任务来更新该ProjectBuildNumber并更新Azure DevOps中的内部版本号?
答案 0 :(得分:1)
有没有一种方法可以让我的版本中有一个任务来更新ProjectBuildNumber并更新Azure DevOps中的内部版本号?
答案是是。
您可以在构建定义中添加一个Inline Power-Shell
任务,以更新ProjectBuildNumber
的值,然后基于它更新内部版本号:
Write-Host "##vso[task.setvariable variable=ProjectBuildNumber;]YourUpdateValue"
Write-Host "##vso[build.updatebuildnumber]xxx.$(ProjectBuildNumber).xxx.xxx"
在构建过程中检查Logging Command以获得更多详细信息:
此外,如果要在 UI / Web门户上更新管道变量的值,则需要REST API(Definitions - Update)从构建任务更新构建管道定义变量的值。
有一个非常相似的主题,您可以查看答案的详细信息:
How to modify Azure DevOps release definition variable from a release task?
注意:将API更改为构建定义:
PUT https://dev.azure.com/{organization}/{project}/_apis/build/definitions/{definitionId}?api-version=5.0
希望这会有所帮助。
答案 1 :(得分:0)
我们可以通过两种方式更新 Azure Devops 中的内部版本号。 一个来自选项部分/选项卡和第二个通过 PowerShell 脚本。
要从 Power shell 脚本更新内部版本号.. 我们需要添加以下脚本..
写入主机“##vso[build.updatebuildnumber]$(VersionNumber).$(VersionRevision)”
这里我们使用了 2 个变量:VersionNumber 和 VersionRevision。 我们需要在 PipeLine Configurations 中添加 2 个变量。 VersionNumber 将是所需的数字,VersionRevision 是每次创建新版本时都会更新的计数器编号。 请查看 You Tube 视频中的完整演示
答案 2 :(得分:-1)
请查看以下Microsoft文档:Variables
根据您的操作系统,您可以添加Powershell / Batch / Bash Task并更改变量。
编辑:经过研究后,变量的更改似乎将显示在以下任务中。看看这个问题Update environment variables using task.setvariable
in a bash script does not work