一个大的项目一般都会进行模块化、层次化分隔,每个模块、每个层次都可能是一个或多个工程文件组成,而且各个模块都有依赖关系,有先后顺序,先build哪个然后再build哪个都是有顺序的,如果想build一个项目来发布那可能要打开多个工程文件一个一个的build,每次发布新的都要重复前面的操作,而且还会在发布的时候由于版本问题出现错误。比如A迁入代码build一个versionA,B迁入代码build一个VersionB,加入VersionB的是最新的代码,但人工部署时如果不注意可能会部署成VersionA的代码,导致B的代码并没被包含。这样交给测试的话一旦测出问题,就还要重新build,这是很麻烦的事情。那有没有解决它的方法呢?答案当然是有了,Jenkins就是用来做持续集成的。

Jenkins是一开源的持续集成工具,可以集成多种语言C#,Java,python等都可以,也可以定制开发,想把它玩精通了不容易,有的公司甚至直接设立一个项目组来负责持续集成工作。使用Jenkins可以解决上面的问题。Jenkins有插件来进行版本控制,根据版本更新来自动进行build,前期一旦定义好以后发布部署的话就会非常方便,可以一键部署或者自动化部署。不过这些高大上的东西也不是一时半会都能上手的,每一个知识点如果想深入了解的话可能都需要很多的时间。这里我先抛个砖,演示一个简单的,使用Jenkins进行应用程序的发布。

一、安装插件

使用Jenkins发布.Net程序时需要安装MSBuild Plugin插件。

在Jenkins系统管理——>插件管理中查找MSBuild,然后安装。下图是已经安装好了MSBuild Plugin.

二、创建Jenkins Job

点击新建,创建Project,选择构建一个自由风格的软件项目,这里我创建的是CYWJenkins project。

三、配置

1.MSBuild 配置

系统管理——>Global Tool Configuration,选择新增MSBuild.

2.Jenkins Job的配置

上面创建了CYWJenkins,点击OK之后就会进入配置页面,在配置页面主要有下面的几个大类的配置。

Jenkins通过版本控制来进行构建,而且可以设置在什么情况下构建,即构建触发器,如何构建,以及构建后的操作,构建的上下游设置。这里的例子非常简单就是在本地通过MSBuild来发布MVC的应用程序。

上面红线标出的部分,MSBuild Build File:要构建的项目,这个我事先已经创建好了MVC的工程CYWJenkinsDemo  Command Line Arguments:构建的参数。

/t:Rebuild 表示每次都重建,不使用增量编译
/property:Configuration=Release 表示编译Release版本,
PublishProfile指定创建的Profile名称(没有扩展名),VS发布项目时的配置文件名称
DeployOnBuild=true 表示启用编译并发布
TargetFrameworkVersion=v4.5表示.net Framework的版本

其中PublishProfile这个文件是怎么来的呢?如何创建它呢?

我们可以选择工程CYWJenkinsDemo ,右键发布,然后创建Profile,这里要注意不用点发布,一直下一页,然后点击关闭,会提示要不要保存配置文件,点击保持就OK了,几下名字,就是上面的JenkinsPublishProfile。

四、执行

其实都可以不用手动执行,可以配置触发器,是版本更新时执行还是固定的周期执行,这里就先弄简单的,手动触发执行。点击立即构建,就能将应用发布出来,以后再次构建的化也不用再打开工程然后发布了,直接打开页面点击构建就可以了。这些应该来说都是通过远程服务器来搞定的。对于执行的成不成功呢,可以查看build history

对于执行失败的可以点进去查看具体的log,根据log分析具体原因。这里还可以通过另外的插件来发送邮件通知管理员是否部署成功。

转载于:https://www.cnblogs.com/5ishare/p/7282493.html

