# 2021-01-12 #「GitLab CI/CD」- 環境變數(常見問題整理)
阿新 • • 發佈:2021-01-12
在 .gitlab-ci.yml 中,針對環境,使用不同的變數
GitLab CI/CD environment variables | GitLab
Environments and deployments | GitLab
問題描述
在 .gitlab-ci.yml 中,我們需要針對不同環境,使用不同的變數值。
解決方案
注意:我們這裡的示例採用“先使用,後定義”的流程,這樣比較容易理解。
第一步、在 YAML 中,使用環境變數:
1)使用 environment.name.staging 指定環境;
2)在指令碼中,使用我們定義的 ${FOO} 環境變數(在第二步中定義):
stages: - deploy deploy_staging: stage: deploy environment: name: staging script: - echo ${FOO}
第二步、在 GitLab 中,定義 FOO 變數:
1)在專案中 => Settings / CI/CD / Variables => 定義變數
2)當定義變數時,在 Scope 中,設定不同的值(萬用字元),以匹配 environment.name.staging 欄位
3)執行 Job 即可,然後觀察 echo ${FOO} 輸出;
定義全域性環境變數(Instance-level environment variables)
GitLab CI/CD environment variables / Instance-level CI/CD environment variables | GitLab
問題描述
我們定義“全域性環境變數”,以在各個專案中使用(而不是僅僅定義專案級環境變數或者組級別環境變數)。
解決方案
首先,保證 GitLab >= 13.1 版本。
然後,在 Admin Area’s Settings / CI/CD / Variables 中,點選 Add variable 設定;
參考文獻
WikiNotes/環境變數(常見問題整理)
GitLab CI/CD environment variables | GitLab