GitLab CI/CD課程8

Define Custom Variables

ZONGRU Li
Aug 8, 2022

基於前面6 & 7兩篇筆記都有使用到GitLab本身內建(predefined)

提供的變數(LINK):

有空可以看幾眼上述文件中是否有適宜使用的GitLab預設變數

而在很多情況下,我們也會需要自行定義變數,例如:

  1. 微服務的名稱當作變數
  2. 佈署的環境名稱,用在CICD流程上

但是自訂義變數的區塊不是在CICD的部分,而是在底下的Settings →CICD:

但是以上的變數加入有以下特性:

  • 儲存於git repository之外,i.e.無法使用於gitlab-ci.yml
  • 通常用於token密碼,基於資安考量這類不適合存於repository的東西

基本建立如下:

然後就會看到:

接著再新增另一個變數(大小寫其實都可以,但是這邊還是統一大寫好讀):

接著回到CICDEditor進行調整,加入上述兩個變數:

第一處改的地方
第二處修改的地方

然後commit看結果!

再到另一段:

File Type Variables:

  • 其實概念上有點像K8SSECRET
  • 有可能用檔案方式來放置DB連線資訊(url,帳號,密碼)等等

再次新增變數:

Type上可以改成File:

Value區塊內容型態可以是:

  1. yaml格式
  2. json格式
  3. key-value pair格式

得到:

很快畫面自動跳出:

針對以上的變數使用,後面還會有更多真實的應用方式

Define variable in gitlab-ci.yml file:

一個簡單的應用可能是在:

所以何不直接在該Job內定義變數,例如:

單一Job使用

或直接放在全域內:

最後完整pipeline:

另外其實這邊變數大小寫也都可以!

參考課程(reference)

--

--

ZONGRU Li
ZONGRU Li

Written by ZONGRU Li

2022/11/17 開源部分個人筆記給LINE "Java程式語言討論區"社群,希望能對社群的技術學習做一點點貢獻.(掩面....記得退訂閱!

No responses yet