.Net 持续集成 —— windows service

时间:2022-01-17 10:18:48

上一篇讲了 Jenkins+WebDeploy+IIS完成 web项目部署,这篇继续讲windows service的部署。

windows service 一般用于自动任务,定时完成某些操作。本文自动任务使用 quartz.net+topshelf ,有关topshelf可以参考园子里的文章 http://www.cnblogs.com/jys509/p/4614975.html,不是本文重点,就不赘述了。

1. 环境

Platform: .Net4.5

  IDE: Visual Studio 2015 & MsBuild

  包管理:NuGet

  版本控制:TFS-git

  服务器: windows 2012 R2

2. 配置

大致配置和web部署是一致的,这里还是直接贴出来:

.Net 持续集成 —— windows service

.Net 持续集成 —— windows service

说明:1. 本段配置 “源码管理” 部分,选择了None,是因为本Job是在主站构建完成之后触发,因此源代码已经拉取完成,不需要继续拉取,如果你要独立构建,可以选择相应的SCM,配置和上一篇的是一致的。

2. build之后使用topshelf的命令,卸载当前正在运行的服务,方便后面拷贝安装

3. “xcopy "C:\repo\Sample \src\Sample .Job\bin\Release\*.*" "C:\web\autojob\" /k /y” 该命令把release文件夹中所有文件拷贝到目标文件夹

4. 最后执行 install 和start 安装和启动windows service