摘自Jez Humble David Farley《持续交付:发布可靠软件的系统方法》

为软件的发布创建一个可重复且可靠的过程

这个原则是我们写这本书的一个目标:让软件发布成为一件非常容易的事情。事实上,它的确应该是件很容易的事,因为在发布之前,对发布流程中的每一个环节,你都已经测试过数百次了。它就应该像单击一个按钮那么容易。这种可重复性和可靠性来自于以下两个原则:

  1. 几乎将所有事情自动化;
  2. 将构建、部署、测试和发布软件所需的东西全部纳入到版本控制管理之中。

归根结底,软件部署包括三件事:

  • 提供并管理你的软件所需要的运行环境,这包括硬件配置、所依赖的软件、基础设施以及所需的外部服务;
  • 将你的应用程序的正确版本安装在其之上;
  • 配置你的应用程序,包括它所需要的任何数据以及状态。

将几乎所有事情自动化

把所有的东西都纳入版本控制

提前并频繁地做让你感到痛苦的事

内建质量

“DONE”意味着“已发布”

交付过程是每个成员的责任

持续改进