組建自動化
外观
软件开发 |
---|
核心行动 |
范式与模式 |
方法论与框架 |
支持行为 |
实践 |
工具 |
标准与知识体系 |
组建自动化(英語:Build automation,又称构建自动化、自动化构建)指自动创建软件组建的一组进程,包括将计算机源代码编译成二进制码、將二进制码包装成软件包以及运行自动化测试。
概要
组建自动化原先是通过创建makefile来完成的,如今则主要使用两大类工具完成组建[1]:
- 组建自动化工具(如Make、Rake、Cake、MS build、Ant、Gradle等)
- 这些工具的主要目的是通过编译和链接源代码等活动来生成组建工件。
- 组建自动化服务器
- 这些基于Web的通用工具能够在预定或触发的基础上执行组建自动化实用程序。持续集成是组建自动化服务器的类型之一。
根据自动化程度的不同有如下分类:
每个分类下的相关软件可以在组建自动化软件列表(英文)中找到。
组建自动化工具
组建自动化工具允许自动化简单且重复的任务,这些工具会通过以正确的、特定的顺序执行任务并运行每个任务来计算如何达到目标。其又可分为任务导向工具与产品导向工具:任务导向工具用以描述网络在特定集合任务方面的依赖性;产品导向工具则根据其生成的的产品来描述事物[2]。
组建自动化服务器
虽然组建服务器早在持续集成服务器出现之前就已存在,但组建服务器(英語:build servers)通常与持续集成服务器(英語:continuous integration servers)在英语上是同义词。组建服务器也可以并入軟體生命週期管理(ALM)工具以及应用发布自动化(ARA)工具中。
服务器类型
- 按需自动化(On-demand automation):如在命令行界面中运行脚本的用户;
- 计划自动化(Scheduled automation) :如运行每日构建的持续集成服务器;
- 触发自动化(Triggered automation) :如运行每次提交到版本控制系统的构建的持续集成服务器。
參考資料
- ^ Ceruzzi, Paul E. A history of Modern computing. The MIT Press. 2003. ISBN 978-0262532037.
- ^ Clark, Mike. Pragmatic Project Automation: How to Build, Deploy, and Monitor Java Apps. The Pragmatic Programmers. 2004. ISBN 978-0974514031.