Jenkins配置MSBuild实现自动部署(MSBuild+SVN/Subversion+FTP+BAT)

所要用到的主要插件:html

MSBuild Plugin
测试

具体操做:ui

一、配置MSBuild的版本spa

【系统管理】->【Global Tool Configuration】->【MSBuild】,点击【新增MSBuild】进行版本的添加,以下:插件

注意:其中Path to MSBuild为文件夹路径,代码要编译的那台机器的文件夹,若是绑定的是slave时,这个路径就表明这slave的路径命令行

最后,点击【Save】完成保存。3d

注意:若是是4.6的项目,参考:http://www.cnblogs.com/EasonJim/p/6038363.htmlhtm

二、新建项目进行测试blog

这里假设在要进行构建的机器上已经新建好项目,并放在“D:\project\WebApplication1”。ci

建立Jenkins的测试Job。

在【构建】节点增长【增长构建步骤】,选择【Build a Visual Studio project or solution using MSBuild】,以下:

 

注意:这里建议所有项目都编译csproj文件,不建议sln,sln不精确到底哪一个项目有用。

输出的目录在命令行上输入。注意命令行不能换行,且最后一个分号不用写!

点击【保存】,而后测试一下效果:

成功发布。

注意:若是是编译Web项目,架设我要发布到“D:\projectBuildOut\WebApplication1”目录下,那么最后编译的Web工程为"D:\projectBuildOut\WebApplication1\_PublishedWebsites\WebApplication1",中间多了_PublishedWebsites文件夹。

三、配置SVN自动签出代码

在Job的配置页面上选择【源代码管理】->【Subversion】,以下:

其中【Credentials】为SVN的帐号密码,以下添加:

【Local module directory】为SVN签出的目录,注意:此目录不能输入绝对路径,只能是相对路径,好比jenkins所在本机的workpase为D:\jenkins,那么最后签出的代码就在这个目录下。

其他默认便可。

接下来是定时检测,这里直接使用每分钟检查是否有更新来进行SVN的Update:

勾选【Poll SCM】输入【* * * * *】(注意是有空格隔开的)。若是要看这些用法,点击右侧问号便可。

最后保存测试。能够手动Build,也能够直接迁入代码以后自动Build。

四、把编译后的文件经过FTP上传

安装插件【Publish Over FTP

在【系统管理】->【系统设置】->【Publish over FTP】->点击【增长】按钮,增长一个要链接的FTP:

配置基本保持默认,若是有特殊端口等设置的,能够点击【高级】进行配置。最后能够经过【Test Configuration】按钮进行测试。

在Job上【构建后操做】->【增长构建后操做步骤】->【Send build artifacts over FTP】:

 

注意:【Source files】表示的不是绝对路径,而是jenkins的workpase的路径,至关于相对路径,若是要上传整个目录包括子目录的,最后加上【\**】;【Remove prefix】表示去除目录前缀,若是不去除,将会按照上面的目录依次建立。【Exclude files】为要排除的文件和文件夹,上面为参考。

提示:ftp上传文件时多一点使用通配符,好比要上传1uplad2016.rar文件,可使用*upload*.rar这样的通配符,而目录后面\**,这样表明包括子目录任何文件。

五、BAT

相关文章
相关标签/搜索