iT邦幫忙

2021 iThome 鐵人賽

DAY 6
0
DevOps

和 gitlab 一起當個好朋友系列 第 6

Day06-Gitlab runner 簡介

CI/CD 簡介

CI/CD 可拆成三個連續的步驟

  1. Continuous Integration 持續整合藉由頻繁的整合,來減輕版本之間差異過大時,會發生的合併困難甚或失敗。在此階段,通常還會加入自動化測試來確保待合併的分支,不會發生功能錯誤。
  2. Continuous Delivery 持續佈署在確定程式碼的功能性正常後,會自動因應不同的環境進行相對應的程式檔佈署。佈署完成後,可以進行手動測試驗證。
  3. Continuous Deployment 持續交付在已經有相對應的程式檔後,自然就要落地到機器上來正式運行,給客戶們使用啦,這就是這階段的目的。

GitLab 上的 CI/CD 介紹

image

圖片來源 https://docs.gitlab.com/ee/ci/introduction/

當程式碼異動的時候可以觸發 Runner

依據 gitlab-ci.yml 的 job 步驟執行

GitLab 提供三種 Runner 的權限

  • Shared Runner: 當數個專案的 CI/CD job 都有相同的需求,可以節省為了每一個專案各開一個 Runner ,而導致可能性的閒置。Runner 會根據 Project 正在運行的 job 來挑選接下來要運行的 job ,可避免有某個 Project 過量的 job 導致其他 project 的 job 無法執行,詳細可以參考 fair usage queue
  • Group Runners: 該 Group 下的所有 Project 皆有此 Runner 的權限。採用 FIFO 來處理 jobs
  • Specific Runner: 當組織中的多個專案 CI/CD job 需求的環境差很多時,需要採用這個來確保環境的隔離。此 Runner 採用 FIFIO 來處理 jobs

上一篇
Day05-CORS 的迷思
下一篇
Day07-gitlab-ci.yml
系列文
和 gitlab 一起當個好朋友15
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言