jenkins windows slave 构建c/c++代码
2018-06-13 15:02 加个小鸡腿 阅读(2562) 评论(0) 编辑 收藏 举报
1.在‘系统管理’--> "Global Tool Configuration"设置msbuild 配置,如下:
其中Name可以随意写,后面在任务设置中会使用到,最后设置和版本相关的,路径为你的jenkins slave上的msbuild.exe所在的目录,我的填写:
Name: MSBuild 14.0
Path to MSBuild:C:\Program Files (x86)\MSBuild\14.0\Bin
这时你可以会问,你的jenkins master是centos的系统啊,这个路径明显就是windows的路径啊,你不是应该去jenkins 的节点管理那里设置windows 节点吗?这个时候,上面截图中的黄色的提示语就很好的告诉了我们:
C:\Program Files (x86)\MSBuild\14.0\Bin is not a directory on the Jenkins master (but perhaps it exists on some agents)
他告诉我们这个地址master上不存在,可能在某个slave 节点上。所以,相信我,这样配置msbuild是没问题的。
一种方法是:
用插件构建,构建步骤中选择“Build a Visual Studio project or solution using MSBuild” 设置对应的sln文件路径和构建参数就可以了,比如 /p:Configuration=Debug;Platform=x86
jenkins可以调用脚本实现
此外,一般情况,除了单纯的构建,我们还需要指定分支,并切换到对应分支,构建结束后回收对应的文件到ftp上,这时你就可以用脚本实现了,脚本win_build.bat中的代码如下,供参考:
@echo off set msbuild="C:\Program Files (x86)\MSBuild\14.0\Bin\msbuild.exe" set command_part=/t:PC2:Rebuild set sln_file=test.sln set type=%1 set platform=%2 %msbuild% %sln_file% %command_part% /m:8 /p:Configuration=%type%;Platform=%platform%
然后在jenkins上设置bat脚本构建,构建命令为: call win_build.bat Debug x86
(参数Debug是构建类型,x86是平台,master是分支)