GitLab 推出至今已許多年,早已成為許多團隊、企業在建立內部原始碼版本控制很重要的夥伴,其 GitLab CI 在建立內部持續整合(Continuous Integration, CI)、持續部署(Continuous Delivery, CD)流程上,更是提供了很不錯的解決方案,能滿足許多的需求。
我將透過這系列文章,紀錄 GitLab CI 使用過程中可能發生的種種,希望透過這系列可以幫助大家 "Up And Running"
在流水線的進行中,有些時候工作能否被執行,跟執行工作的環境是絕對相依的,以 GitLab.com 提供的免費 GitLab Runner 來說,通常承接工作的...
在 GitLab CI 中,流水線上每道關卡每個工作順利執行與否,都是控制著整條流水線如何進行的依據關鍵之一;工作可能因為當下的環境因素無法執行,但重新執行即可...
有些時候,流水線(pipeline)上的系統部署、原始碼打包等工作,可能需要花費大量的時間或系統資源,因此,在這種資源或時間成本相對高的專案上,當流水線上還有工...
隨著技術的演進,許多程式語言、框架都開始有了套件相依管理的機制,像 PHP 使用了 Composer,JavaScript、Node.js 由 npm 管理而...
軟體開發的流程中,有些時候,同樣的內容因應開發階段的不同,可能需要在不同的系統上執行,如軟體的部署,在開發階段可能需要部署到開發(Develop)環境,在正式上...
在大型專案中,可能會把專案依功能、架構等等因素,切分為多個子專案,雖然切分為多個子專案,有些邏輯可能還是有類似的地方,例如前端或後端的部署可能只有環境變數的不同...
在專案過程中,透過 GitLab CI 建立流水線,讓研發過程中如編譯、測試、打包、部署等工作都得以順利的自動化,除了讓開發變得更有效率,也在無形之中,形成了保...
讓 GitLab CI 的工作流程的流水線加速,透過上一篇的大部分解有了思考流程上的脈絡,接下來要開始從每個階段中的工作細節去思考,應該怎麼讓整個流水線再次的加...
上一篇談到從 .gitlab-ci.yml 開始建立關卡及工作,而後依序分派到工作佇列,等待 GitLab Runner Server 上的 Runner 來承...
隨著專案的演進,當團隊導入 GitLab CI 工作流程之後,通常會是陸續的針對專案需要增加更多的流程,而時間一久 .gitlab-ci.yml 的內容就很有可...