使用 GitLab Runner 建立 CI 流程 - 上
CI/CD 一直一來都是前端和後端共同的話題,因為自動化流程不管是應用在哪個領域用途都是相當大的,會節省相當多的時間和人力,如果結合軟體開發流程,甚至衍生出 DevOps 等等規範,而本篇則是用 GitLab Runner 建立一套 CI 流程。
工具選擇
在選擇工具前,還是先知道我們要做什麼?所以說明一下什麼是 CI/CD
- CI: Continuous integration 持續集成,程式碼上傳後會自動編譯和測試和靜態檢查等等
- CD: Continuous delivery 持續交付,CI 確認成功後自動發佈到正式環境
網路上有太多優秀介紹 CI/CD 的文章,這裡只留 GitHub 和 GitLab 的官方解釋
想要為你的產品做一套 CI 流程,考慮因素很多,例如你的程式碼放哪裡?你的產品是網站、App還是服務?專案數量?共同的開發人員數量?金錢預算?
因此其實沒有最佳解,找到適合自己公司或產品才是重要的。
網路上也有相當多的線上服務,例如:Bitrise、TravisCI、CircleCI…
由於這次程式碼的部分是在”自架的 GitLab”上
因此選擇”GitLab Runner”做為搭配
( 如果用公開的 GitLab 實作 CICD 流程,步驟是差不多的 )
安裝 CICD 流程
- 找到你的 GitLab Repo > Setting > CI/CD > Runners
- 找到 Registration URL 和 Registration token
- 有一台實體或虛擬的 CI 機
- CI 機執行以下步驟建立 Runner ( 這裡 CI 機是用 macOS 系統 )
- 註冊 runner:
gitlab-runner register - 輸入 GitLab 的網址
- 輸入 Token
- 輸入 Description
- 註冊 runner:
1 | Please enter the gitlab-ci coordinator URL (e.g. https://gitlab.com ) |
- 操作指令啟動或關閉 runner
1 | #啟動所有runner |
- 回到 GitLab Repo > Setting > CI/CD > Runners 就可以設定開啟連動指定 Runner
- Repo 也需要新增
.gitlab-ci.yml就會開始運作,下一篇文章會說明一下 CI 腳本並且提供範例
- 程式碼上傳就會開始跑 CI 了,可以在 CI/CD > Pipelines 看結果
CI 機推薦調整事項
- 設定Mac的共享連線 => 隨時可以遠端回 CI 機做調整!
- 終端機連線
ssh user@192.168.000.000 - Safari 連線
vnc://192.168.000.000
- 終端機連線
- 固定IP設定 => IP 不亂跳!
- 避免CI機睡眠
- 前往 系統偏好設定 => 能源節約器
- 勾選「避免電腦在顯示器關閉時自動進入睡眠」
CI 機 iOS 環境設定 ( 選用 )
- 安裝 Xcode,可使用 Xcodes 下載
- 安裝 xcpretty
- 安裝 slather
- 安裝 cocoapods
其他可能問題
設定環境語言(解決:invalid byte sequence in US-ASCII (ArgumentError))
- 輸入指令編輯 bashrc or bash_profile(不一定…似乎跟終端機環境設定有關),不確定的話可以都設定
1
2sudo vi ~/.bashrc
sudo vi ~/.bash_profile1
2
3export LANGUAGE=en_US.UTF-8
export LANG=en_US.UTF-8
export LC_ALL=en_US.UTF-8
希望這篇文章有幫助到您的開發之路!如果能給我一些按讚支持,我會非常感謝您的鼓勵!祝壞蟲遠離您!
評論





