Gitlab CI每个阶段的不同执行者

时间:2016-07-20 14:02:44

标签: gitlab-ci gitlab-ci-runner

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

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

1 个答案:

答案 0 :(得分:5)

不完全是阶段,但您可以使用tags配置选项让不同的参赛者运行不同的作业,这样可以为您提供所需的内容。

添加(在跑步者创建期间或稍后在项目设置中 - >运行者)将 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]