.Net 项目 Jenkins 持续集成实践

作者/分享人:TL
向 Ta 提问
HP -> HPE-> DXC tech leader

端到端的 .Net 项目持续集成实践案例。Pipeline 包含 GitHub/SVN 代码获取,MSBuild 代码编译,MSTest 单元测试和报表,email notification,打包和包管理,以及远程发布,包括脚本安装和回滚,自动化接收测试鉴定程序的稳定性,以及不稳定状态下的回滚。

使用到的工具有 Jenkins,Docker,Ansible。

已有88人预订
预订达标
文章出炉
交流日期
     
17.09.26
17.10.07
17.10.17 20:30
查看文章评论/提问
曲平
老师,演示录像在哪里?我没有找到,我点击你文章中的演示录像链接,没有任何反应!
Jason葱葱
在使用name=dot-framework-msbuild作为msbuild的话,实际执行的命令是这样的: C:\Windows\Microsoft.NET\Framework64\v4.0.30319\MSBuild.exe MyTest.sln 结果报这样的错: error MSB4019: The imported project "C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v11.0\WebApplications\Microsoft.WebApplication.targets" was not found. Confirm that the path in the <Import> declaration is correct, and that the file exists on disk. 可以看出在MyTest.sln中,这个import有问题,下面是这个文件的头几行如下(未作任何更改): <Project ToolsVersion="15.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <Import Project="..\packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.1.0.5\build\net45\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.props" Condition="Exists('..\packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.1.0.5\build\net45\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.props')" /> <Import Project="..\packages\Microsoft.Net.Compilers.2.1.0\build\Microsoft.Net.Compilers.props" Condition="Exists('..\packages\Microsoft.Net.Compilers.2.1.0\build\Microsoft.Net.Compilers.props')" /> <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" /> 很显然,Microsoft.Net.Compilers.props是关键的target,而我用name=vs-msbuild作为msbuild的话,是可以正常执行成功的。我的问题是:如果使用name=dot-framework-msbuild作为msbuild,怎么修改sln让他成功编译呢?
铭熙: 用C:\Program Files (x86)\MSBuild\14.0\Bin\MSBuild.exe编译
铭熙: 我是在我build的机器上装了vs 2017,然后我使用C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\Bin\MSBuild.exe做的构建,你可以试试。
你可能还喜欢
二叉树的原理推敲与动手种树
浅浅
电商高并发、高流量下分布式 ID 的解决方案(主键生成策略)
Array老师
机器学习004:循环神经网络实现与文本分类问题
如是
DevOps 工具链:在线报障的流程、系统设计和自改进体系的建设
常新居士
谈谈 Java NIO
应书澜
程序员炒股:算法交易策略与建模思想
chen_h
微信扫描登录