Gitlab CI每个阶段使用不同的执行器

3

在gitlab-ci.yml中是否可以有两个阶段,其中一个是使用docker runner运行,另一个是在shell中运行?

想象一下,我想在docker容器中运行测试,但我希望在容器中本地使用shell运行部署阶段。

1个回答

14

虽然不是真正的阶段,但你可以使用标签配置选项来运行不同的作业,通过不同的运行器来运行它们,这样可以完全满足你的需求。

在Docker运行器中添加标签docker,在Shell运行器中添加标签shell(可以在构建器创建时或稍后在项目设置 -> 运行器中添加)。然后在你的.gitlab-ci.yml文件中设置tags

stages:
  - test
  - deploy

tests:
  stage: test
  tags:
    - docker
  script:
    - [test routine]

deployment:
  stage: deploy
  tags:
    - shell
  script:
    - [deployment routine]

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接