Rid*_*his 19 tagging yaml gitlab
我已经阅读了文档,一些文章,你可能会称我为愚蠢,但这是我第一次使用这样的概念.
但是我的工作究竟是如何依赖这些标签的呢?所有这些操作都必要吗?如果我将新代码推送到repo,那么无论如何我都会执行*.yml文件.
那么,如果我只想在提交中定义版本时运行构建,该怎么办?
IDK ...
git commit --tags "v. 2.0" -m "this is version 2.0" (probably not right)
Run Code Online (Sandbox Code Playgroud)
但当然它应该是通用的,所以我不必总是告诉使用哪个标签来触发转轮,但是例如让他识别数值.
正如你所看到的,我很困惑......如果你能详细说明标签是如何工作的,那么我就能理解这个概念,我将非常感激.
elb*_*aid 39
GitLab CI的标签和Git的标签是两个不同的概念.
编写时.gitlab-ci.yml,可以使用标记指定一些作业testing.如果有关联此标签的跑步者可用,它将获取该作业.
在Git中,在您的存储库中,标记用于标记特定的提交.它通常用于标记版本.
当您使用标签(在Git中)在GitLab CI中启动管道时,这两个概念可能会混淆.在你的.gitlab-ci.yml,你可以指定一节only用tags.
请参阅GitLab文档标签和唯一的.
一个例子是你用git推送标签:
$ git tag -a 1.0.0 -m "1.0.0"
$ git push origin 1.0.0
Run Code Online (Sandbox Code Playgroud)
.gitlab-ci.yml像这样的工作:
compile:
stage: build
only: [tags]
script:
- echo Working...
tags: [testing]
Run Code Online (Sandbox Code Playgroud)
会开始使用带testing标签的跑步者.
根据我的理解,您的步骤中缺少的是testing为您的跑步者指定标签.为此,请将GitLab导入您的项目.在Wiki旁边
,单击" 设置".转到CI/CD管道,那里有你的跑步者.在它的Guid旁边,单击笔图标.在下一页上,可以修改标签.
所有这些操作都是必要的吗?
不,如果你只有一个跑步者,或者如果你有很多跑步者但不关心哪个跑步者运行你的工作,那么标记跑步者/工作是没有意义的。
那么如果我只想在提交中定义版本时才运行构建怎么办?
job:
only:
- tags
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
40422 次 |
| 最近记录: |