Jenkins发布MVC应用程序相关推荐

  1. mvc如何应用nuget包_第五周NuGet软件包-使用Glimpse调试ASP.NET MVC应用程序

    mvc如何应用nuget包 Hey, have you implemented the NuGet Action Plan? Get on it, it'll take only 5 minutes: ...

  2. MVC应用程序播放RealPlayer(rmvb)视频

    以前Insus.NET开发asp.net时,一直无法把Realplayer的rmvb格式的视频在aspx网页播放与显示.现在学习ASP.NET MVC了,再次尝试这个,望它能在MVC的应用程序运行. ...

  3. Expo大作战(十九)--expo打包后,发布分用程序到商店的注意事项

    简要:本系列文章讲会对expo进行全面的介绍,本人从2017年6月份接触expo以来,对expo的研究断断续续,一路走来将近10个月,废话不多说,接下来你看到内容,讲全部来与官网 我猜去全部机翻+个人 ...

  4. ASP.NET MVC应用程序展示RDLC报表

    ASP.NET MVC应用程序展示RDLC报表 原文:ASP.NET MVC应用程序展示RDLC报表 学习ASP.NET MVC这样久,在学习,练习与应用过程中,觉得很多知识与以前的ASP.NET多有 ...

  5. MVC应用程序实现上传文件(续)

    前几天,有练习了<MVC应用程序实现上传文件>http://www.cnblogs.com/insus/p/3590907.html 那只是把文档上传至MVC应用程序下的某一目录之中. 其 ...

  6. ASP.NET MVC应用程序实现下载功能

    上次Insus.NET有在MVC应用程序实现了上传文件的功能<MVC应用程序显示上传的图片> http://www.cnblogs.com/insus/p/3597543.html  有上 ...

  7. 使用mvc模式读取服务器上的文件,关于C#:如何使用asp.net MVC应用程序从服务器上的网络路径读取...

    我已经在运行.net MVC应用程序的Web服务器上设置了到另一台用于存储上载文件的服务器的网络路径.为了允许通过应用程序将文件上传到网络路径,我修改了IIS中的应用程序池,以便该应用程序有权上传到它 ...

  8. 超级简单:一步一步教你创建一小型的asp.net mvc 应用程序

    超级简单:一步一步教你创建一小型的asp.net mvc 应用程序 这本教程中将帮助你创建一个小型的asp.net mvc示例. 在本教程中,我们将创建自己的 Model , View 和Contro ...

  9. ASP.NET安全[开发ASP.NET MVC应用程序时值得注意的安全问题](转)

    概述 安全在web领域是一个永远都不会过时的话题,今天我们就来看一看一些在开发ASP.NET MVC应用程序时一些值得我们注意的安全问题.本篇主要包括以下几个内容 : 认证 授权 XSS跨站脚本攻击 ...

最新文章

  1. 这里有最全的k8s初学者指南!!!
  2. 画出HTML DOM对象层次图。文档对象document有哪些常用的属性和方法?
  3. Flutter开发之名篇及demo收录
  4. ArcEngine创建字段集
  5. vue elementUI表单输入完成后回车触发事件@keyup.enter.native
  6. DVWA——Sqlmap练习
  7. 更改多维数组的数据结构形式
  8. UML 面向对象分析与设计
  9. linux应用对物理内存映射,深入理解Linux内存映射机制 (1)
  10. html 读取 vb,VB编程:vb读取textbox控件某一行的方法
  11. linux x64系统android开发环境搭建
  12. JDK源码-ArrayList源码
  13. Linux之rm命令
  14. SqlServer递归查询树形结果数据
  15. 【asp】有效防止网站留言板出现垃圾留言/评论实现思路_ASP教程
  16. 服务端程序的keeplive
  17. 大淘宝技术发布首个基于神经渲染的3D建模产品Object Drawer,现已向学术界与普通用户开放...
  18. python高级练习题:法贝热复活节彩蛋压测试【难度:5级】--景越Python编程实例训练营,不同难度Python习题,适合自学Python的新手进阶
  19. 微信小程序——云开发的安全规则
  20. 语音芯片WT2003H4 B008单芯片实现智能门铃方案快捷设计

热门文章

  1. 运维老鸟职场生活交友经验谈
  2. C++中图像处理的类之二 CImg
  3. FC-SAN和IP-SAN以及NAS两者的优缺点分别是什么?
  4. 阿里云积极落实等级保护制度,政务云全国首个通过等保2.0合规评测
  5. 基于Pyspark和Thunder的神经图像数据分析-实验运行结果
  6. c++调用cplex求解例子_Java调用cplex求解运输问题
  7. java并发核心知识体系精讲_JVM核心知识体系
  8. java反射模式_Java反射机制详解
  9. sql 查出一张表中重复的所有记录数据
  10. Git - 版本控制工具十分钟入门手册