摘要: 笔者在发布项目的时候遇到这样一个问题,第一次发布的时候成功发布,然后再次发布失败.但是这个问题很快就排除了,这里提出来是为了帮助遇到这个问题的小伙伴,以顺利避开坑.之所以会这样是因为我们在设置权限的时候只给给了用户读和写的权限,而没有给删除权限,因此造成无法覆盖文件. 解决办法很简单,我们打开filezilla server,点击小人图标,进入用户设置页,然后点击shared folder进入目录... 阅读全文
posted @ 2018-05-23 17:10 周国通 阅读(587) 评论(0) 推荐(0) 编辑
摘要: 上一节我们讲解了如何配置ftp服务端,本节我们讲解如何使用winscp搭建ftp客户端,为什么使用winscp而不是filezilla客户端版,前面我们简单说过,这里不再赘述. 下载winscp以后我们点击下一步直到安装完成,这里并没有什么需要注意的. 安装完成以后我们并不打开winscp因为我们需要自动化操作,图形化操作几乎无法完成自动化.我们对着winscp桌面图标右击,选择-属性,然后从属性... 阅读全文
posted @ 2018-05-23 16:26 周国通 阅读(611) 评论(1) 推荐(0) 编辑
摘要: 上一节我们讲解了如何编译web项目,web项生成以后我们是手动复制到iis目录下的,这显然不符合devops初衷,这里我们讲解如何利用ftp协议把文件传到远程服务器的iis目录下. 这一讲分两部分一部分为ftp服务器的搭建,我们使用的是FileZilla server,另一部分是客户端环境的搭建,我们使用的是winscp.这里你可能会有疑问,filezilla也有客户端程序,为什么只在服务端使用f... 阅读全文
posted @ 2018-05-23 15:18 周国通 阅读(619) 评论(0) 推荐(0) 编辑
摘要: 前面我们讲解了如何使用msbuild.exe编译一个.net程序.示例中我们讲解的是编译控制台项目,但是我们知道web项目不仅需要编译类的嵌入的资源文件,还要拷贝诸如css,html,js,图片等资源文件,比较旧的msbuild版本如果不对web项目作特殊处理则是不能复制这些资源文件的. 下面我们讲一下如何通过参数设置使得msbuild编译的web项目在编译时复制资源. 首先我们打开visual ... 阅读全文
posted @ 2018-05-23 14:43 周国通 阅读(928) 评论(1) 推荐(1) 编辑
摘要: 上一节我们讲解了如何使用opencover生成单元测试覆盖率报告,opencover默认生成的report为xml格式,可读性并不是特别强,如果靠阅读opencover生成的results.xml来分析测试结果显然是非常耗费时间和精力的. 下面介绍一款工具,可以把opencover生成的xml覆盖率报告转化为交互的html. 继续使用上一节项目,使用nuget添加对reportgenerator的... 阅读全文
posted @ 2018-05-23 13:47 周国通 阅读(2492) 评论(0) 推荐(0) 编辑
摘要: 首先先介绍一下Opencover是什么,Opencover是.net平台下用于生成单元测试覆盖率报告的一款软件,是.net平台下为数不多的一款免费覆盖率报告工具,类似的工具还有Jetbrains的dotcover以衣VisualStudio自带的单元测试覆盖率工具,dotcover是付费软件,visualStudio自带的单元测试覆盖率报告工具仅限于在VisualStudio中使用,无法与Jenk... 阅读全文
posted @ 2018-05-23 13:13 周国通 阅读(2520) 评论(2) 推荐(0) 编辑
摘要: 有时候我们需要对从git上拉取的项目进行单元测通过以后才可以发布到测试环境,.net平台下单元测试的框架也很多例如mstest,nunit,xunit等,下面以Nunit为例讲解如何通过Jenkins对项目进行单元测试 关于如何使用单元测试框架,读者可以参考特定框架的官方文档或者网络博客,这里不对其进行展开. 首先我们新建一个NunitTest项目,新建项目以后,我们需要通过Nuget添加以下两个... 阅读全文
posted @ 2018-05-22 19:59 周国通 阅读(930) 评论(0) 推荐(0) 编辑
摘要: 我们刚刚通过msbuild在Jenkins环境下把一个控制台项目生成exe可执行文件,如果我们引用了nuget包,也能够正常生成,但是我们知道,我们在把项目提交到git或者svn上的时候并不包含这些包,我们把项目从git上拉到下来后用vs打开,vs会首先来还原这些nuget包,同样,如果我们是使用msbuild.exe来构建这些项目,也需要首先还原nuget包,否则项目由于缺少依赖而无法正常编译,... 阅读全文
posted @ 2018-05-19 17:06 周国通 阅读(4387) 评论(2) 推荐(0) 编辑
摘要: 前面我们讲解了关于Jenkins的一些基本知识,通过这些知识我们可以结合一些其它工具实现更为复杂的任务,本篇我们将介绍如何使用msbuild工具结合Jenkins实现构建一个.net控制台框. 首先我们打开visual studio创建一个控制台程序,叫作ConsoleBuildTest,如下图示 此时,打开windows cmd输入msbuild,如果会出现如下类似界面 则cmd可以... 阅读全文
posted @ 2018-05-19 16:16 周国通 阅读(4629) 评论(0) 推荐(1) 编辑
摘要: 通过前面我们讲解了如何通过Jenkins执行windows command,powershell脚本,此时我们便可以开始完成一些简单任务了,然而可能看到我们都是通过手动按下Build Now按钮来执行任务构建的,有些时候我们可能需要定时执行一些脚本,Jenkins也是支持的,下面就讲一下如何使用Jenkins执行定时任务. 我们新建一个自由式(FreeStyle Project)任务,命名为per... 阅读全文
posted @ 2018-05-19 14:47 周国通 阅读(5750) 评论(0) 推荐(0) 编辑