![](/img/trans.png)
[英]Should I use single or multiple GitLab CI Runners for multiple projects?
[英]Execute multiple runners for single gitlab CI pipeline
我有一個 gitlab CI 配置為構建代碼並將其部署到 3 個不同的服務器,在部署每個服務器之前只需稍作更改。 在部署之前,我根據正在部署的服務器編輯一些文件,並從 CI 管道推送到同一個 repo。 為此,我想使用 3 個不同的運行器來運行,以便構建代碼並將其部署到每個服務器,但找不到如何做。 我可以讓管道中的每個作業在多個運行器上並行運行(使用並行矩陣),但是作業運行的順序(即首先在所有運行器上執行 1 個作業),更改不會持續到部署作業。
有沒有辦法可以觸發多個跑步者執行相同的工作? 或者是他們的解決方法。
我不確定我是否完全理解這個問題,但我認為你錯過了stages
。
您可以在.gitlab-ci.yml
中這樣定義您的階段(您可以隨意命名它們):
stages:
- build
- test
- deploy
這樣,管道將等待所有build
作業完成,然后再運行test
作業。
現在,您必須指定作業應在哪個階段執行:
build_job_1:
variables:
NODE_OPTIONS: --max_old_space_size=8192
GIT_CLEAN_FLAGS: none
stage: build
tags:
- runner1
build_job_2:
variables:
NODE_OPTIONS: --max_old_space_size=4096
stage: build
tags:
- runner2
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.