持续交付:环境、测试与版本管理全解析
1. 环境与基础设施
在软件的持续交付(CD)过程中,不同的环境起着至关重要的作用,每个环境都有其独特的用途和特点。
1.1 QA 环境
通常为 QA 实例分配较少的机器(例如,仅从一个位置获取)。部署到 QA 环境一般在单独的管道中进行,这样它就独立于自动发布过程。这是因为 QA 实例的生命周期与生产实例不同,例如,QA 团队可能希望对从主干分支出来的实验代码进行测试。
1.2 开发环境
开发环境可以创建为供所有开发人员共享的服务器,也可以为每个开发人员单独创建一个。开发环境始终包含代码的最新版本,用于实现开发人员之间的集成,其使用方式与 QA 环境类似,但使用者是开发人员而非 QA 人员。
1.3 持续交付中的环境
在 CD 过程中,暂存环境是必不可少的。在极少数情况下,当性能不重要且项目依赖较少时,可以在本地(开发)Docker 主机上进行验收测试,但这应是例外而非规则,因为这样可能会引发与环境相关的生产问题。其他环境在 CD 方面通常不太重要。如果希望每次提交都部署到 QA 或开发环境,可以为此创建单独的管道,但要注意不要混淆主发布管道。在很多情况下,由于 QA 环境的生命周期与生产环境不同,部署到 QA 环境是手动触发的。
1.4 环境安全保障
所有环境都需要良好的安全保障,其中生产环境的安全尤为重要,因为业务依赖于它,任何安全漏洞的后果都可能非常严重。在 CD 过程中,Jenkins 代理必须能够访问服务器以部署应用程序。以下是为代理提供服务器凭据的不同方法:
| 方法 | 操作 | 优
超级会员免费看
订阅专栏 解锁全文
2857

被折叠的 条评论
为什么被折叠?



