在 gitlab ci 中包含外部配置时找不到 bash 子文件

问题描述 投票:0回答:1

我在 gitlab ci yml 文件中有代码:

include:
  - project: 'my-group/my-project'
    ref: main
    file: '.gitlab-ci-template.yml'

但是文件

.gitlab-ci-template.yml
使用来自另一个
utils-functions.sh
文件(位于同一目录中)的代码

管道运行期间找不到

utils-functions.sh 

我该如何解决它?

gitlab-ci
1个回答
0
投票

我认为您的意思是“utils-functions.sh”位于

my-group/my-project
存储库中。

在这种情况下,您尝试做的事情不起作用:GitLab 在合并管道时不会合并存储库,它只专门合并 GitLab CI yaml 文件。

您需要在 ci 模板文件中创建一个作业,将 bash 脚本写入磁盘:

write-it:
  script:
  - |
    cat > utils.sh << EOF
    #!/bin/bash
    echo "hello world"
    EOF
© www.soinside.com 2019 - 2024. All rights reserved.