每个项目一个Gitlab CI跑步者?

时间:2017-03-29 17:50:39

标签: gitlab-ci gitlab-ci-runner

我们一举从Gitlab 7.11.4升级到9(意外)。现在我们正试图让CI设置为之前为我们运行的方式。我知道CI现在是一个整合的东西。

我的一个同事得到了一个多跑者的事情。运行命令如下所示:

/usr/bin/gitlab-ci-multi-runner run --working-directory /home/gitlab-runner --config /etc/gitlab-runner/config.toml --service gitlab-runner --syslog --user gitlab-runner

但之前我们每个项目都有1个跑步者,我们有一个用户关联每个项目。因此,如果我们有2个名为“portal”和“engine”的项目,我们就会创建用户:

gitlab-runner-fps-portal
gitlab-runner-fps-engine

作为用户,他们将拥有以下主页文件夹:

/home/gitlab-runner-fps-portal
/home/gitlab-runner-fps-engine

在较早版本的CI中,您将拥有一个config.yml,其中包含CI的url和runners令牌。现在你有了config.toml。

我想从这个在用户“gitlab-runner”下运行的多重设置“离婚”引擎运行器,并拥有自己的运行在“gitlab-runner-fps-engine”下的运行器。

容易吗?现在,因为所有这个docker业务对我们来说都是新手,我们将继续使用“shell”作为gitlab中的执行者,如果这些信息有用的话。

1 个答案:

答案 0 :(得分:0)

至少有两种方法可以做到:

  1. 在每个项目中注册specific runner并禁用共享的跑步者。
  2. 使用tags指定必须在特定跑步者上运行作业。这样,您可以在定义的环境中运行一些CI作业,而其他(例如lint)可以在标记的共享运行程序上运行。