1

我希望 Capistrano将组件上传到集群中的其中一台服务器。上传是通过scp完成的。上传命令如下所示:

upload("...", "...", :via => :scp, :recursive => true)

当我上传到任何其他主机时,上传工作正常。

当我尝试上传到Capistrano 本身正在运行的同一服务器时,我收到以下错误:

*** 通过 scp 上传失败 [...]: SCP 没有成功完成 () (SCP 没有成功完成 ())

相关资料:

卡皮斯特拉诺 v2.9.0

ruby 1.9.2p180(2011-02-18 修订版 30909)[x86_64-linux]

4

2 回答 2

0

相当肯定这是因为 Capistrano 期望源文件位于您调用该cap deploy命令的计算机上,而目标位于您要部署到的计算机上(也可能它们是不同的计算机)。

如果您尝试将文件从远程计算机获取到您正在运行的计算机上cap deploy,那么我认为您需要使用download而不是upload.

于 2012-05-29T17:52:52.650 回答
0

不知道你是否还在寻找答案,但我是这样解决的:

localhost.rb我的项目文件中,我在 repo 定义下添加了 2 行:

set :repository, "..."

set :copy_dir,"/tmp/temp/"

set :copy_remote_dir,"/tmp/"
于 2013-12-23T09:51:51.383 回答