在GitLab CI中是否可以从一个阶段到另一个阶段export环境变量?我正在寻找类似于job artifacts功能的内容,仅用于环境变量而不是文件。

假设我正在configure阶段配置构建,并希望将结果存储为(秘密,受保护的)环境变量,以供下一个阶段使用。我可以将配置安全地保存在文件中,并将其存储为工作工件,但是我担心文件中提供的秘密信息比每个人都可以下载。

最佳答案

尚不具备此功能,但是此主题已经有issue了。

我的建议是将变量保存在文件中并缓存它们,因为这些变量将不可下载,并会在作业完成时删除。
如果您想100%确保可以手动将其删除。请参见clean_up阶段。

例如

cache:
 paths:
  - save_file

stages:
 - job_name_1
 - job_name_2
 - clean_up

job_name_1:
 script:
  - (your_task) >> save_file

job_name_2:
 script:
  - cat save_file | do_something_with_content

clean_up:
 script:
  - rm save_file
 when: always

关于environment-variables - 在GitLab CI中将环境变量从一个阶段导出到下一阶段,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44774520/

10-15 04:05