新的Capistrano版本2.6.0部署错误:Capistrano :: Deploy :: SCM :: None(带远程缓存的rsync)未实现`sync'

时间:2011-06-22 09:54:27

标签: capistrano

在部署应用程序时,我正在使用Capistrano和capistrano_rsync_with_remote_cache gem。

使用新软件升级部署服务器后出现问题: capistrano 2.5.10 - > 2.6.0 capistrano_rsync_with_remote_cache 2.3.6 - > 2.4.0
红宝石1.8.6 - > 1.8.7 ruby-gems 1.3.5 - > 1.3.7

错误消息:

http://pastebin.com/bD3azxFZ

最重要的错误:

  Capistrano没有实现

/var/lib/gems/1.8/gems/capistrano-2.6.0/lib/capistrano/recipes/deploy/scm/base.rb:94:in sync': sync': :从

部署:: SCM :: None(NotImplementedError)      

/var/lib/gems/1.8/gems/capistrano_rsync_with_remote_cache-2.4.0/lib/capistrano/recipes/deploy/strategy/rsync_with_remote_cache.rb:110:in

rsync_with_remote_cache.rb文件中的行:110:

  

source.sync(revision,local_cache_path)

但是,这与capistrano_rsync_with_remote_cache的先前版本(2.3.6)中使用的行相同,其中NotImplementedError不存在。

与两个版本一起使用的deploy.rb文件

http://pastebin.com/EbPkCxyN

为了让它与新版本一起再次部署,我应该更改什么?

1 个答案:

答案 0 :(得分:2)

同步仅在设置SCM时有效。您的set :scm, :none中有deploy.rb。根据您的SCM进行相应更改。 set :scm, :git等等......

在这里遇到了同样的错误并修复了它,并且认为更多的人可能遇到这个问题 - 显然这样做了。