2.1.4 设计、构建、发布、运行
代码库在从设计到生产部署的过程中经历了不同的阶段。
- 设计阶段。确定特定应用程序特性所需的技术、依赖和工具。
- 构建阶段。构建是指代码库连同其依赖项一起编译和打包为不可变工件。工件必须是具有唯一标识的。
- 发布阶段。构建与特定配置相结合进行部署。每个发布是不可变的,并且应该是唯一可识别的,例如,使用版本(如 3.9.4)或时间戳(如 2015-10-21-07:28)。发布产品应存储在中央存储库中以便于访问,比如回滚到上一个版本就需要用到存储库。
- 运行阶段。应用程序在执行环境中运行特定发布版本。
该方法论要求严格分离这些阶段,不允许更改运行时代码,因为这会导致与构建阶段不匹配。构建与发布的工件应该是不可变的,并用唯一标识符标记,以保证再现性。