如何在gitlab-ci.yml脚本中设置环境变量?GitHub Action迁移场景
GitLab CI 实现环境变量持久化的操作方法
GitLab CI 提供了和 GitHub Action $GITHUB_ENV 对等的能力,对应实现方式分两种场景:
同Job内后续步骤读取变量
直接把需要设置的环境变量追加到 $GITLAB_ENV 文件即可,后续同Job的其他步骤可以直接读取该变量值。
你给出的示例转换后代码如下:
script: - > DISPLAY=:0 xvfb-run -s '-screen 0 1024x768x24' julia --project=monorepo -e 'using Pkg; Pkg.test("GLMakie", coverage=true)' && echo "TESTS_SUCCESSFUL=true" >> $GITLAB_ENV
跨Job读取变量
如果需要设置的环境变量可以被后续其他独立Job读取,需要配合dotenv报告实现:
- 将环境变量写入自定义的dotenv格式文件(比如
build.env) - 在Job的artifacts配置中声明该文件为dotenv类型报告
完整示例如下:
test_glmakie: script: - > DISPLAY=:0 xvfb-run -s '-screen 0 1024x768x24' julia --project=monorepo -e 'using Pkg; Pkg.test("GLMakie", coverage=true)' && echo "TESTS_SUCCESSFUL=true" >> build.env artifacts: reports: dotenv: build.env
后续Job不需要额外配置,就可以直接读取TESTS_SUCCESSFUL变量的值。
内容的提问来源于stack exchange,提问作者Manan Bordia
相关产品推荐
相关产品推荐

