Jenkins2.x实践指南(博文视点出品)

Jenkins2.x实践指南(博文视点出品)
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者:
2019-04
ISBN: 9787121360503
定价: 79.00
116人买过
  • 《Jenkins 2.x 实践指南》首先介绍笔者对软件工程生产力的独到见解,然后通过一个Hello world 示例带领初学者入门Jenkins pipeline,接下来详细介绍Jenkins pipeline 的语法,在Jenkins pipeline 中如何实现持续集成、持续交付的各个阶段,包括构建、测试、制品管理、部署等,以及当现有pipeline 的步骤不能满足需求时,扩展Jenkins pipeline 的多种方式。最后介绍Jenkins 如何整合多个第三方系统,以实现ChatOps 及自动化运维;为避免读者出现“不知从哪里下手”的情况,本书通过一个简单的案例介绍如何设计pipeline。 
    《Jenkins 2.x 实践指南》的读者对象包括:希望通过Jenkins 实现持续集成、持续交付、DevOps,以提升团队生产力的技术人员和管理人员。 

    1 关于软件工程生产力1 
    1.1 从另一个角度看“提高软件工程生产力”   1 
    1.1.1 从劳动力要素考虑提高软件工程生产力   2 
    1.1.2 从劳动对象要素考虑提高软件工程生产力   2 
    1.1.3 从生产工具要素考虑提高软件工程生产力   3 
    1.1.4 生产力三要素的意义3 
    1.2 Jenkins 介绍   4 
    1.3 Jenkins 与DevOps    4 
    1.4 本章小结   5 
    2 pipeline 入门6 
    2.1 pipeline 是什么   6 
    2.2 Jenkinsfile 又是什么   7 
    2.3 pipeline 语法的选择   7 
    2.4 创建第一个pipeline   9 
    2.5 从版本控制库拉取pipeline    11 
    2.6 使用Maven 构建Java 应用   12 
    2.7 本章小结   15 
    3 pipeline 语法讲解16 
    3.1 必要的Groovy 知识   16 
    3.2 pipeline 的组成   18 
    3.2.1 pipeline 最简结构   18 
    3.2.2 步骤   19 
    3.3 post 部分   20 
    3.4 pipeline 支持的指令   21 
    3.5 配置pipeline 本身   22 
    3.6 在声明式pipeline 中使用脚本   24 
    3.7 pipeline 内置基础步骤   25 
    3.7.1 文件目录相关步骤   25 
    3.7.2 制品相关步骤   27 
    3.7.3 命令相关步骤   28 
    3.7.4 其他步骤   29 
    3.7.5 小贴士   31 
    3.8 本章小结   36 
    4 环境变量与构建工具37 
    4.1 环境变量   37 
    4.1.1 Jenkins 内置变量   37 
    4.1.2 自定义pipeline 环境变量   38 
    4.1.3 自定义全局环境变量    39 
    4.2 构建工具   40 
    4.2.1 构建工具的选择   40 
    4.2.2 tools 指令介绍    41 
    4.2.3 JDK 环境搭建    41 
    4.2.4 Maven   42 
    4.2.5 Go 语言环境搭建   45 
    4.2.6 Python 环境搭建   46 
    4.3 利用环境变量支持更多的构建工具   47 
    4.4 利用tools 作用域实现多版本编译    48 
    4.5 本章小结   49 
    5 代码质量50 
    5.1 静态代码分析   50 
    5.1.1 代码规范检查   50 
    5.1.2 使用PMD 进行代码规范检查   51 
    5.1.3 各静态代码分析器之间的区别   53 
    5.2 单元测试   53 
    5.2.1 JUnit 单元测试报告   53 
    5.2.2 JaCoCo 实现代码覆盖率   55 
    5.2.3 代码覆盖率越高,软件的质量就越高吗   58 
    5.3 性能测试   59 
    5.3.1 准备性能测试环境   59 
    5.3.2 运行JMeter 测试   59 
    5.4 SonarQube:持续代码质量检查   61 
    5.4.1 Maven 与SonarQube 集成   62 
    5.4.2 Jenkins 与SonarQube 集成   64 
    5.4.3 使用SonarQube Scanner 实现代码扫描   67 
    5.4.4 SonarQube 集成p3c   68 
    5.4.5 将分析报告推送到GitLab   70 
    5.5 Allure 测试报告:更美观的测试报告   72 
    5.5.1 Allure 测试报告介绍   72 
    5.5.2 集成Allure、Maven、Jenkins    73 
    5.6 当我们谈质量时,谈的是什么   76 
    5.7 本章小结   76 
    6 触发pipeline 执行77 
    6.1 什么是触发条件   77 
    6.2 时间触发   77 
    6.2.1 定时执行:cron   77 
    6.2.2 轮询代码仓库:pollSCM   79 
    6.3 事件触发   79 
    6.3.1 由上游任务触发:upstream    79 
    6.3.2 GitLab 通知触发   80 
    6.3.3 在pipeline 中实现GitLab trigger   84 
    6.4 将构建状态信息推送到GitLab   85 
    6.5 使用Generic Webhook Trigger 插件实现触发   87 
    6.5.1 从Webhook 请求中提取参数值   89 
    6.5.2 触发具体某个Jenkins 项目    90 
    6.5.3 根据请求参数值判断是否触发Jenkins 项目执行   91 
    6.5.4 控制打印内容   91 
    6.5.5 控制响应   92 
    6.6 本章小结   92 
    7 多分支构建93 
    7.1 创建多分支pipeline   93 
    7.2 根据分支部署到不同的环境   96 
    7.3 when 指令的用法   97 
    7.4 GitLab trigger 对多分支pipeline 的支持   99 
    7.5 Generic Webhook Trigger 插件在多分支pipeline 场景下的应用   99 
    7.6 本章小结   100 
    8 参数化pipeline 101 
    8.1 什么是参数化pipeline    101 
    8.2 使用parameters 指令   101 
    8.2.1 parameters 指令支持的参数类型    102 
    8.2.2 多参数    104 
    8.3 由另一个pipeline 传参并触发    104 
    8.4 使用Conditional BuildStep 插件处理复杂的判断逻辑   106 
    8.5 使用input 步骤    107 
    8.5.1 input 步骤的简单用法   108 
    8.5.2 input 步骤的复杂用法   109 
    8.6 小贴士    111 
    8.6.1 获取上游pipeline 的信息   111 
    8.6.2 设置手动输入步骤超时后,pipeline 自动中止   111 
    8.7 本章小结   111 
    9 凭证管理112 
    9.1 为什么要管理凭证   112 
    9.2 凭证是什么   112 
    9.3 创建凭证   113 
    9.4 常用凭证   114 
    9.4.1 Secret text   114 
    9.4.2 Username with password   115 
    9.4.3 Secret file   115 
    9.4.4 SSH Username with private key    116 
    9.5 优雅地使用凭证   117 
    9.6 使用HashiCorp Vault   118 
    9.6.1 HashiCorp Vault 介绍   118 
    9.6.2 集成HashiCorp Vault   118 
    9.7 在Jenkins 日志中隐藏敏感信息   120 
    9.8 本章小结   122 
    10 制品管理123 
    10.1 制品是什么   123 
    10.2 制品管理仓库   123 
    10.3 过渡到制品库   124 
    10.4 管理Java 栈制品   125 
    10.4.1 使用Maven 发布制品到Nexus 中   125 
    10.4.2 使用Nexus 插件发布制品    127 
    10.5 使用Nexus 管理Docker 镜像   128 
    10.5.1 Nexus:创建Docker 私有仓库   129 
    10.5.2 创建Docker 私有仓库凭证   130 
    10.5.3 构建并发布Docker 镜像   130 
    10.5.4 小贴士    131 
    10.6 管理原始制品   131 
    10.6.1 创建raw 仓库   131 
    10.6.2 上传制品,获取制品   132 
    10.7 从其他pipeline 中拷贝制品   134 
    10.8 版本号管理   135 
    10.8.1 语义化版本   135 
    10.8.2 版本号的作用   136 
    10.8.3 方便生成版本号的Version Number 插件   137 
    10.9 小贴士   138 
    10.9.1 Nexus 匿名用户权限问题   138 
    10.9.2 制品库的容量要大   139 
    10.10 本章小结   139 
    11 可视化构建及视图140 
    11.1 Green Balls 插件   140 
    11.2 Build Monitor View 插件   141 
    11.3 使用视图   143 
    11.3.1 使用项目的维度建立视图   143 
    11.3.2 设置默认视图   145 
    11.4 本章小结   146 
    12 自动化部署147 
    12.1 关于部署有什么好说的   147 
    12.1.1 部署不等于发布   147 
    12.1.2 什么是自动化部署   148 
    12.1.3 自动化运维工具解决的问题   148 
    12.2 Jenkins 集成Ansible 实现自动化部署    149 
    12.2.1 Ansible 介绍   149 
    12.2.2 Jenkins 与Ansible 集成   150 
    12.2.3 Ansible 插件详解   153 
    12.3 手动部署比自动化部署更可靠吗   156 
    12.4 如何开始自动化部署   157 
    12.5 小贴士    158 
    12.6 本章小结    159 
    13 通知160 
    13.1 邮件通知   160 
    13.1.1 使用Jenkins 内置邮件通知功能   160 
    13.1.2 使用Email Extension 插件发送通知    162 
    13.2 钉钉通知   164 
    13.3 HTTP 请求通知    166 
    13.4 本章小结   168 
    14 分布式构建与并行构建   169 
    14.1 Jenkins 架构    169 
    14.2 增加agent     170 
    14.2.1 对agent 打标签   170 
    14.2.2 通过JNLP 协议增加agent    171 
    14.2.3 通过JNLP 协议增加Windows agent    175 
    14.2.4 通过Swarm 插件增加agent   175 
    14.2.5 agent 部分详解    176 
    14.2.6 小结   180 
    14.3 将构建任务交给Docker   180 
    14.3.1 在Jenkins agent 上安装Docker    180 
    14.3.2 使用Docker    180 
    14.3.3 配置Docker 私有仓库    181 
    14.4 并行构建   182 
    14.4.1 在不同的分支上应用并行构建   183 
    14.4.2 并行步骤   184 
    14.4.3 并行阶段与并行步骤之间的区别   185 
    14.5 本章小结   185 
    15 扩展pipeline 186 
    15.1 为什么要扩展pipeline    186 
    15.2 在pipeline 中定义函数   186 
    15.3 使用共享库扩展   187 
    15.3.1 创建共享库   187 
    15.3.2 使用共享库   189 
    15.3.3 @Library 的更多用法   189 
    15.3.4 共享库结构详细介绍   190 
    15.3.5 使用共享库实现pipeline 模板   192 
    15.4 通过Jenkins 插件实现pipeline 步骤   193 
    15.4.1 生成Jenkins 插件代码骨架   193 
    15.4.2 启动Jenkins 测试:mvn hpi:run   196 
    15.4.3 在Jenkinsfile 中使用greet 步骤   196 
    15.4.4 全局配置插件   197 
    15.5 本章小结   199 
    16 Jenkins 运维200 
    16.1 认证管理   200 
    16.1.1 使用Jenkins 自带的用户数据库   200 
    16.1.2 使用LDAP 认证   202 
    16.2 授权管理   204 
    16.2.1 使用Role-based Authorization Strategy 插件授权   205 
    16.2.2 管理角色   206 
    16.2.3 权限大全   207 
    16.2.4 角色分配   208 
    16.2.5 小结   210 
    16.3 Jenkins 监控   210 
    16.3.1 使用Monitoring 插件监控    210 
    16.3.2 使用Prometheus 监控   211 
    16.4 Jenkins 备份   213 
    16.4.1 JENKINS_HOME 介绍   213 
    16.4.2 使用Periodic Backup 插件进行备份   214 
    16.5 汉化   216 
    16.6 Jenkins 配置即代码   216 
    16.7 使用init.groovy 配置Jenkins    217 
    16.8 本章小结   219 
    17 自动化运维经验   220 
    17.1 小团队自动化运维实践经验   220 
    17.1.1 先做监控和告警   220 
    17.1.2 一开始就应该做配置版本化   223 
    17.1.3 Jenkins 化:将打包工作交给Jenkins   223 
    17.1.4 将制品交给Nexus 管理   224 
    17.1.5 让Jenkins 帮助我们执行Ansible    225 
    17.1.6 小结   225 
    17.2 ChatOps 实践   226 
    17.2.1 Rocket.Chat   226 
    17.2.2 Hubot   227 
    17.2.3 Hubot 与Jenkins 集成   229 
    17.2.4 Jenkins 推送消息到Rocket.Chat    231 
    17.3 本章小结   231 
    18 如何设计pipeline 232 
    18.1 设计pipeline 的步骤   232 
    18.2 以X 网站为例,设计pipeline    233 
    18.3 X 网站pipeline 详解   236 
    18.3.1 尽可能将所有的具体操作都隐藏到共享库中   236 
    18.3.2 只生成一次制品   236 
    18.3.3 对不同环境采用同一种部署方式   237 
    18.3.4 配置版本化   238 
    18.3.5 系统集成测试    238 
    18.3.6 如何实现指定版本部署   238 
    18.3.7 主干开发,分支发布   239 
    18.4 本章小结239 

  • 内容简介:
    《Jenkins 2.x 实践指南》首先介绍笔者对软件工程生产力的独到见解,然后通过一个Hello world 示例带领初学者入门Jenkins pipeline,接下来详细介绍Jenkins pipeline 的语法,在Jenkins pipeline 中如何实现持续集成、持续交付的各个阶段,包括构建、测试、制品管理、部署等,以及当现有pipeline 的步骤不能满足需求时,扩展Jenkins pipeline 的多种方式。最后介绍Jenkins 如何整合多个第三方系统,以实现ChatOps 及自动化运维;为避免读者出现“不知从哪里下手”的情况,本书通过一个简单的案例介绍如何设计pipeline。 
    《Jenkins 2.x 实践指南》的读者对象包括:希望通过Jenkins 实现持续集成、持续交付、DevOps,以提升团队生产力的技术人员和管理人员。 

  • 目录:
    1 关于软件工程生产力1 
    1.1 从另一个角度看“提高软件工程生产力”   1 
    1.1.1 从劳动力要素考虑提高软件工程生产力   2 
    1.1.2 从劳动对象要素考虑提高软件工程生产力   2 
    1.1.3 从生产工具要素考虑提高软件工程生产力   3 
    1.1.4 生产力三要素的意义3 
    1.2 Jenkins 介绍   4 
    1.3 Jenkins 与DevOps    4 
    1.4 本章小结   5 
    2 pipeline 入门6 
    2.1 pipeline 是什么   6 
    2.2 Jenkinsfile 又是什么   7 
    2.3 pipeline 语法的选择   7 
    2.4 创建第一个pipeline   9 
    2.5 从版本控制库拉取pipeline    11 
    2.6 使用Maven 构建Java 应用   12 
    2.7 本章小结   15 
    3 pipeline 语法讲解16 
    3.1 必要的Groovy 知识   16 
    3.2 pipeline 的组成   18 
    3.2.1 pipeline 最简结构   18 
    3.2.2 步骤   19 
    3.3 post 部分   20 
    3.4 pipeline 支持的指令   21 
    3.5 配置pipeline 本身   22 
    3.6 在声明式pipeline 中使用脚本   24 
    3.7 pipeline 内置基础步骤   25 
    3.7.1 文件目录相关步骤   25 
    3.7.2 制品相关步骤   27 
    3.7.3 命令相关步骤   28 
    3.7.4 其他步骤   29 
    3.7.5 小贴士   31 
    3.8 本章小结   36 
    4 环境变量与构建工具37 
    4.1 环境变量   37 
    4.1.1 Jenkins 内置变量   37 
    4.1.2 自定义pipeline 环境变量   38 
    4.1.3 自定义全局环境变量    39 
    4.2 构建工具   40 
    4.2.1 构建工具的选择   40 
    4.2.2 tools 指令介绍    41 
    4.2.3 JDK 环境搭建    41 
    4.2.4 Maven   42 
    4.2.5 Go 语言环境搭建   45 
    4.2.6 Python 环境搭建   46 
    4.3 利用环境变量支持更多的构建工具   47 
    4.4 利用tools 作用域实现多版本编译    48 
    4.5 本章小结   49 
    5 代码质量50 
    5.1 静态代码分析   50 
    5.1.1 代码规范检查   50 
    5.1.2 使用PMD 进行代码规范检查   51 
    5.1.3 各静态代码分析器之间的区别   53 
    5.2 单元测试   53 
    5.2.1 JUnit 单元测试报告   53 
    5.2.2 JaCoCo 实现代码覆盖率   55 
    5.2.3 代码覆盖率越高,软件的质量就越高吗   58 
    5.3 性能测试   59 
    5.3.1 准备性能测试环境   59 
    5.3.2 运行JMeter 测试   59 
    5.4 SonarQube:持续代码质量检查   61 
    5.4.1 Maven 与SonarQube 集成   62 
    5.4.2 Jenkins 与SonarQube 集成   64 
    5.4.3 使用SonarQube Scanner 实现代码扫描   67 
    5.4.4 SonarQube 集成p3c   68 
    5.4.5 将分析报告推送到GitLab   70 
    5.5 Allure 测试报告:更美观的测试报告   72 
    5.5.1 Allure 测试报告介绍   72 
    5.5.2 集成Allure、Maven、Jenkins    73 
    5.6 当我们谈质量时,谈的是什么   76 
    5.7 本章小结   76 
    6 触发pipeline 执行77 
    6.1 什么是触发条件   77 
    6.2 时间触发   77 
    6.2.1 定时执行:cron   77 
    6.2.2 轮询代码仓库:pollSCM   79 
    6.3 事件触发   79 
    6.3.1 由上游任务触发:upstream    79 
    6.3.2 GitLab 通知触发   80 
    6.3.3 在pipeline 中实现GitLab trigger   84 
    6.4 将构建状态信息推送到GitLab   85 
    6.5 使用Generic Webhook Trigger 插件实现触发   87 
    6.5.1 从Webhook 请求中提取参数值   89 
    6.5.2 触发具体某个Jenkins 项目    90 
    6.5.3 根据请求参数值判断是否触发Jenkins 项目执行   91 
    6.5.4 控制打印内容   91 
    6.5.5 控制响应   92 
    6.6 本章小结   92 
    7 多分支构建93 
    7.1 创建多分支pipeline   93 
    7.2 根据分支部署到不同的环境   96 
    7.3 when 指令的用法   97 
    7.4 GitLab trigger 对多分支pipeline 的支持   99 
    7.5 Generic Webhook Trigger 插件在多分支pipeline 场景下的应用   99 
    7.6 本章小结   100 
    8 参数化pipeline 101 
    8.1 什么是参数化pipeline    101 
    8.2 使用parameters 指令   101 
    8.2.1 parameters 指令支持的参数类型    102 
    8.2.2 多参数    104 
    8.3 由另一个pipeline 传参并触发    104 
    8.4 使用Conditional BuildStep 插件处理复杂的判断逻辑   106 
    8.5 使用input 步骤    107 
    8.5.1 input 步骤的简单用法   108 
    8.5.2 input 步骤的复杂用法   109 
    8.6 小贴士    111 
    8.6.1 获取上游pipeline 的信息   111 
    8.6.2 设置手动输入步骤超时后,pipeline 自动中止   111 
    8.7 本章小结   111 
    9 凭证管理112 
    9.1 为什么要管理凭证   112 
    9.2 凭证是什么   112 
    9.3 创建凭证   113 
    9.4 常用凭证   114 
    9.4.1 Secret text   114 
    9.4.2 Username with password   115 
    9.4.3 Secret file   115 
    9.4.4 SSH Username with private key    116 
    9.5 优雅地使用凭证   117 
    9.6 使用HashiCorp Vault   118 
    9.6.1 HashiCorp Vault 介绍   118 
    9.6.2 集成HashiCorp Vault   118 
    9.7 在Jenkins 日志中隐藏敏感信息   120 
    9.8 本章小结   122 
    10 制品管理123 
    10.1 制品是什么   123 
    10.2 制品管理仓库   123 
    10.3 过渡到制品库   124 
    10.4 管理Java 栈制品   125 
    10.4.1 使用Maven 发布制品到Nexus 中   125 
    10.4.2 使用Nexus 插件发布制品    127 
    10.5 使用Nexus 管理Docker 镜像   128 
    10.5.1 Nexus:创建Docker 私有仓库   129 
    10.5.2 创建Docker 私有仓库凭证   130 
    10.5.3 构建并发布Docker 镜像   130 
    10.5.4 小贴士    131 
    10.6 管理原始制品   131 
    10.6.1 创建raw 仓库   131 
    10.6.2 上传制品,获取制品   132 
    10.7 从其他pipeline 中拷贝制品   134 
    10.8 版本号管理   135 
    10.8.1 语义化版本   135 
    10.8.2 版本号的作用   136 
    10.8.3 方便生成版本号的Version Number 插件   137 
    10.9 小贴士   138 
    10.9.1 Nexus 匿名用户权限问题   138 
    10.9.2 制品库的容量要大   139 
    10.10 本章小结   139 
    11 可视化构建及视图140 
    11.1 Green Balls 插件   140 
    11.2 Build Monitor View 插件   141 
    11.3 使用视图   143 
    11.3.1 使用项目的维度建立视图   143 
    11.3.2 设置默认视图   145 
    11.4 本章小结   146 
    12 自动化部署147 
    12.1 关于部署有什么好说的   147 
    12.1.1 部署不等于发布   147 
    12.1.2 什么是自动化部署   148 
    12.1.3 自动化运维工具解决的问题   148 
    12.2 Jenkins 集成Ansible 实现自动化部署    149 
    12.2.1 Ansible 介绍   149 
    12.2.2 Jenkins 与Ansible 集成   150 
    12.2.3 Ansible 插件详解   153 
    12.3 手动部署比自动化部署更可靠吗   156 
    12.4 如何开始自动化部署   157 
    12.5 小贴士    158 
    12.6 本章小结    159 
    13 通知160 
    13.1 邮件通知   160 
    13.1.1 使用Jenkins 内置邮件通知功能   160 
    13.1.2 使用Email Extension 插件发送通知    162 
    13.2 钉钉通知   164 
    13.3 HTTP 请求通知    166 
    13.4 本章小结   168 
    14 分布式构建与并行构建   169 
    14.1 Jenkins 架构    169 
    14.2 增加agent     170 
    14.2.1 对agent 打标签   170 
    14.2.2 通过JNLP 协议增加agent    171 
    14.2.3 通过JNLP 协议增加Windows agent    175 
    14.2.4 通过Swarm 插件增加agent   175 
    14.2.5 agent 部分详解    176 
    14.2.6 小结   180 
    14.3 将构建任务交给Docker   180 
    14.3.1 在Jenkins agent 上安装Docker    180 
    14.3.2 使用Docker    180 
    14.3.3 配置Docker 私有仓库    181 
    14.4 并行构建   182 
    14.4.1 在不同的分支上应用并行构建   183 
    14.4.2 并行步骤   184 
    14.4.3 并行阶段与并行步骤之间的区别   185 
    14.5 本章小结   185 
    15 扩展pipeline 186 
    15.1 为什么要扩展pipeline    186 
    15.2 在pipeline 中定义函数   186 
    15.3 使用共享库扩展   187 
    15.3.1 创建共享库   187 
    15.3.2 使用共享库   189 
    15.3.3 @Library 的更多用法   189 
    15.3.4 共享库结构详细介绍   190 
    15.3.5 使用共享库实现pipeline 模板   192 
    15.4 通过Jenkins 插件实现pipeline 步骤   193 
    15.4.1 生成Jenkins 插件代码骨架   193 
    15.4.2 启动Jenkins 测试:mvn hpi:run   196 
    15.4.3 在Jenkinsfile 中使用greet 步骤   196 
    15.4.4 全局配置插件   197 
    15.5 本章小结   199 
    16 Jenkins 运维200 
    16.1 认证管理   200 
    16.1.1 使用Jenkins 自带的用户数据库   200 
    16.1.2 使用LDAP 认证   202 
    16.2 授权管理   204 
    16.2.1 使用Role-based Authorization Strategy 插件授权   205 
    16.2.2 管理角色   206 
    16.2.3 权限大全   207 
    16.2.4 角色分配   208 
    16.2.5 小结   210 
    16.3 Jenkins 监控   210 
    16.3.1 使用Monitoring 插件监控    210 
    16.3.2 使用Prometheus 监控   211 
    16.4 Jenkins 备份   213 
    16.4.1 JENKINS_HOME 介绍   213 
    16.4.2 使用Periodic Backup 插件进行备份   214 
    16.5 汉化   216 
    16.6 Jenkins 配置即代码   216 
    16.7 使用init.groovy 配置Jenkins    217 
    16.8 本章小结   219 
    17 自动化运维经验   220 
    17.1 小团队自动化运维实践经验   220 
    17.1.1 先做监控和告警   220 
    17.1.2 一开始就应该做配置版本化   223 
    17.1.3 Jenkins 化:将打包工作交给Jenkins   223 
    17.1.4 将制品交给Nexus 管理   224 
    17.1.5 让Jenkins 帮助我们执行Ansible    225 
    17.1.6 小结   225 
    17.2 ChatOps 实践   226 
    17.2.1 Rocket.Chat   226 
    17.2.2 Hubot   227 
    17.2.3 Hubot 与Jenkins 集成   229 
    17.2.4 Jenkins 推送消息到Rocket.Chat    231 
    17.3 本章小结   231 
    18 如何设计pipeline 232 
    18.1 设计pipeline 的步骤   232 
    18.2 以X 网站为例,设计pipeline    233 
    18.3 X 网站pipeline 详解   236 
    18.3.1 尽可能将所有的具体操作都隐藏到共享库中   236 
    18.3.2 只生成一次制品   236 
    18.3.3 对不同环境采用同一种部署方式   237 
    18.3.4 配置版本化   238 
    18.3.5 系统集成测试    238 
    18.3.6 如何实现指定版本部署   238 
    18.3.7 主干开发,分支发布   239 
    18.4 本章小结239 

