如何使用gitlab-ci从导入文件运行脚本?



我正在从公共库导入模板yml。模板调用函数extractText.js,该函数无法运行,因为它期望该函数位于正在导入gitlab-ci的项目的根文件夹中。yml文件。

脚本工作,如果我有extractText.js文件在项目的根文件夹。

我怎样才能使它,以便我不需要添加extractText.js文件到导入模板的每个项目。

gitlab-ci。yml文件

include:
- project: 'common-library'
ref: 'branch-123'
file:
- 'templates/gitlab-ci.yml'

测试部分
test:
stage: test   
before_script:
- npm ci
script:
- npm test
after_script:      
- export Text=$(node extractText.js)

最好和最简单的方法是把你的功能放到一个自己的Docker镜像中,并作为自己的步骤执行。

好处:

  1. 您不能确定包含存储库将满足需求。可能需要的Node版本不同等等。
  2. 如果你把它作为一个单独的步骤运行,根据你的结构,你可以很容易地应用它,如果你需要它也为其他步骤转发所需的资源。

很难给出一个真正好的建议,因为动机缺失,之后这个Text会发生什么。

还取决于extractText.js的功能,您可能只想使用shell脚本,它将在任何类型的容器中开箱工作,如果它真的只是某种提取。

相关内容

  • 没有找到相关文章

最新更新