如何在子文件夹中发现Jenkinsfile

Jes*_*sen 7 multi-project jenkins-pipeline

我有一个带有两个文件夹的项目,它们是独立的,需要在Jenkins中单独构建(运行v2.74)

我的结构是

folder
??? project1
?   ??? Jenkinsfile
??? project2
    ??? Jenkinsfile
Run Code Online (Sandbox Code Playgroud)

当我点击Jenkins中的"扫描组织"时,它不会发现子目录中的Jenkins文件.

以下是"扫描组织日志"中的示例:

Proposing kg-pipeline
Examining my-test-project

  Checking branches...

  Getting remote branches...

    Checking branch jenkins
      ‘Jenkinsfile’ not found
    Does not meet criteria

    Checking branch master
      ‘Jenkinsfile’ not found
    Does not meet criteria

  2 branches were processed

Finished examining my-test-project
Run Code Online (Sandbox Code Playgroud)

我没有触及扫描组织的工作配置,并找到了Jenkinsfiles的分支.这是该项目的当前设置

Jenkinsfile可发现性配置

我的问题是:如何配置Jenkins以单独查看每个文件夹?我也对以这种方式设置的示例项目的链接感兴趣.

Ray*_*Kim 8

有一个简单的解决方案.

  1. 转到JENKINS_URL/job/JOB_NAME/configure
  2. Build Configuration,选择by JenkinsfileMode
  3. Script Path,设置它DIR_NAME/Jenkinsfile

例如,如果您将Jenkins文件放在src目录中,那么您可以将其设置为src/Jenkinsfile,Jenkins现在可以找到Jenkins文件


小智 1

目前正在尝试设置相同的东西 - 这可能会有所帮助,即使这不是一个完整的答案:

据此,应该能够设置两个多分支管道项目,每个项目都具有“by Jenkinsfile”配置模式。

JENKINS-34561中添加了对 Jeninsfile 使用自定义路径的支持