gitlab - 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
文件?
解决方案
他们添加了一个!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]
推荐阅读
- rust - TryInto trait 要求更多类型注释,即使所有注释都已到位
- google-places-api - 在 Google Places API(JS 或 REST API,不是 Android)中获取文本描述
- css - 使用 VueJS 自定义工具提示的 CSS 问题
- node.js - 参数未在 discord.js v12 中完全显示
- reactjs - NPM 安装,完全未知 -E 前缀
- flutter - Flutter:参数类型'Future
Function()' 不能分配给参数类型'Future 功能()?' - python - 使用 to_parquet() 将 dask 数据帧写入镶木地板结果“RuntimeError:文件元数据仅在写入器关闭后可用”
- angular - Laravel 中间件无法按预期工作
- mysql - 使用计算字段连接同一个表会返回“重复”行
- android - 如何使用HttpURLConnection从android发送请求参数到firebase云功能?