实战演练Jenkins2.x关键特性:pipelineascode|持续集成|持续交付|ChatOps|自动化运维
《Jenkins 2.x实践指南》最先详细介绍小编对计算机专业生产主力的个人见解。次之根据一个Helloworld领着新手新手入门Jenkinspipeline。然后详解Jenkinspipeline的英语的语法,及其在Jenkinspipeline中怎样完成持续集成、持续交付中每个环节,包含搭建、检测、产品管理方法、布署等;在发觉目前pipeline的流程不可以满足需求时,拓展Jenkinspipeline多种多样方法。这书第17章详细介绍了Jenkins怎样融合好几个第三方系统软件,以完成ChatOps及自动化运维。为防止阅读者“不知从哪着手”的状况,这书根据一个简易的实例详细介绍不断发展的设计方案pipeline。
目录
- 1关于软件工程生产力1
- 11从另一个角度看“提高软件工程生产力”1
- 111从劳动力要素考虑提高软件工程生产力2
- 112从劳动对象要素考虑提高软件工程生产力2
- 113从生产工具要素考虑提高软件工程生产力3
- 114生产力三要素的意义3
- 12Jenkins介绍4
- 13Jenkins与DevOps4
- 14本章小结5
- 2pipeline入门6
- 21pipeline是什么6
- 22Jenkinsfile又是什么7
- 23pipeline语法的选择7
- 24创建第一个pipeline9
- 25从版本控制库拉取pipeline11
- 26使用Maven构建Java应用12
- 27本章小结15
- 3pipeline语法讲解16
- 31必要的Groovy知识16
- 32pipeline的组成18
- 321pipeline最简结构18
- 322步骤19
- 33post部分20
- 34pipeline支持的指令21
- 35配置pipeline本身22
- 36在声明式pipeline中使用脚本24
- 37pipeline内置基础步骤25
- 371文件目录相关步骤25
- 372制品相关步骤27
- 373命令相关步骤28
- 374其他步骤29
- 375小贴士31
- 38本章小结36
- 4环境变量与构建工具37
- 41环境变量37
- 411Jenkins内置变量37
- 412自定义pipeline环境变量38
- 413自定义全局环境变量39
- 42构建工具40
- 421构建工具的选择40
- 422tools指令介绍41
- 423JDK环境搭建41
- 424Maven42
- 425Go语言环境搭建45
- 426Python环境搭建46
- 43利用环境变量支持更多的构建工具47
- 44利用tools作用域实现多版本编译48
- 45本章小结49
- 5代码质量50
- 51静态代码分析50
- 511代码规范检查50
- 512使用PMD进行代码规范检查51
- 513各静态代码分析器之间的区别53
- 52单元测试53
- 521JUnit单元测试报告53
- 522JaCoCo实现代码覆盖率55
- 523代码覆盖率越高,软件的质量就越高吗58
- 53性能测试59
- 531准备性能测试环境59
- 532运行JMeter测试59
- 54SonarQube:持续代码质量检查61
- 541Maven与SonarQube集成62
- 542Jenkins与SonarQube集成64
- 543使用SonarQubeScanner实现代码扫描67
- 544SonarQube集成p3c68
- 545将分析报告推送到GitLab70
- 55Allure测试报告:更美观的测试报告72
- 551Allure测试报告介绍72
- 552集成Allure、Maven、Jenkins73
- 56当我们谈质量时,谈的是什么76
- 57本章小结76
- 6触发pipeline执行77
- 61什么是触发条件77
- 62时间触发77
- 621定时执行:cron77
- 622轮询代码仓库:pollSCM79
- 63事件触发79
- 631由上游任务触发:upstream79
- 632GitLab通知触发80
- 633在pipeline中实现GitLabtrigger84
- 64将构建状态信息推送到GitLab85
- 65使用GenericWebhookTrigger插件实现触发87
- 651从Webhook请求中提取参数值89
- 652触发具体某个Jenkins项目90
- 653根据请求参数值判断是否触发Jenkins项目执行91
- 654控制打印内容91
- 655控制响应92
- 66本章小结