Jenkins搭建windows service自动编译发布环境

类库项目(Task)部署

  前面搭建了Web站点的环境,类库项目发布不同于站点项目,它只需要将MSBuild编译出来的dll复制到目标服务器上即可,而不需要通过Web Deploy,下面来说一下如何发布类库项目【下面以Windows Service项目为例】

编写程序 上传到github,然后配置jenkins

 

/t:Rebuild

/p:Configuration=Release;ExcludeGeneratedDebugSymbol=false;ExcludeXmlAssemblyFiles=false

 Windows批处理命令:

1、发布到本地

  XCOPY "C:Program Files (x86)JenkinsworkspaceFirstWindowsServiceWindowsServiceTestinRelease*.*" "E:IIS_DeployWindowsServicesFirstWindowsServiceTest" /Y /S

MSBuild编译出来的dll复制到本地服务器上对应的目录【需要提前创建好】。

Xcopy命令参考     /Y 就是直接覆盖   /S 复制目录和子目录,除了空的。

2、发布到远程

  XCOPY "C:Program Files (x86)JenkinsworkspaceFirstWindowsServiceWindowsServiceTestinRelease*.*" "\xyz8952IIS_DeployWindowsServicesFirstWindowsServiceTest" /Y /S  

【xyz8952是机器名】需要将目标目录设置为共享,并可以设置能访问的用户,如下,”安全”选项卡中可以看到。

 

 windows service类库发布完之后的exe是不能直接运行的,需要

 

安装服务:【参数不能是服务名称,必须是.exe】

installutil E:IIS_DeployWindowsServicesFirstWindowsServiceTestWindowsServiceTest.exe

即可以成功,在服务中启动。

 若有相同的服务存在,为了测试 可以先将服务卸载掉: installutil /u yourproject.exe

 然后重新修改 服务名称

 

重新构建,成功。再重新安装服务,启动服务,即可。

 注:构建之前 需要将服务停止掉(若服务是启动状态的话),构建成功后再手动将其启动。

 

参考:利用Windows 计划任务定时将本地文件复制到共享文件夹

原文地址:https://www.cnblogs.com/peterYong/p/10173686.html