JSL(Jenkins共享库)中的Jenkinsfile

时间:2019-07-29 16:08:00

标签: jenkins jenkins-pipeline jenkins-groovy

是否可以将所有逻辑包含在JSL中?像具有所有步骤(构建,测试,部署)的Jenkinsfile一样?

我的想法是:

  • 对所有脚本和管道使用公共存储库(template-repo.git);
  • 所有项目存储库都将使用公共存储库作为辅助存储库 用于构建;
  • 在项目构建中应遵循以下步骤:
    • 下载公共存储库;
    • 下载项目本身;
    • 从公共存储库加载Jenkins文件
    • 使用公共存储库中的所有sh脚本
    • 从项目存储库中加载必要的脚本,例如jmeter或 单元测试。

文件结构:

  • 常见的重新发布 詹金斯档案     vars / *。groovy
  • 项目 文件*     vars / *。groovy

因此,Jenkins文件将具有以下内容:

node {

stage('Build'){   
\\ I could use conditions to match the specific build type

\\ Build docker
 load lib.docker_build 

\\ Build dotnet
 load lib.dotnet_build  

 }

stage('Tests'){   

\\ Load from the project folder:
 load 'vars/sonarqube.groovy'
 load 'vars/jmeter.groovy'


 }

stage('Push to dockerhub'){   


...

 }

stage('Deploy'){   


...


 }

}

0 个答案:

没有答案