使用capistrano上传到localhost

时间:2012-05-07 11:14:23

标签: capistrano

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

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

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

当我尝试上传到运行Capistrano的相同服务器时,出现以下错误:

  

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

相关信息:

Capistrano v2.9.0

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

2 个答案:

答案 0 :(得分:0)

相当确定这是因为Capistrano希望源文件位于您调用cap deploy命令的计算机上,并且目标位于您要部署到的计算机上(也可能是他们是不同的电脑)。

如果您尝试将文件从远程计算机上传到运行cap deploy的计算机上,那么我认为您需要使用download代替upload

答案 1 :(得分:0)

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

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

set :repository, "..."

set :copy_dir,"/tmp/temp/"

set :copy_remote_dir,"/tmp/"