求职脚本在gitlab ci中运行在哪里?

时间:2015-04-28 10:59:47

标签: gitlab gitlab-ci gitlab-ci-runner

Job脚本在哪里运行?它是否与Runner在同一系统上运行? 跑步者如何运行脚本,以及构建在哪里保存? 如果有人可以解释Gitlab CI的全部流程,那将是很棒的。

1 个答案:

答案 0 :(得分:1)

是的,你的工作'脚本与跑步者在同一系统上运行。但在我深入研究之前,我们需要讨论术语。我的团队之前遇到过问题,因为“跑步者”这个词已经出现了问题。超载了。人类通常使用跑步者'意思是两件事:

  • gitlab-ci exe所在的服务器
  • gitlab-ci runner

前者应该是不言自明的;当你想创建一个gitlab-ci运行器时,你要做的第一件事是配置一个VM并将exe放在某个地方。

后者需要一些解释。 gitlab-ci跑步者不像詹金斯的奴隶;他们不是整个服务器。相反,gitlab-ci运行器就像工作区和Jenkins标签的组合。换句话说, gitlab-ci runners组合了服务器,gitlab实例,执行环境和一组标签。在同一台服务器上拥有多个gitlab-ci运行程序是完全可能的,而且实际上是正常的。

作业脚本与任何类型的跑步者完全分离(通过'作业脚本'我假设您的意思是从.gitlab-ci.yml文件调用的代码)。您从.gitlab-ci.yml调用的任何内容,以及其中的script元素都将被执行

  • 由匹配为运行脚本的作业配置的标签的跑步者
  • 在安装该跑步者的服务器上
  • 在shell或Docker或Vagrant容器中,取决于跑步者

最后,构建保存在安装跑步者的位置。该位置将取决于您删除gitlab-ci可执行文件的文件夹。否则,作业将以与Jenkins工作区相似的方式存储在文件系统中。