1

是否可以使用标签安排 yaml 管道。我想要实现的是一种简单的方法来指定要构建的提交。对于这个系统,它需要在每次部署时重建。我不想为此使用分支,因为我想在需要部署新版本时避免合并。

最终,我会将标签名称放在一个变量中以便于更新。似乎标签也可以与触发器一起使用,但我无法让它与时间表一起使用。

我尝试过这样的事情,但没有任何反应。如果我用 master 更改 refs/tags/release-20200907-4,它可以工作

schedules:
  - cron: "*/5 * * * *"
    always: true
    branches:
      include:
      - refs/tags/release-20200907-4
4

1 回答 1

2

看起来这是不可能的。以下文档

计划触发器评估 当发生以下事件时,将为分支评估计划触发器。

  • 创建了一个管道。
  • 管道的 YAML 文件通过推送或在管道编辑器中进行编辑来更新。
  • 管道的 YAML 文件路径已更新以引用不同的 YAML 文件。此更改仅更新默认分支,因此只会在更新的 YAML 文件中为默认分支选择计划。如果任何其他分支随后合并默认分支,例如 git pull origin master,则为该分支评估来自新引用的 YAML 文件的计划触发器。
  • 创建了一个新分支。

在分支中发生这些事件之一后,如果该分支与该分支的 YAML 文件中包含的计划触发器的分支过滤器匹配,则添加该分支的任何计划运行。

并且由于文档清楚地仅提及分支而不是标签,并且测试证明这不适用于标签,因此无法实现您想要的。甚至触发器评估也是由新分支而不是新标签触发的。

您可以考虑在开发者社区添加此功能请求。

于 2020-09-08T01:14:48.667 回答