利用VSTS实现Daily Build
来源:互联网 发布:星际玩家什么梗 知乎 编辑:程序博客网 时间:2024/05/19 03:20
1、新建Team Build Type,“Project1Build”
2、建立批处理,"C:/Program Files/Microsoft Visual Studio 8/Common7/IDE/TfsBuild.exe" start Server1 "Project1" "Project1Build"。利用Windows自带的任务计划,执行批处理。Server1是服务器,Project1是项目,Project1Build是构建类型。
3、自己写一个邮件通知组件,通知团队成员编译结果,将通知命令放入到上面的批处理中。
需要用到下面的两个WebService
http://Server1:8080/Build/v1.0/BuildController.asmx
http://Server1:8080/Build/v1.0/BuildStore.asmx
下面的代码是获取BuildData信息。
bi.Credentials = System.Net.CredentialCache.DefaultCredentials;
BuildData[] builds = null;
try
...{
builds = bi.GetListOfBuilds(_teamProject, _buildType);
}
catch (Exception e)
...{
Log.LogError("Exception when calling Webservice: " + bi.Url, e.ToString());
throw;
}
if (builds != null)
...{
foreach (BuildData bd in builds)
...{
if (bd.BuildQuality == "Unexamined")
...{
ClientBuildData data = new ClientBuildData();
data.BuildUri = bd.BuildUri;
data.DropLocation = bd.DropLocation;
data.BuildNumber = bd.BuildNumber;
data.BuildStatus = bd.BuildStatus;
data.StartTime = bd.StartTime;
this.buildDatas.Add(data);
}
}
}
return true;
发送邮件通知的代码我就不贴了,到处都是。
4、做安装盘也可以写成批处理,无非是copy编译好的dll到安装目录。还有一点就是可能需要从VSS中获取Sql等。可以通过:tf get "//Server1/Sql" /force /recursive ,上MSDN查找一下VSS的tf命令吧。
做完这些事情之后,每天上班,就会看到半夜build的情况,如果有问题,马上就能发现。当需要做安装盘的时候,只是选择编译成功的build,执行一下批处理即可。如果写了UnitTest,作用更大。实现Daily build,目的就是让开发过程中的问题及时暴露、及时修复。另外一点就是提高做build的效率。
- 利用VSTS实现Daily Build
- DAILY BUILD
- 使用MSBuild实现完整daily build流程
- 使用MSBuild实现完整daily build流程
- 使用MSBuild实现完整daily build流程
- 使用MSBuild实现完整daily build流程
- 使用MSBuild实现完整daily build流程 .
- 用 Hudson 实现 Visual Studio (C++) 项目的 daily build
- Links about "Daily Build"
- Daily build实践
- Daily build 实践
- Daily build resource
- Nant daily build实践
- Daily build实践
- 每日构建 Daily build
- Daily Build Script Sample
- Daily Build--每日构建
- 第一节 DAILY BUILD
- SQL Server 中易混淆的数据类型
- 毕业一年了,女朋友分手了,感觉怪怪的
- 第一天上班
- cursor又
- 标记一下(ACE源码片段)
- 利用VSTS实现Daily Build
- Bliki 索引
- test
- TcxTreeList的使用心得。
- 发布blog的十条黄金法则
- 怎样保护你的.NET程序
- asp split 函数的应用
- 阻止 Visual Basic .NET 或 C# 代码的反向工程
- 小正数,避免极小截断误差