如何在剪切新版本时触发GitLab CI/CD管道



我正在将我的项目从GitHub.com迁移到自托管的GitLab CE实例。我之前设置了一个GitHubActions管道,以便在从标签中剪切出新版本时发布应用程序。也就是说,当我转到github.com/<organization>/<project>/tags并编辑标签以发布发布时,以下*-workflow.yml脚本片段将触发我想要的操作:

on:
release:
types: [created]

GitLab CI/CD(.gitlab-ci.yml(上的等价物是什么?我搜索了所有的GitLab文档和辅助网站,如GitLab.redit.com和Stack Overflow,但找不到任何方法。需要明确的是,在GitLab中将标签转换为真正发布的步骤如下:

  1. 转到<GitLab CE>/<group>/<project>/-/releases/new
  2. "从";列表中的任何标记
  3. 填写详细信息
  4. 点击";创建发布"按钮

我希望GitLab在上面的步骤4之后立即执行我的script

我不确定Gitlab是否有类似的功能,或者至少我在文档中找不到任何东西。

解决方法可以是在创建标记后在CI管道中自动创建发布。因此,每当从特定分支创建标记时,CI管道都会创建一个发布。也可以使用$CI_COMMIT_TAG值控制Release的创建。

release:
stage: release
script:
- echo "Create release when a tag is created"
rules:
- if: '$CI_COMMIT_TAG' # Any tag is created
- if: '$CI_COMMIT_TAG =~ /^vd+.d+.d+-release/' # A specific tag with 'vX.Y.Z-release' pattern is created
release:
name: 'My awesome release'
tag_name: '$CI_COMMIT_TAG'

有关使用CI管道创建新Release的更多信息,您可以从以下文档中阅读此页:

从GitLab CI 创建发布

相关内容

  • 没有找到相关文章

最新更新