在部署应用程序时,我正在使用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
错误消息:
最重要的错误:
Capistrano没有实现/var/lib/gems/1.8/gems/capistrano-2.6.0/lib/capistrano/recipes/deploy/scm/base.rb:94:in
部署:: SCM :: None(NotImplementedError)sync':
sync': :从/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文件
为了让它与新版本一起再次部署,我应该更改什么?
答案 0 :(得分:2)
同步仅在设置SCM时有效。您的set :scm, :none
中有deploy.rb
。根据您的SCM进行相应更改。 set :scm, :git
等等......
在这里遇到了同样的错误并修复了它,并且认为更多的人可能遇到这个问题 - 显然这样做了。