首页 > 解决方案 > GitLab-CI YAML 文件中的锚模板:如何使用不同的附加属性重用

问题描述

如果像示例一样使用锚来定义可重用部分,但我想为模板的每次重用定义不同expire_in的关键字属性, CI Linter报告:artifacts

错误:():在解析块映射时未找到预期的键...(使用 *save_ipk 的行)

.templ: &save_ipk
  stage: build
  script:
    - ls package/*.ipk
  artifacts:
    paths:
      - package/*.ipk
#...

save_ipk_tags:
  <<: *save_ipk
    expire_in: 6 months
  only:
    - tags

save_ipk_mr:
  <<: *save_ipk
    expire_in: 1 month
  only:
   - merge_requests

我本来希望模板的内容save_ipk被合并,然后属性在(就像 C 预处理器替换)expire_in下很好。artifacts我唯一的解决方案是取出模板的整个工件部分并重复它。

标签: yamlgitlab-ci

解决方案


推荐阅读