卡皮斯特拉诺 - "cannot load such file --deploy"



正在处理一个现有的 rails 项目,该项目设置为与 Capistrano 一起部署。试图确定我找出此错误的第一步。谁能指出我需要做什么的正确方向?

cap aborted!
cannot load such file -- deploy
/Users/lrh/Projects/Rails/febennett.com/Capfile:1:in `load'
/Users/lrh/Projects/Rails/febennett.com/Capfile:1:in `<top (required)>'
/Users/lrh/.rvm/gems/ruby-2.0.0-p247@febennett/gems/capistrano-      
3.0.1/lib/capistrano/application.rb:22:in `load_rakefile'
/Users/lrh/.rvm/gems/ruby-2.0.0-p247@febennett/gems/capistrano-
3.0.1/lib/capistrano/application.rb:12:in `run'
/Users/lrh/.rvm/gems/ruby-2.0.0-p247@febennett/gems/capistrano-3.0.1/bin/cap:3:in `<top   
(required)>'
/Users/lrh/.rvm/gems/ruby-2.0.0-p247@febennett/bin/cap:23:in `load'
/Users/lrh/.rvm/gems/ruby-2.0.0-p247@febennett/bin/cap:23:in `<main>'
(See full trace by running task with --trace)

下面的盖文件

load 'deploy'
# Uncomment if you are using Rails' asset pipeline
load 'deploy/assets'
load 'config/deploy' # remove this line to skip loading any of the default tasks

谢谢!希望这是足够的信息。

您正在使用 Capistrano 3,但您使用的项目可能是为 Capistrano 2 设置的。版本 3 是完全重写的,需要相当数量的配置更新才能工作。

假设您在项目的Gemfile中拥有正确的 Capistrano 2.x 版本,您应该使用 bundle exec cap(使用项目版本)而不仅仅是cap(将使用全局安装的 3.x 版本)。

有一个可用的升级指南,尽管它不是很深入。

您需要移动/删除较旧的上限文件,就像使用上限 2 而不是上限 3 之前的项目一样。现在,如果您想将上限升级到 3,请在此之前执行以下操作。

删除以下提到的文件,或者您可以简单地将相同的文件移动到其他地方,如下所示:

mkdir old_cap
mv Capfile old_cap
mv config/deploy.rb old_cap
mv config/deploy/ old_cap # --> only for multistage setups 

现在,您可以继续执行相同的命令。万事如意:)

相关内容

最新更新