自动构建设计

来源:互联网 发布:91个人大数据征信查询 编辑:程序博客网 时间:2024/06/11 21:07

自动构建设计

1、  目的

         自动构建系统是为了实现代码更新、打包、发布的自动化过程,简化程序更新过程的繁琐人工操作过程,减轻程序要对代码更新产生的额外负担,提高工作效率,方便测试人员和技术支持人员能够及时地获取产品的最新测试版本。

自动构建系统是一个研发管理系统,与所要开发的系统版本无关。

        本文只介绍了构建过程的实现,没有处理编译错误及相关通知,没有进行单元测试等内容,没有附带实现脚本程序,没有包含自动执行内容。

2、  系统输出成果与要求

        自动构建系统要求在制定的内部网站上实现发布产品组负责的产品,要求可以定时或随时生成最新代码版本产品,发布过程随时生成当前最新版本的产品。发布出来的产品安装程序应为.rar.iso压缩文件,要求每次系统正常运行的结果生成的安装文件,必须与可上市的正规产品安装程序执行过程相同。

3、  工具

结合研发组现在开发工具情况,确定使用如下工具:

1)  SVN——代码版本管理,打包代码以SVN上当前最新代码为准。

2)  VS2008——编译代码

3)  InstallShield/InnoSetup——进行产品打包

4、  实施步骤与内容

1)         建立目录

自动构建系统目录如下,

其中Script文件夹用来存放系统实现的脚本文件,最终脚本因该只有一个文件,能够实现从代码更新到发布的整个流程。

Setup中存放打包好的安装程序,只包含最终的.rar文件,不能有子文件夹,也不能有其他非.rar文件。文件的命名规则为:产品名称_版本_打包时间。文件夹内容大概如下:

打包工程中包含打包程序所需的资源文件与工程文件。

代码库包含从SVN上更新下来的代码

2)         Setup文件夹设置Web共享,共享后在浏览器中可查看下载安装包,大概如下图

3)         为代码库更新代码。最终要求用脚本实现代码更新。

4)         编译代码。要求用脚本实现代码编译

5)         用脚本实现编译结果复制到打包文件所需的工程中,由于代码库中各个产品的生成目录在一起,运行环境相同,打包时不同的产品应只包含必需的环境,各个产品的运行环境(非编译结果)应该在开发包工程中配置。

6)         程序打包。要求用脚本实程序打包。

7)         用脚本实现打包结果压缩重命名。将打包结果生成按文件的命名规则(产品名称_版本_打包时间)压缩。

8)         用脚本将压缩后的文件复制到Setup目录。可以实现直接下载文件。

9)         实现脚本。完成如下功能的脚本:

       a)         用脚本实现代码更新

       b)         用脚本实现代码编译

       c)         用脚本实程序打包

原创粉丝点击