GitLab CI/CD課程8
基於前面6 & 7兩篇筆記都有使用到GitLab本身內建(predefined)
提供的變數(LINK):
有空可以看幾眼上述文件中是否有適宜使用的GitLab預設變數
而在很多情況下,我們也會需要自行定義變數,例如:
- 微服務的名稱當作變數
- 佈署的環境名稱,用在CICD流程上
但是自訂義變數的區塊不是在CICD的部分,而是在底下的Settings →CICD:
但是以上的變數加入有以下特性:
- 儲存於git repository之外,i.e.無法使用於gitlab-ci.yml
- 通常用於token或密碼,基於資安考量這類不適合存於repository的東西
基本建立如下:
然後就會看到:
接著再新增另一個變數(大小寫其實都可以,但是這邊還是統一大寫好讀):
接著回到CICD的Editor進行調整,加入上述兩個變數:
然後commit看結果!
再到另一段:
File Type Variables:
- 其實概念上有點像K8S的SECRET
- 有可能用檔案方式來放置DB連線資訊(url,帳號,密碼)等等
再次新增變數:
Type上可以改成File:
Value區塊內容型態可以是:
- yaml格式
- json格式
- key-value pair格式
得到:
很快畫面自動跳出:
針對以上的變數使用,後面還會有更多真實的應用方式
Define variable in gitlab-ci.yml file:
一個簡單的應用可能是在:
所以何不直接在該Job內定義變數,例如:
或直接放在全域內:
最後完整pipeline:
另外其實這邊變數大小寫也都可以!