git - 仅在 master 上基于 Gitlab CI 标签的发布管道
问题描述
我正在寻找一种方法来确保 Gitlab CI 中的某些作业(发布)仅在分支是主分支并且使用的标记与特定模式匹配时才运行。为此,我使用了以下语句,但由于某种原因,Gitlab 不能同时识别分支和标签,而且似乎这个语句永远不会正确。
building:
stage: build
only:
refs:
- master
variables:
- $CI_COMMIT_REF_NAME =~ /^v[0-9]+\.[0-9]+(\.[0-9]*)?/
script:
- echo "Start building"
我也尝试过相同的脚本CI_COMMIT_TAG
,但是没有用。
我不能-tags
用于该only
部分,因为它会被任何标签触发,无论标签格式是什么。
PS:我正在使用以下命令将发布标签添加到master
.
git tag -a v2.1.3 -m "Releasing version v2.1.3"
git push --tags
解决方案
推荐阅读
- javascript - 向列表中的项目添加日期并将其显示在网页上
- node.js - 带有 ts-node 的工作线程
- node.js - nginx 502 错误网关错误 - 节点和反应
- laravel - 通过日期过滤记录不起作用 laravel
- python - 如何在 QListView 中显示从 QAbstractListModel 派生的自定义模型
- r - 计算 R 中值组合的出现次数
- gradle - 带有文件分隔符的依赖项在 gradle 6.0 版本中无法解析
- django - django runserver:关系“django_migrations”已经存在
- powershell - PowerShell - 解压缩大型档案 - 运行空间工厂
- python - 带优先队列的线程