gitlab - 从子模块中使用 Gitlab CI
问题描述
我正在尝试“相互化”我的 CI。
我有很多使用基本相同的项目gitlab-ci.yml
。
我正在考虑创建一个 git 子模块,其中包含gitlab-ci.yml
我所有项目都在使用的,我可以在其中注入 env 变量以使其具有通用性,以便我可以在未来的项目中重新使用它。
我的问题是我没有看到任何关于此的文档,所以我想知道:
可能吗 ?如果是的话,我怎么能告诉 gitlab 使用
gitlab-ci.yml
这个子模块里面的那个?如果这是一个坏主意,您是否知道正确的方法?
谢谢 !
解决方案
您正在寻找的是 Gitlab CI 模板文件,可以include
在其他.gitlab-ci.yml
文件中。
include
您可以在此处查看文档。
例子 :
# .gitlab.ci.yml
include:
- 'https://gitlab.com/awesome-project/raw/main/.before-script-template.yml'
- '/templates/.after-script-template.yml'
这包括具有默认变量、阶段、工作流的 CI 文件,可以在其他 CI 文件中的任何位置覆盖。这带来了您需要的通用性。
推荐阅读
- r - choroplethrZip 返回“无法添加绑定”字幕错误 - 即使使用示例代码
- javascript - 关键帧背景图像动画不使用预加载图像
- ruby - 在 ruby 中将数据写入 csv 文件的问题
- python - 为 Keras 中的某些张量元素分配新值
- r - 累积对数正态函数不返回正确的概率
- c# - 发送到 Azure 事件中心错误
- javascript - 错误无限滚动Javascript,向上滚动时不加载
- python - 安装和使用 RPy2(使用 conda),以便它使用 /usr/lib/RR 中的默认 R 安装
- python - Python 数据科学库 vs SQL
- dart - 如何禁用 Flutter 的 Navigator 类的返回操作