Jenkins2 插件 Pipeline+BlueOcean 实现持续交付的初次演练

须要完成的目标

  • 使用Pipeline完成项目的checkout,package、deploy、restart
  • 提取出公有部分封装为公有JOB
  • 实现pipeline对其余JOB的调用和逻辑的判断
  • 实现任务的指定调用
  • 实现多节点同时并发build
  • 结合插件Open Blue Ocean

Pipeline的基础代码

  收集了一些代码案例,能够自行查阅,不在啰嗦。html

  jenkins2 pipeline入门:http://www.cnblogs.com/itech/p/5633948.htmlshell

  jenkins2 pipeline高级:http://www.cnblogs.com/itech/p/5646219.html并发

  jenkins2 pipeline插件的10个最佳实践:http://www.cnblogs.com/itech/p/5678643.htmlui

提取出公有部分封装为公有JOB,在另外一个JOB中引用

  JOB初始化、容器、分发分红了三个部分做为共有JOB进行管理。插件

  场景描述:同一项目组有若干个模块,其有较高的耦合性,并且步骤均一致。只有SVN、补丁内容,等参数,因此采用提取这部分做为一个参数化job,每一个模块构建步骤采用pipeline传递自身特有参数的方式触发构建。rest

实现pipeline对任务逻辑的判断

  注意:jenkins中的boolean值彷佛只是值的指定,经过shell能够直接if判断,但在goory里面我这里用的判断等于htm

		//更新bus容器
        if (XD_Env_BUS_Update_Start == 'true') { 
            println "XD_Env_BUS_Update_Start - 更新" 
            build job: 'XD_Env_BUS_Update_Start', parameters: [string(name: 'Env', value: BD_Env), string(name: 'BD_Dir', value: BD_Dir)]
        } else { 
            println "XD_Env_BUS_Update_Start - 不更新" 
        } 

实现多节点同时并发build

  实现多节点,主要是为了加快时间blog

 

JOB的演示

切换进入BlueOcean ip

 

点击进行执行string

 

运行后,能够对具体的查看状态。

相关文章
相关标签/搜索