我在 VSTS 中有一个用于自动构建和测试的 CI 任务,以及“带有标签的最新构建定义默认分支”的自动发布定义。
版本名称格式当前设置为默认值 $(rev:r),它只是设置一个与任何实际版本无关的递增数字。
当我更新包版本时,我更愿意使用 package.json 或由yarn 创建的 git 标签中的应用程序版本作为发布名称。有什么办法可以达到这个目的吗?
您不能直接使用 git tag 或 package.json version 作为发布名称,因为只有预定义变量的部分可以用于发布名称,并且变量不能在构建和发布之间保留。
但是您可以使用组变量寻求帮助:在 CI 构建结束时使用 git 标签或 package.json 版本更新组变量值,并使用组变量作为发布名称。详细步骤如下:
添加变量组
在“构建和发布中心”->“库”选项卡->“添加变量组”(例如“
release name
”),其中包含具有任意初始值(例如“tag
”)的变量(例如“0
”)。
更改 CI 构建中的组变量
您可以添加 PowerShell 任务来使用 git 标签或 package.json 版本更改组变量。
git tag --points-at HEAD
。"version"
等开头的行。在release中使用组变量
要在发布名称中应用 git 标签或 package.json 版本,您可以更改发布定义,如下所示:
发布定义 -> 变量选项卡 -> 变量组 -> 链接变量组 -> 选择变量组 -> 选项选项卡 -> 指定带有修订版本的组变量标签作为发布名称。
现在,当触发发布时,它将使用 git 标签或 package.json 版本,并修改发布名称。