持续集成:部署发布篇

栏目: 服务器 · 发布时间: 5年前

内容简介:提交出用户满意的、高质量的工作软件是研发的终极目标,能够随时随地提供可工作的软件,不仅减轻“终极构建”发行噩梦在开发同学心中的阴影,也有助于项目经理把控版本发布节奏。那么,持续部署和发布在持续集成中应该如何执行呢?典型的部署工作由以下部分组成:

提交出用户满意的、高质量的工作软件是研发的终极目标,能够随时随地提供可工作的软件,不仅减轻“终极构建”发行噩梦在开发同学心中的阴影,也有助于项目经理把控版本发布节奏。

那么,持续部署和发布在持续集成中应该如何执行呢?

典型的部署工作由以下部分组成:

1)为库中的资产打上标签

2)得到干净的环境,避免不当的假定

3)直接从版本控制库中取出软件,生成构建版并为他提供标签,在目标机器上安装

5)在生产环境的克隆环境中成功地执行所有级别测试

6)创建构建反馈报告

7)可以利用版本控制库中的标签回滚构建版

通过上述步骤,可通过执行完全自动化的构建,包括编译、所有测试、审查、打包和部署,在所有已知环境随时发布能工作的软件。

为库中资产打标签

创建版本控制库的标签有利于标识并追踪资产,清楚地说明一组文件是在一起的。标签使我们可追踪一组文件的历史,而不仅仅是单个文件历史。

通过及时创建快照,可以使新版本代码的过渡更顺利。打标签可以采取不同风格,最简单的命名格式为:

主版本号“_”(或“.”)次版本号(如2_89 、2.89)

得到干净的环境

在一个环境中试图部署软件,发现环境中操作系统、数据库或服务器版本不一样,是一件令人很头疼的事情。

想要得到一个干净的环境要删除并重装软件、执行脚本并配置值,确保环境按照期望地去工作。删除机器上所有软件后重新安装的内容有:

1)操作系统

2)操作系统的配置,网络连接、用户、防火墙等

3)软件所需的服务组件,应用服务器、数据库服务器、消息服务器等

4)服务器配置

5)第三方工具

6)定制的软件

有可能只需要删除上述其中一个内容,删除并重装多少内容取决于对风险级别的要求。这个过程自动化程度越高越好。

每个构建版本打标签

为每一个构建版创建唯一的标识符,即“构建版标签”,为二进制制品打上标签:

1)版本控制库中的代码需要一个标签

2)代码的构建动作需要一个标签

这些构建标签让大家知道在特定环境下使用了什么版本的代码,通过这些构建标签,缺陷、功能和新需求都可以用这一份代码作为依据。

执行所有测试

在持续构建过程中,可能只需要执行部分测试,但在打包部署前必须执行所有测试并通过。包括:单元测试、组件测试、系统测试、功能测试、性能测试、负载测试及其他类型测试,确保软件已准备好交付。

除了自动化测试外,还需要由人来进行测试,因为产品的最终用户是人。

所有测试审查执行完成后,需要生成自动化构建的反馈信息表,包括本次构建版中哪些文件不同、修复了哪些缺陷、实现了哪些功能,让大家理解将要发布的构建版的确切情况。

需要有的报告应当有:文件差异报告、缺陷修复报告等,这些报告可能对QA团队有所帮助。

可回滚构建过程

能够“撤销”部署是有效开发中的重要一环。出现问题的可能性总是存在的,所以要利用构建标签来回滚那些不该提交到版本控制库的变更。


以上所述就是小编给大家介绍的《持续集成:部署发布篇》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Design for Hackers

Design for Hackers

David Kadavy / Wiley / 2011-10-18 / USD 39.99

Discover the techniques behind beautiful design?by deconstructing designs to understand them The term ?hacker? has been redefined to consist of anyone who has an insatiable curiosity as to how thin......一起来看看 《Design for Hackers》 这本书的介绍吧!

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

RGB HSV 转换
RGB HSV 转换

RGB HSV 互转工具

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具