将Jenkinsfile 与项目分离(统一管理jenkinsfile)

1、安装插件:pipeline-multibranch-defaults(多分支流水线)

2、将jenkinsfile统一放到git目录去管理:(项目名和job名要一致)

#例:
--项目名称1
    -分支1
        -Jenkinsfile 
   -分支2
        -Jenkinsfile

--app_server
    -master
        -Jenkinsfile
    -dev
        -Jenkinsfile
# 备注:Jenkinsfile中就是各个项目/分支真正的流水线脚本,比如一个完整的声明式pipeline。

3、在Jenkins系统管理中的Managed files中新建一个groovy脚本,作为默认的Jenkinsfile

#!/usr/bin/env groovy
import groovy.transform.Field

@Field def job_name=""

node()
{
    // 获取当前job名称。也可以按需自定义
    job_name="${env.JOB_NAME}".replace('%2F', '/').split('/')
    job_name=job_name[0]

    // 自定义workspace
    workspace="/root/.jenkins/workspace"

    ws("$workspace")
    {
        dir("pipeline")
        {   
            // clone Jenkinsfile项目
            git url: 'http://xx.xx.xx.xx/root/Jenkinsfile-manage.git'

            // 根据job name、构建分支,自动加载对应的Jenkinsfile
            def check_groovy_file="${job_name}/${env.BRANCH_NAME}/Jenkinsfile"
            load "${check_groovy_file}"
        }
    }
}
// 该脚本的作用:clone包含所有Jenkinsfile的代码库,根据项目名称load对应的Jenkinsfile.

4. 新建Multibranch pipeline job,job名称保持和步骤1中的"项目名称"一致。 Build Configuration 中选择by default Jenkinsfile,输入步骤3中的script ID。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值