将Jenkins job上构建产物上传到远程FTP服务器

摘要: 在Jenkins上面创建Job执行完毕以后,想把产物(war或者log或者png之类的)文件上传到远程FTP服务器备份或者储存,要怎么办呢?

1. copy命令:

copy vickytesting.png ip\pictures

这个不行,只能在本地电脑上不同地方复制。即使你写的target目录里面是远程IP地址,也会给你生成一个IP对应名称的文件夹,气死人:

将Jenkins job上构建产物上传到远程FTP服务器_第1张图片

2. xcopy命令:

将Jenkins job上构建产物上传到远程FTP服务器_第2张图片

net use //ip/ipc$ " " /user:" " 建立IPC空链接

net use //ip/ipc$ "密码" /user:"用户名" 建立IPC非空链接

net use h: //ip/c$ "密码" /user:"用户名" 直接登陆后映射对方C:到本地为H:

net use h: //ip/c$ 登陆后映射对方C:到本地为H:

net use //ip/ipc$ /del 删除IPC链接

这也是没用的。。。

3. Publish Over FTP Plugin插件:

完美解决,不过需要先在Jenkins上面装这个插件:

将Jenkins job上构建产物上传到远程FTP服务器_第3张图片


在可用面板搜索搜索并选中"Publish Over FTP"插件,然后点击“安装并不重启”:

将Jenkins job上构建产物上传到远程FTP服务器_第4张图片

等待安装:

将Jenkins job上构建产物上传到远程FTP服务器_第5张图片

安装成功后点击回到首页:

将Jenkins job上构建产物上传到远程FTP服务器_第6张图片

当然了,此时你可以在插件管理-》已经安装列表看到这个FTP插件:

将Jenkins job上构建产物上传到远程FTP服务器_第7张图片


4. 使用FTP插件:

进入一个Job的配置界面,并且在构建后操作 那一项选择增加构建步骤-》通过FTP传送文件:

将Jenkins job上构建产物上传到远程FTP服务器_第8张图片

这里FTP Server的名字是个下拉框:

点击问号之后有提示信息,让我们先去Jenkins上面配置FTP信息,然后在这里直接选择就可以了:

(因为我的这个Job部署在Jenkins server的其中一台node,而且我也有Jenkins Server的管理权限,所以后续配置步骤都可以自己完成,如果你们没有管理员权限,就只能给管理员提需求,让别人做后面的配置设置了。)

将Jenkins job上构建产物上传到远程FTP服务器_第9张图片

5. Jenkins Server上配置FTP:

Jenkins -> Manage Jenkins -> Configure System :

将Jenkins job上构建产物上传到远程FTP服务器_第10张图片

找到“Publish over FTP”, 然后配置基本信息:

将Jenkins job上构建产物上传到远程FTP服务器_第11张图片

配置Name,Hostname(IP),Username和Password之后点击测试:

将Jenkins job上构建产物上传到远程FTP服务器_第12张图片

我这里即使输入用户名和密码,也还是会报错。

最后发现是因为跨域问题(防火墙问题):就是这个Jenkins Job运行机器跟FTP服务器不在同一个域。。。

如果你们的可以连接成功,那就直接使用就可以了。

最后会在控制台输出类似这样的信息说明上传文件成功:

将Jenkins job上构建产物上传到远程FTP服务器_第13张图片

你可能感兴趣的:(将Jenkins job上构建产物上传到远程FTP服务器)