0%

Jenkins使用Publish Over CIFS插件实现静态页面部署到Windows服务器

发布静态内容操作很简单,一般分两步;一、获取svn内容。二、拷贝到服务器发布目录;
以前静态内容都是在Linux环境下使用Nginx发布,持续集成发布的时候Hudson SCP publisher plugin,调用linux下Scp命令,通过SSH协议拷贝到发布目录就可以了;
最近遇到一个问题,需要发布静态页面到Windows服务器下。不论是IIS,还是Nginx,也都存在一个拷贝内容到发布目录的问题,Windows下采取目录共享方式,通过CIFS协议拷贝。

共享发布目录

共享nginx发布目录jzhome
jenkins

Nginx 配置文件修改

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
……
server {
listen 80;
server_name localhost;
location / {
root html;
index index.html index.htm;
}
location /mypic {
proxy_pass http://127.0.0.1:8888/mypic;
}
location /JzAir {
proxy_pass http://127.0.0.1:9999/JzAir;
}
location /Jzapp {
proxy_pass http://127.0.0.1:8080/Jzapp;
}
location /jzhome {
root F:\\deploy\\nginx-1.12.1\\;
index index.html index.htm;
}
}
……

安装Jenkins插件

安装Publish Over CIFS插件,安装完成后重启Jenkins

配置CIFS

Jenkins-系统管理-系统配置-Publish over CIFS
jenkins

配置Job

Job-构建后步骤
jenkins
PS:这里有点比较难懂一点,Source files要一个能包含所有发布内容的父级目录,所以当发布内容为abc/html/xxx,我们在获取svn代码的时候,获取到abc这一层,这里Source files填写html/**,Remove prefix填写html,Remote directory为空,就可以将html目录下的所有内容发布到共享服务器上
jenkins
jenkins