查看详情
相关图书 / 更多
Jenkins2.x实践指南(博文视点出品)
Jefferson神经重症监护手册
杰克·I.贾洛;杰奎琳·S. 乌特乔
Jenkins2.x实践指南(博文视点出品)
JewelCAD案例解析
吴小军 著;彭伟哲 编
Jenkins2.x实践指南(博文视点出品)
Jeni's Splendid Ice Creams at Home
Jeni Britton Bauer 著
Jenkins2.x实践指南(博文视点出品)
Jetpack Compose 从入门到实战
王鹏 关振智 曾思淇 著
Jenkins2.x实践指南(博文视点出品)
Jews Without Money A Novel
Gold;Michael
Jenkins2.x实践指南(博文视点出品)
Jean-Christophe Volume I
Rolland;Romain
Jenkins2.x实践指南(博文视点出品)
Jessica Jones: Alias Vol. 3
Brian Michael Bendis;Michael Gaydos
Jenkins2.x实践指南(博文视点出品)
Jenny and the Cat Club A Collection of Favorite Stories about Jenny Linsky
Esther Averill 著
Jenkins2.x实践指南(博文视点出品)
Jewel CAD首饰建模
余娟
Jenkins2.x实践指南(博文视点出品)
Jetpack Compose:Android全新UI编程
朱江
Jenkins2.x实践指南(博文视点出品)
Jessica Jones:Alias Vol. 2
Brian Michael Bendis
Jenkins2.x实践指南(博文视点出品)
Jean Basset pionnier de l'église au Sichuan
François BARRIQUAND 著;Joseph RUELLEN 译
您可能感兴趣 / 更多