图解持续集成--纯命令行实现.Net项目每日构建(流程支持)
在前一博客 图解持续集成--纯命令行实现.Net项目每日构建 中介绍了通过命令行进行每日构建,在本文中将介绍支持其流程
本文中使用到的《Code Build & BVT报告》,可在这里下载
1. 说明
1.1. Code Build
Code Build分为Daily Build和Release Build:
- Daily Build:为每工作日进行编译,采用的方式为每个工作日16:00通知开发小组签入通过编译的代码,由项目组指定人员获取代码服务器最新的代码进行编译,编译成功后包括代码保存到\BuildDaily 对应版本文件夹,并建立测试路径进行Bug回归等。
- Release Build:为发布编译,采用的方式为每周五上午10:00通知开发小组签入通过编译的代码,由项目组指定人员获取代码服务器最新的代码进行编译,编译成功后仅保存执行文件到\ReleaseDaily对应版本文件夹,并为发布版本建立测试路径。
1.2. BVT
BVT(Build Verify Test)的主要任务是保证软件系统集成编译后能够正常运转,不会出现致命性错误影响系统的正常使用,以致影响到接下来的系统测试工作。BVT工作采用软件系统每发布一个新版本后执行, 每次BVT之后发布《Code Build & BVT报告》。
2. Build 版本号
2.1. Build 版本号规则
Build 版本号从0001开始流水,完整的版本版本号如:V0.8.0215.0713,表示该版本号为V0.8,build号为0215,每次通过BVT的build版本号加1。
产品暂定的build版本号为V0.8.0200开始
2.2. Build 版本号标识(建议加入)
为清楚地在软件中标识软件的build按本号,需要在软件客户端中标明软件的版本,如在软件帮助菜单->关于子菜单中设定该软件的版本号和build版本号。
3. 代码编译环境
3.1. Code Build
Daily Build由项目组指定人员每工作日下午16:00进行(下班前,防止编译失败找不到对应开发人员),编译环境为测试服务器(IP: 10.169.169.108)环境。
发布路径 http://IP/PBOC.Web_D_0.8.0200/Login.aspx
Window 2003 Server、SQL Server2000、Office 2003、IIS6.0、
.NET Frame1.1 & .NET frame2.0、VS2003/VS2005
3.2. Release Build
BVT由项目组指定人员每周五上午10:00进行, 编译环境为测试服务器(IP: 10.169.169.108)环境。
发布路径 http://IP/PBOC.Web_R_0.8.0205/Login.aspx
Window 2003 Server、SQL Server2000、Office 2003、IIS6.0、
.NET Frame1.1 & .NET frame2.0、VS2003/VS2005
4. 代码管理规范
4.1. 代码管理
源代码(Source Code) 在BVT通过后由指定人员每天从VSS获取最新的版本,编译后的可执行代码在BVT通过后由指定人员按如下代码保存目录结构保存源代码(source_code)
Daily Build : D:\BuildDaily\版本号\
Release Build : D:\BuildRelease\版本号\
4.2. 代码保存目录结构
5. BVT 流程
5.1. 流程图
BVT测试环境:测试服务器BVT环境 (IP: 10.169.169.108)
BVT 流程
5.2. Daily Build手工流程
序号 |
步骤 |
备注 |
1 |
每日16:00通知开发人员把程序签入VSS服务器 |
|
2 |
登陆编译服务器,通过VSS获取最新的程序代码 |
|
3 |
对最新的程序代码进行编译,记录编译的结果。如果不成功需屏蔽或修改等方式,使代码可正常编译。 |
|
4 |
进行BVT工作,结果记入《Code Build & BVT报告》 |
|
5 |
在DailyBuild的目录下建立文件夹,命名格式为V0.8.0230.0729,复制编译成功的程序到此文件夹 |
|
6 |
修改Web.config、Config\PBOC.config中的配置 |
|
7 |
发布该程序,发布名称格式为PBOC.Web_D_ V0.8.0230.0729 |
|
8 |
写《Code Build & BVT报告》,签入到VSS |
|
9 |
按照邮件模板给成员发布版本 |
|
5.3. Daily Build自动流程
序号 |
步骤 |
备注 |
1 |
每日16:00通知开发人员把程序签入VSS服务器 |
|
2 |
启动自动编译脚本 |
|
3 |
进行BVT工作,结果记入《Code Build & BVT报告》 |
|
4 |
写《Code Build & BVT报告》,签入到VSS |
|
5 |
按照邮件模板给成员发布版本 |
|
5.4. Release Build流程
序号 |
步骤 |
备注 |
1 |
周五10:00通知开发人员把程序签入VSS服务器 |
|
2 |
登陆编译服务器,通过VSS获取最新的程序代码 |
|
3 |
对最新的程序代码进行编译,记录编译的结果。如果不成功需屏蔽或修改等方式,使代码可正常编译。 |
|
4 |
进行BVT工作,结果记入《Code Build & BVT报告》 |
|
5 |
在ReleaseBuild的目录下建立文件夹,命名格式为V0.8.0230.0729,复制编译成功的程序到此文件夹 |
|
6 |
修改Web.config、Config\PBOC.config中的配置 |
|
7 |
发布该程序,发布名称格式为PBOC.Web_R_ V0.8.0230.0729 |
|
8 |
写《Code Build & BVT报告》,签入到VSS |
|
9 |
按照邮件模板给成员发布版本 |
|
5.5. 邮件格式
1 |
收件人 |
项目组成员 |
2 |
抄送人 |
相关负责人 |
3 |
主题 |
如:Daily Build&Release Build报告 | ReleaseBuild V0.8.0208.0706 |
4 |
内容 |
报告摘要: 编译时间: 2007-07-06 10:00 编译服务器: 10.169.169.74 类 型: Release Build 版本号: V0.8.0208.0706 编译情况: 编译成功,BVT通过 访问地址: http://IP/PBOC.Web_R_V0.8.0208.0706/Login.aspx 说明:版本号为编译版本号,只针对内部人员所有CodeBuild文档参见\\VSS_DB_DJZ /综合报送产品改造项目/测试目录/ CodeBuild报告
|
6. 配合工作
6.1. 和开发组的配合
- 从2007-6-24 下午16:00开始正式进行BVT流程,请开发小组在这之前将各自的源代码Check-in 到VSS服务器。
- 开发小组必须保证在每天16:00前将自己最新且完成的源代码更新回代码数据库(Check In),如果没有完成那么可以不更新(保持Check Out 状态),但要求保证不将任何会导致编译错误的代码更新(Check In)进代码服务器
- BVT原则上每天进行,如果不能Build通过或BVT不通过,则开发小组应优先解决该问题,并且确保当日内将该问题解决。
6.2. 和测试组的配合
BVT人员除提供给测试小组通过BVT的前/后台代码,同时还负责测试环境执行代码更新,并且有义务协助测试组更新调试更新代码后的测试环境。