jenkins配置VS项目
一、插件安装和配置
1.MSBuild:jenkin首页->Manage jenkins(系统管理)->插件管理->安装MSBuild
安装完成后进入Manage jenkins(系统管理)->全局工具配置,点击新增MSBuild,输入VS名称和vs软件自带msbuild.exe路径,取消自动安装勾选项进行配置,如下图
2.git:jenkin首页->Manage jenkins(系统管理)->插件管理->安装git
安装完成后进入Manage jenkins(系统管理)->全局工具配置,点击新增git,输入git名称和git.exe安装路径,取消自动安装勾选项进行配置,如下图
二、项目配置
2.1 配置自由风格项目
- jenkins首页->新建项目,选择构建自由风格项目
- 配置git信息:
- 配置构建触发器
- 设置构建,添加msbuild构建信息:选择vs,指定编译的程序文件,输入编译参数
MSBuild编译参数说明:
/t:Rebuild: 表示每次都重建,不使用增量编译
/P:Configuration=Release :表示编译 Release 版本
/p:DeployOnBuild=true :表示启用编译并发布
/p:PublishProfile 发布文件,指定vs创建的Profile名称。
/p:VisualStudioVersion=14.0 表示VS2015,参考https://blog.csdn.net/u010492426/article/details/119144331
/p:OutputPath=D:\Jenkins\JenkinsGitTest 编译后存放的位置
更多MSBuild编译参数请查看:https://docs.microsoft.com/zh-cn/previous-versions/dotnet/netframework-3.0/ms164311(v=vs.85)?redirectedfrom=MSDN
2.12配置流水线项目
流水线脚本:
pipeline {
agent any
environment{
project_dir="C:\\Robot_Custusx\\Build\\Custusx.sln"
}
stages {
stage('Checkout_RobotRPC') {
steps{
checkout([$class: 'GitSCM', branches: [[name: '*/master']], extensions: [[$class: 'RelativeTargetDirectory', relativeTargetDir: 'C:\\RobotUpdate']], userRemoteConfigs: [[credentialsId: 'd3d51526-25f2-45cf-97de-624fbd60a116', url: 'https://gitee.com/*******/*******']]])
}
}
stage('build_RobotRPCdll') {
steps{
bat """
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\Community\\VC\\Auxiliary\\Build\\vcvars64.bat"
cd C:\\RobotUpdate\\libRobotRPC
msvc_build.cmd
"""
}
}
stage('Checkout_custusx') {
steps{
checkout([$class: 'GitSCM', branches: [[name: '*/master']], extensions: [[$class: 'RelativeTargetDirectory', relativeTargetDir: 'C:\\Robot_Custusx']], userRemoteConfigs: [[credentialsId: 'CustusXAccount', url: 'https://gitee.com/*******/*******']]])
}
}
stage('Copy_RobotRPCdll') {
steps{
bat """
xcopy C:\\RobotUpdate\\libRobotRPC\\libRobotRPC.dll C:\\Robot_Custusx\\Build\\bin\\Release /y
xcopy C:\\RobotUpdate\\libRobotRPC\\libRobotRPC.lib C:\\Robot_Custusx\\source\\ThirdParty\\lib /y
"""
}
}
stage('build_custusx') {
steps{
bat """
echo "building custusx"
cd C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\Community\\MSBuild\\15.0\\Bin
MSBuild ${project_dir} /t:Rebuild /p:Configuration=Release
"""
}}
stage("publish")
{
steps
{
echo "publish"
}
}
}
}