git - 在 VSTS 中使用 git 标签或 package.json 版本作为发布名称

标签 git azure-devops hadoop-yarn package.json azure-pipelines-release-pipeline

我在 VSTS 中有一个用于自动构建和测试的 CI 任务,以及一个用于“最新的构建定义默认分支带有标签”的自动发布定义。

版本名称格式当前设置为默认值 $(rev:r),它只是设置一个与任何实际版本无关的递增数字。

当我更新包版本时,我更愿意使用我的应用程序的版本作为发布名称,无论是来自 package.json 还是来自 yarn 创建的 git 标签。有什么办法可以实现吗?

最佳答案

您不能直接使用 git 标签或 package.json 版本作为发布名称,因为只有 p art of predefined variables can be used for release name ,并且变量不能在构建和发布之间持续存在。

但是您可以使用组变量来获得帮助:在您的 CI 构建结束时使用 git 标签或 package.json 版本更新组变量值,并使用组变量作为发布姓名。详细步骤如下:

  1. 添加变量组

    在 Build and Release Hub -> Library Tab -> Add Variable group (such as release name) 与变量(如 tag)具有任何初始值(例如 0)。

    enter image description here

  2. 在 CI 构建中更改组变量

    您可以添加 PowerShell 任务以使用 git 标签或 package.json 版本更改组变量。

    • 要获取标签名称,可以使用git命令git tag --points-at HEAD
    • 要获取 package.json 版本,您可以使用 powershell 脚本搜索以 "version" 等开头的行。
    • 要更新组变量,您应该使用 REST API Variablegroups - Update .
  3. 在release中使用group变量

    要在发布名称中应用 git 标签或 package.json 版本,您可以更改发布定义,如下所示:

    版本定义 -> 变量选项卡 -> 变量组 -> 链接变量组 -> 选择变量组 -> 选项选项卡 -> 指定带有修订版本名称的组变量标签。

    enter image description here enter image description here

现在当发布被触发时,它会使用 git 标签或 package.json 版本和 revision 作为发布名称。

关于git - 在 VSTS 中使用 git 标签或 package.json 版本作为发布名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50496990/

相关文章:

git - 我可以依赖 `git fetch <sha>` 吗?

git - 撤销意外的 git rebase 更改

visual-studio-2013 - TF10175 : The My Project team project does not exist

azure - 使用 azure pipeline 标记 docker 容器

hadoop - NoClassDefFoundError org/apache/hadoop/yarn/server/timelineservice/collector/TimelineCollectorManager

git - 如何使用具有功能分支之间依赖关系的 Gitflow?

git - 从 Git 中选择单个文件历史记录?

hadoop - 无法在 HUE oozie 中运行 spark 作业。异常 : "datanucleus-api-jdo-3.2.1.jar does not exist"

azure-devops - 如何在 Azure DevOps 的 Script.PostDeployment.sql 中引用 sql 脚本(而非过程)?

hadoop - 如何从 ResourceManager Web UI 终止应用程序