GitLab CI CD-从外部项目获取变量

时间:2019-11-21 18:43:54

标签: gitlab gitlab-ci gitlab-ci-runner

因此,我正在设置一个部署策略,我想看看是否可行。我已经仔细阅读过文档,但找不到任何不可能的地方,但是我也没有发现任何可能的地方。

为简单起见,这是我正在尝试的简化版本

我有一个小组,该小组中有一些项目:

MasterGroup / project_1 MasterGroup / project_2

我希望project_1可以存储变量,常见任务(阶段)。

然后在project_2中,我可以包含来自project_1的yml文件。

我可以毫不费力地做到这一点,但是问题是,“ include”语句不会带来project_1变量。

有没有办法也包含项目的变量?我看到我可以随Runner一起将它们添加为环境变量,但我想先让事情保持简单。

1 个答案:

答案 0 :(得分:1)

您应该能够在组级别定义环境变量:

https://docs.gitlab.com/ee/ci/variables/#group-level-environment-variables

这些变量然后应在project_1和project_2中都作为继承变量可见。

还可以在project_1的.gitlab-ci.yml文件中设置变量,这些变量可以包含在project_2中。他们有一个如何工作的示例,还显示了在需要时如何覆盖变量:

https://docs.gitlab.com/ee/ci/yaml/#overriding-external-template-values

但是,如果您想存储秘密的东西,最好使用组级别的环境变量。