我是Gitlab CI / CD的新手,因此这个问题对其他人来说似乎非常基本。
我创建了两个作业 - 一个是由在VM上配置的GitlabRunner拾取的,另一个应该在指定的docker镜像上运行。
我的.gitlab-ci.yml看起来像这样:
stages:
- build
- deploy
job1:
stage: build
script:
- *do something*
tags:
- matlab # specific gitlab runner is configured for this tag
job2:
image: *docker-image* # this is the docker image i want to use
stage: deploy
script:
- *do something*
我观察到有时候,GitLab CI / CD也会在为matlab标签配置的VM上运行job2。
这似乎不寻常。有没有人观察过这个?
谢谢!
答案 0 :(得分:0)
你还需要:
防止带有标签的跑步者在没有标签的情况下挑选作业
当Runner没有分配标签时,您可以配置Runner以防止它选择带标签的作业 首次注册跑步者时可以启用此设置,之后可以在每个跑步者的设置下进行更改。
使Runner选择标记/未标记的作业:
- 访问项目的设置➔CI/ CD
- 找到您想要的跑步者,并确保它已启用
- 点击铅笔按钮
- 选中Run untagged jobs选项 单击“保存更改”以使更改生效