如何在 gitlab ci 管道中包含来自其他项目的 xml 文件?



>我有一个项目/templates,我想添加一个通用ci_settings.xml,为maven命令设置一些默认值。

然后,我想在另一个项目中重用此模板:

.gitlab_ci.yml

image: maven:3.8.4-eclipse-temurin-11
include:
project: 'all/templates'
ref: master
file:
- 'ci_settings.xml'
deploy:
stage: deploy
script: mvn deploy -s ci_settings.xml

结果:

Found errors in your .gitlab-ci.yml:
Included file `ci_settings.xml` does not have YAML extension!

如果不是通过include,我如何实际使用这个外部文件?

您只能将include用于 yml 文件。但是,您可以通过CI_JOB_TOKEN克隆管道中的/templates项目,并以这种方式使用它。由于此处不需要提交历史记录,因此可以将深度设置为 1。

image: maven:3.8.4-eclipse-temurin-11
deploy:
stage: deploy
script:
- git clone --depth 1 https://gitlab-ci-token:${CI_JOB_TOKEN}@your_path_to_templates_project.git templates
- mvn deploy -s templates/ci_settings.xml

相关内容

  • 没有找到相关文章

最新更新