运行 gitlab-ci 用于同一项目中的子目录

run gitlab-ci for sub directory in same project

我在同一个 GitLab 项目中有三个子项目(Angular & Node)。现在我想创建 gitlab-ci.yml 文件来构建和部署这个子项目之一。我可以在子目录中创建三个不同的 gitlab-ci.yml & 运行 吗?可能吗?还是我应该将它们推到三个不同的项目中?

我个人的偏好是让项目保持小型化。所以我通常创建一个 GitLab 项目,例如模块、库、程序、设计等​​

但如果你真的想要,你可以轻松地:

  • 创建一个 .gitlab-ci.yml 类似于:
my_job:
  stage: test
  script: 
    - |
       cd "$CI_PROJECT_DIR/folder1"
       < do stuff >
       cd "$CI_PROJECT_DIR/folder2"
       < do stuff>
       ...
  • 在文件夹中创建多个 gitlab-ci 配置,并在根目录中 include 配置它们 .gitlab-ci.yml
include:
  - 'folder1/pipeline.yml'
  - 'folder2/pipeline.yml'

请注意,使用第二个选项时,您仍然需要 cd folderX,因为无论从何处导入,管道始终从存储库根目录开始。