zoukankan      html  css  js  c++  java
  • Jenkins2 插件 Pipeline+BlueOcean 实现持续交付的初次演练

    需要完成的目标

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

    Pipeline的基础代码

      收集了一些代码案例,可以自行查阅,不在啰嗦。

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

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

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

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

      JOB初始化、容器、分发分成了三个部分作为共有JOB进行管理。

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

    实现pipeline对任务逻辑的判断

      注意:jenkins中的boolean值似乎只是值的指定,通过shell可以直接if判断,但在goory里面我这里用的判断等于

    		//更新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

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

    JOB的演示

    切换进入BlueOcean 

    点击进行执行

    运行后,可以对具体的查看状态。

  • 相关阅读:
    IntelliJ IDEA自动补全变量名称和属性名称的快捷键
    Redis客户端 Spring Data Redis(未完)
    用画小狗的方法来解释Java中的值传递
    Java -- Arrays.asList()方法
    有趣的IntegerCache
    字符串使用点滴
    字符串拼接+和concat的区别
    在一个Excel单元格内输入多行内容
    JSTL1.2学习总结
    Android ico
  • 原文地址:https://www.cnblogs.com/YatHo/p/6782142.html
Copyright © 2011-2022 走看看