jenkins+ssh 连接提示:Transferred 0 file(s)

之前公司用jekins来进行自动化发布,现在公司因没有运维,所以自己学习、并搭建了一个jenkins的环境来进行项目自动化部署。

不料在最后连接ssh后部署时,一直提示Transferred 0 file(s),个人理解为:传输文件为0。

现附上自己的问题描述和解决方法:

问题

安装插件. 进入插件管理,输入publish over SSH plugin安装即可。

配置远程服务器。

点击test 出现success才算连接成功。

在project中配置参数

保存后点击立即构建。在日志中出现如下的文字。

SSH: EXEC: completed after 400 ms
SSH: Disconnecting configuration [8楼centos7-test] ...
SSH: Transferred 0 file(s)
Build step 'Send files or execute commands over SSH' changed build result to SUCCESS
Finished: SUCCESS

去远程服务器的目录下查看文件,也未能找到。
说明文件发送失败。

扫描二维码关注公众号,回复: 6073211 查看本文章

当然已经提示传输0个文件,在系统配置时点击test如果成功的话那就是目录的问题。

查询了一些文档明白了具体的意思

  • Source files **/* 表示sskzmz这个job的工作目录下所有的文件和目录。
  • Remove prefix 该操作是针对上面的source files目录,会移除匹配的目录。通常留空。
  • Remote directory 该操作是基于设定的服务器目录进行。这里我的服务器配置是的/www. 因此这里应该写sites/sskzmz即可。
  • Exec command 远程服务器执行的命令。例如可以输出 service nginx restart 或者/www/xx. sh 均可。
 
注意:
 
  source files 要基于任务的目录进行。不支持绝对路径。
   jenkins_HOME没有配置的建议去手动配置一下, http://www.cnblogs.com/yangxia-test/p/4367999.html
 
  Remote directory 要基于你远程服务器的目录配置。
   远程服务器目录就是指你用sxhell等工具连接上服务器时的目录
 
 

在jenkins中publish over SSH plugin插件的文档中说到Source files只写目录名称会自动添加/**,功能是匹配目标目录下的所有文件;

不过我试了试好像不大管用,不知道是版本原因还什么。

猜你喜欢

转载自www.cnblogs.com/leeke98/p/10796513.html