展开全部

主编推荐语

通过本书了解CI/CD的概念,并获得使用CI生态系统中重要工具的实践经验。

内容简介

本书是一本持续集成与持续交付(CI/CD)实践指南,全书共15章。

书中首先介绍持续集成和持续交付的基础知识,并介绍Jenkins用户界面及其安装方式;接下来介绍使用Jenkins UI开发插件、构建Jenkins流水线和运行Docker集成的实际操作;后介绍Travis CI和CircleCI的安装及脚本运行等,帮助读者通过Travis CI和CircleCI获得有关CI/CD的广泛知识。

本书适合系统管理员、DevOps工程师以及构建和发布工程师阅读。

目录

  • 版权信息
  • 版权声明
  • 内容提要
  • 前言
  • 作者简介
  • 审稿人简介
  • 资源与支持
  • 第1章 具有自动测试功能的CI/CD
  • 1.1 业务场景
  • 1.1.1 手动流程——讨论一种假设场景
  • 1.1.2 雇员的困境
  • 1.1.3 引入自动化
  • 1.1.4 开发人员生产力
  • 1.1.5 打破沟通障碍
  • 1.1.6 创造合作环境
  • 1.2 小结
  • 1.3 问题
  • 第2章 持续集成基础
  • 2.1 技术要求
  • 2.2 什么是持续集成
  • 2.2.1 什么是软件构建
  • 2.2.2 持续集成流程步骤概述
  • 2.2.3 持续集成的价值
  • 2.2.4 利用持续集成降低风险
  • 2.2.5 源码签入时的软件构建
  • 2.2.6 小型构建和大型构建故障
  • 2.2.7 CI构建实践
  • 2.3 小结
  • 2.4 问题
  • 第3章 持续交付基础
  • 3.1 技术要求
  • 3.2 软件交付问题
  • 3.2.1 软件交付的含义
  • 3.2.2 常见的版本发布反模式
  • 3.2.3 如何进行软件发布
  • 3.2.4 软件交付自动化的好处
  • 3.3 配置管理
  • 3.3.1 配置管理的含义
  • 3.3.2 版本控制
  • 3.3.3 依赖管理
  • 3.3.4 软件配置管理
  • 3.3.5 环境管理
  • 3.4 部署流水线
  • 3.4.1 什么是部署流水线
  • 3.4.2 部署流水线实践
  • 3.4.3 测试门
  • 3.4.4 发布准备
  • 3.5 部署脚本编写
  • 3.5.1 构建工具概述
  • 3.5.2 部署脚本编写概念
  • 3.5.3 部署脚本编写最佳实践
  • 3.6 部署生态系统
  • 3.6.1 基础设施工具
  • 3.6.2 云提供商和工具
  • 3.7 小结
  • 3.8 问题
  • 第4章 CI/CD的业务价值
  • 4.1 技术要求
  • 4.2 沟通问题
  • 4.2.1 需求传达不当
  • 4.2.2 缺乏适当的文档
  • 4.2.3 时区差异
  • 4.2.4 缺乏信任和相互尊重
  • 4.2.5 文化差异和语言障碍
  • 4.2.6 反馈周期长
  • 4.3 与团队成员沟通痛点
  • 4.3.1 等待需求信息
  • 4.3.2 部署流水线中未记录的步骤
  • 4.3.3 王国钥匙的持有者过多
  • 4.3.4 沟通渠道过多
  • 4.3.5 疼痛驱动开发
  • 4.4 不同团队间分担责任
  • 4.4.1 轮换团队成员
  • 4.4.2 寻求有关开发实践的反馈
  • 4.4.3 建立跨职能团队
  • 4.5 了解利益相关者
  • 4.5.1 项目经理
  • 4.5.2 行政领导团队
  • 4.5.3 终端用户
  • 4.6 证明CI/CD的重要性
  • 4.6.1 指标和报告
  • 4.6.2 帮助领导者了解自动化的重要性
  • 4.7 获得利益相关者对CI/CD的批准
  • 4.7.1 开始一个臭鼬工厂项目
  • 4.7.2 在本地计算机上启动CI/CD
  • 4.7.3 公司内部展示
  • 4.7.4 午餐交流会
  • 4.8 小结
  • 4.9 问题
  • 第5章 Jenkins的安装与基础
  • 5.1 技术要求
  • 5.2 在Windows上安装
  • 5.2.1 安装Jenkins的先决条件
  • 5.2.2 Windows安装程序
  • 5.2.3 在Windows上安装Jenkins
  • 5.2.4 在Windows上运行安装程序
  • 5.2.5 在Windows上用命令提示符启动和停止Jenkins
  • 5.3 在Linux上安装
  • 5.3.1 在Ubuntu上安装Jenkins
  • 5.3.2 在Ubuntu上启动Jenkins服务
  • 5.3.3 打开网络流量防火墙
  • 5.3.4 首次登录时解锁Jenkins
  • 5.4 在macOS上安装
  • 5.4.1 下载Jenkins程序包
  • 5.4.2 首次登录时解锁Jenkins
  • 5.4.3 通过Homebrew安装Jenkins
  • 5.5 在本地运行Jenkins
  • 5.5.1 创建一个新项目
  • 5.5.2 控制台输出
  • 5.6 管理Jenkins
  • 5.6.1 配置环境变量及工具
  • 5.6.2 配置作业以轮询GitHub版本控制存储库
  • 5.7 小结
  • 5.8 问题
  • 第6章 编写自由风格脚本
  • 6.1 技术要求
  • 6.2 创建简单的自由风格脚本
  • 6.2.1 Jenkins仪表盘指南
  • 6.2.2 添加新的构建作业项
  • 6.2.3 构建配置选项
  • 6.3 配置自由风格作业
  • 6.3.1 General标签页
  • 6.3.2 Source Code Management标签页
  • 6.3.3 Build Triggers标签页
  • 6.3.4 Build Environment标签页
  • 6.3.5 Build标签页
  • 6.3.6 Post-build Actions标签页
  • 6.4 添加环境变量
  • 6.4.1 全局环境变量的配置
  • 6.4.2 EnvInject插件
  • 6.5 用自由风格作业调试问题
  • 6.5.1 历史构建总览
  • 6.5.2 用自由风格脚本调试问题
  • 6.6 小结
  • 6.7 问题
  • 第7章 开发插件
  • 7.1 技术要求
  • 7.2 Jenkins插件的说明
  • 7.2.1 插件为什么有用
  • 7.2.2 Jenkins插件文档
  • 7.2.3 在Jenkins中安装插件
  • 7.3 构建简单的Jenkins插件
  • 7.3.1 安装Java
  • 7.3.2 Maven安装指南
  • 7.4 Jenkins插件的开发
  • 7.4.1 Maven设置文件
  • 7.4.2 HelloWorld Jenkins插件
  • 7.4.3 目录结构说明
  • 7.4.4 Jenkins插件源码说明
  • 7.4.5 构建Jenkins插件
  • 7.4.6 安装Jenkins插件
  • 7.5 Jenkins插件生态系统
  • 可用插件清单
  • 7.6 小结
  • 7.7 问题
  • 第8章 使用Jenkins构建流水线
  • 8.1 技术要求
  • 8.2 Jenkins 2.0
  • 8.2.1 为什么要使用Jenkins 2.0
  • 8.2.2 在现有软件上安装Blue Ocean插件
  • 8.2.3 通过Jenkins Docker镜像来安装Blue Ocean插件
  • 8.2.4 查看Blue Ocean界面
  • 8.3 Jenkins流水线
  • 8.3.1 创建Jenkins流水线
  • 8.3.2 用流水线编辑器创建流水线
  • 8.4 Jenkins Blue Ocean操作说明
  • 8.4.1 流水线视图
  • 8.4.2 流水线细节视图
  • 8.4.3 流水线构建视图
  • 8.4.4 流水线阶段视图
  • 8.4.5 Jenkins流水线中的其他视图
  • 8.5 流水线语法
  • 8.5.1 流水线编辑器
  • 8.5.2 流水线语法文档
  • 8.6 小结
  • 8.7 问题
  • 第9章 Travis CI的安装与基础
  • 9.1 技术要求
  • 9.2 Travis CI的介绍
  • 比较Travis CI和Jenkins
  • 9.3 使用Travis CI的先决条件
  • 9.3.1 创建GitHub账号
  • 9.3.2 创建Travis CI账号
  • 9.3.3 为新GitHub账号添加SSH密钥
  • 9.4 添加简单的Travis YAML配置脚本
  • 9.4.1 Travis YML脚本内容
  • 9.4.2 为Travis CI账号添加GitHub存储库
  • 9.5 Travis CI脚本各部分解析
  • 9.5.1 选择编程语言
  • 9.5.2 选择基础设施
  • 9.5.3 定制构建
  • 9.6 小结
  • 9.7 问题
  • 第10章 Travis CI命令行命令及自动化
  • 10.1 技术要求
  • 10.2 Travis CLI的安装
  • 10.2.1 在Windows上安装
  • 10.2.2 在Linux上安装
  • 10.2.3 在macOS上安装
  • 10.3 Travis CLI命令
  • 10.3.1 非API命令
  • 10.3.2 API命令
  • 10.3.3 存储库命令
  • 10.3.4 Travis Pro和Travis Enterprise版本的Travis CI选项
  • 10.4 小结
  • 10.5 问题
  • 第11章 Travis CI UI日志记录与调试
  • 11.1 技术要求
  • 11.2 Travis Web客户端概述
  • 11.2.1 主控仪表盘概述
  • 11.2.2 作业日志概述
  • 11.3 用Docker在本地调试构建
  • 11.4 在调试模式下运行构建
  • 11.4.1 从配置页面获取API令牌
  • 11.4.2 从构建日志获取作业ID
  • 11.4.3 从视图配置按钮的链接中获取作业ID
  • 11.4.4 通过直达/build端点的API请求获取作业ID
  • 11.4.5 在调试模式下调用API来开始构建作业
  • 11.4.6 在调试模式下启用SSH会话
  • 11.4.7 Travis调试模式中的便捷Bash函数
  • 11.4.8 tmate shell会话操作
  • 11.5 Travis Web UI日志
  • Travis CI用来保护特定的环境变量的步骤
  • 11.6 Travis CI部署概述与调试
  • 11.6.1 支持Travis CI的服务提供商
  • 11.6.2 在Travis CI中设置Heroku
  • 11.6.3 调试Travis YML脚本中的错误
  • 11.7 小结
  • 11.8 问题
  • 第12章 CircleCI的安装与基础
  • 12.1 技术要求
  • 12.2 CircleCI简介
  • 12.3 比较CircleCI和Jenkins
  • 12.4 使用CircleCI的先决条件
  • 12.4.1 创建GitHub账号
  • 12.4.2 创建Bitbucket账号
  • 12.4.3 创建CircleCI账号
  • 12.5 在GitHub中设置CircleCI
  • 12.6 在Bitbucket中设置CircleCI
  • 用CircleCI构建在Bitbucket中创建Java项目
  • 12.7 CircleCI配置概述
  • 12.7.1 CircleCI配置概念概述
  • 12.7.2 向新存储库中添加源文件
  • 12.7.3 新存储库的CircleCI构建作业
  • 12.8 小结
  • 12.9 问题
  • 第13章 CircleCI命令行命令与自动化
  • 13.1 技术要求
  • 13.2 CircleCI CLI的安装
  • 13.2.1 在macOS / Linux上安装CircleCI CLI
  • 13.2.2 通过GitHub安装CircleCI CLI的每夜构建版本
  • 13.3 CircleCI CLI命令
  • 13.3.1 version命令
  • 13.3.2 help命令
  • 13.3.3 config命令
  • 13.3.4 build命令
  • 13.3.5 step命令
  • 13.3.6 configure命令
  • 13.3.7 tests命令
  • 13.4 在CircleCI中使用工作流
  • 13.4.1 CircleCI Web UI中的实际工作流
  • 13.4.2 顺序工作流示例
  • 13.5 使用CircleCI API
  • 13.5.1 测试CircleCI API连接
  • 13.5.2 用CircleCI API获取单个Git存储库的构建摘要
  • 13.5.3 用jq实用程序计算CircleCI构建的某些指标
  • 13.6 小结
  • 13.7 问题
  • 第14章 CircleCI UI日志记录与调试
  • 14.1 技术要求
  • 14.2 作业日志概述
  • 14.2.1 用默认构建作业运行作业中的步骤
  • 14.2.2 用工作流运行作业中的步骤
  • 14.2.3 用CircleCI API查找最新的构建URL
  • 14.3 在CircleCI中调试慢速构建
  • 14.4 日志记录和故障排除技术
  • 用本地YML配置脚本运行构建以排除故障
  • 14.5 小结
  • 14.6 问题
  • 第15章 最佳实践
  • 15.1 技术要求
  • 15.2 CI/CD中不同类型测试的最佳实践
  • 15.2.1 冒烟测试
  • 15.2.2 单元测试
  • 15.2.3 集成测试
  • 15.2.4 系统测试
  • 15.2.5 验收测试
  • 15.2.6 在CI/CD流水线中运行不同类型测试的最佳实践
  • 15.3 密码和机密存储中的最佳实践
  • 15.3.1 Vault的安装
  • 15.3.2 机密管理的最佳实践概述
  • 15.4 部署中的最佳实践
  • 15.4.1 创建部署检查清单
  • 15.4.2 自动化发布
  • 15.4.3 部署脚本示例
  • 15.4.4 部署脚本的最佳实践
  • 15.5 小结
  • 15.6 问题
展开全部

评分及书评

尚无评分
目前还没人评分
  • 加载中...

出版方

人民邮电出版社

人民邮电出版社是工业和信息化部主管的大型专业出版社,成立于1953年10月1日。人民邮电出版社坚持“立足信息产业、面向现代社会、传播科学知识、服务科教兴国”,致力于通信、计算机、电子技术、教材、少儿、经管、摄影、集邮、旅游、心理学等领域的专业图书出版。