首页 > 解决方案 > Gitlab并将隐藏的关键脚本放入包含文件中

问题描述

我有几个不同的脚本,我想在多个项目的不同阶段运行它们。目前它们的形式为:

.hidden_key:  &hidden_key |
  do_something
  do_something_else

real_job:
  script:
    - *hidden_key

实际上.hidden_key是我在整个.gitlab-ci.yml文件和多个项目中以这种方式使用的功能。.hidden_key但是当我进入一个文件并像这样包含它时,我似乎无法让包含工作:

include:
   - remote: https://gitlab/project/master/raw/hidden_key.yml

real_job:
  script:
    - *hidden_key

当我这样做时,gitlab 抱怨:

Error: Unknown alias: hidden_key

我做错了什么,或者这是包含的实际限制(因此不受支持)?

有什么替代方法可以清理我的.gitlab-ci.yml文件?

标签: gitlabyamlaliases

解决方案


他们添加了一个!references标签

https://docs.gitlab.com/ee/ci/yaml/README.html#reference-tags

本质上,这就是您如何完成对别名的引用

    include:
       - remote: https://gitlab/project/master/raw/hidden_key.yml
    
    real_job:
      script:
        - !reference [.hidden_key]

推荐阅读