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

点击进行执行

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

Jenkins2 插件 Pipeline+BlueOcean 实现持续交付的初次演练的更多相关文章
- [持续交付实践] Jenkins Pipeline 高可用设计方法
		
前言 这篇写好一段时间了,一直也没发布上来,今天稍微整理下了交下作业,部分内容偷懒引用了一些别人的内容.使用Jenkins做持续集成/持续交付,当业务达到一定规模的时候,Jenkins本身就很容易成为 ...
 - [持续交付实践] pipeline使用:项目样例
		
项目说明 本文将以一个微服务项目的具体pipeline样例进行脚本编写说明.一条完整的pipeline交付流水线通常会包括代码获取.单元测试.静态检查.打包部署.接口层测试.UI层测试.性能专项测试( ...
 - [持续交付实践] pipeline使用:Multibranch Pipeline
		
前言 在探讨multiBranch Pipeline之前,很有必要先探讨下如何制定有效的代码分支管理规范,使用高效的版本控制系统,并对构建产物及其依赖进行管理.我们首先要强调,需要进行版本控制的不仅是 ...
 - [持续交付实践] pipeline使用:快速入门
		
什么是pipeline 先介绍下什么是Jenkins 2.0,Jenkins 2.0的精髓是Pipeline as Code,是帮助Jenkins实现CI到CD转变的重要角色.什么是Pipeline, ...
 - OpenShift中的持续交付
		
上一文中讲述了如何在AWS下搭建OpenShift集群.这篇文章将目光转向如何在OpenShift中实现CI/CD以及产品环境的部署. 持续交付 如果要打造一个持续交付的流水线,首先要考虑多环境的问题 ...
 - [持续交付实践] Jenkins 中国用户大会参会见闻
		
前言 上周日在上海召开了Jenkins中国用户大会(Jenkins User Confluence China),这应该是Jenkins在中国第一次举办吧.Jenkins的创始人Kohsuke Kaw ...
 - 基于Jenkins的持续交付方案
		
简介 Jenkins是开源的自动化编译.测试.部署的Web应用程序一个持续性交付应用 Jenkins的优势 1.Jenkins在国内的开发者中认可度较高,很多创业公司的自建持续交付系统的选择大部分都是 ...
 - 联想企业网盘:SaaS服务集群化持续交付实践
		
1 前言 当代信息技术飞速发展,软件和系统的代码规模都变得越来越大,而且组件众多,依赖繁复,每次新版本的发布都仿佛是乘坐一次无座的绿皮车长途夜行,疲惫不堪.软件交付是一个复杂的工程,涉及到软 ...
 - Jenkins自动化部署-----持续交付【转】
		
感谢之前带领过我的leader,让我能够知道什么是好的开发方法. 在很早之前就接触过敏捷开发.什么是敏捷开发,简单来说就是让软件可靠地,快速地发布出来的一种开发方法和技巧. 而敏捷开发中有许多的实践, ...
 
随机推荐
- JavaScript面向对象轻松入门之抽象(demo by ES5、ES6、TypeScript)
			
抽象的概念 狭义的抽象,也就是代码里的抽象,就是把一些相关联的业务逻辑分离成属性和方法(行为),这些属性和方法就可以构成一个对象. 这种抽象是为了把难以理解的代码归纳成与现实世界关联的概念,比如小狗这 ...
 - nginx反向代理cas-server之2:生成证书,centOS下使用openssl生成CA证书(根证书、server证书、client证书)
			
前些天搭好了cas系统,这几天一致再搞nginx和cas的反向代理,一直不成功,但是走http还是测试通过的,最终确定是ssl认证证书这一块的问题,原本我在cas服务端里的tomcat已经配置了证书, ...
 - PHP基础入门(三)---PHP函数基础
			
PHP基础入门(三)---函数 今天来给大家分享一下PHP的函数基础.有了前两章的了解,想必大家对PHP有了一定的基础了解.想回顾前两章的朋友可以点击"PHP基础入门(一)"&qu ...
 - solr学习笔记section2-solr单机(节点)简单的core操作
			
在上一节中我们已经成功部署和运行了一个solr应用,那么我们就可以通过这个正在运行的solr来创建一些文档,并进行搜索. 首先介绍一下core这个概念,core在solr中类似与关系型数据库中一张表的 ...
 - 学习maven的各种问题
			
1. The container 'Maven Dependencies' references non existing library 解决方法,将eclipse中maven插件中“resolve ...
 - MongoDB--MapReduce分布统计s
			
MapReduce Mapreduce:要操作的目标集合 Map:映射函数(生成键值对序列,作为reduce函数参数) //传入分组的key和需要统计的值 Reduce:统计函数 //格式化返回的参数 ...
 - CSS动画属性性能详细介绍
			
CSS动画属性会触发整个页面的重排relayout.重绘repaint.重组recomposite Paint通常是其中最花费性能的,尽可能避免使用触发paint的CSS动画属性,这也是为什么我们推荐 ...
 - win7双系统安装openSUSE13.2解决【引导加载器安装期间出错】问题
			
原始日期:2015-08-17 14:16 昨晚不知道哪根筋不对,突然想装一个liunx系统,与win7形成双系统,最终选定openSUSE13.2,想想以前也安装过Ubuntu,应该差不多,所以直接 ...
 - 【转载】Windows系统下删除ubuntu
			
原始日期:2013-11-02 15:51 以windows7为例: 用MbrFix.exe修复MBR 卸载Windows/Linux双系统中的Ubuntu1.如果你有Windows系统安装盘/启 ...
 - wildfly10报错2:ID注释有错
			
13:55:56,612 INFO [org.jboss.modules] (main) JBoss Modules version 1.5.1.Final 13:55:56,891 INFO [or ...