2016-07-14 15 views
0

はじめに私はカピストラーノを初めて知りました。つまり、Capistranoを使用して数回前に導入した機能的なアプリがあります。私はアプリをいくつか更新し、cap production deployを試しました。私はこのエラー出力を得ました:Capistrano展開の失敗 - SSHキット?

** Invoke deploy:check (first_time) 
** Execute deploy:check 
** Invoke git:check (first_time) 
** Invoke git:wrapper (first_time) 
** Execute git:wrapper 
00:00 git:wrapper 
     01 mkdir -p /tmp/dentalimager/ 
cap aborted! 
ArgumentError: wrong number of arguments (0 for 1) 
/home/patrick/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/capistrano-3.5.0/lib/capistrano/dsl/env.rb:16:in `any?' 
/home/patrick/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/sshkit-1.11.1/lib/sshkit/host.rb:84:in `block in netssh_options' 
/home/patrick/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/sshkit-1.11.1/lib/sshkit/host.rb:83:in `tap' 
/home/patrick/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/sshkit-1.11.1/lib/sshkit/host.rb:83:in `netssh_options' 
/home/patrick/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/capistrano-3.5.0/lib/capistrano/configuration/server.rb:59:in `netssh_options' 
/home/patrick/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/sshkit-1.11.1/lib/sshkit/backends/netssh.rb:159:in `with_ssh' 
/home/patrick/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/sshkit-1.11.1/lib/sshkit/backends/netssh.rb:108:in `execute_command' 
/home/patrick/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/sshkit-1.11.1/lib/sshkit/backends/abstract.rb:141:in `block in create_command_and_execute' 
/home/patrick/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/sshkit-1.11.1/lib/sshkit/backends/abstract.rb:141:in `tap' 
/home/patrick/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/sshkit-1.11.1/lib/sshkit/backends/abstract.rb:141:in `create_command_and_execute' 
/home/patrick/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/sshkit-1.11.1/lib/sshkit/backends/abstract.rb:74:in `execute' 
/home/patrick/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/capistrano-3.5.0/lib/capistrano/tasks/git.rake:16:in `block (3 levels) in <top (required)>' 
/home/patrick/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/sshkit-1.11.1/lib/sshkit/backends/abstract.rb:29:in `instance_exec' 
/home/patrick/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/sshkit-1.11.1/lib/sshkit/backends/abstract.rb:29:in `run' 
/home/patrick/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/sshkit-1.11.1/lib/sshkit/runners/parallel.rb:12:in `block (2 levels) in execute' 
Tasks: TOP => git:check => git:wrapper 
The deploy has failed with an error: wrong number of arguments (0 for 1) 
** Invoke deploy:failed (first_time) 
** Execute deploy:failed 

私は、CapistranoとSSHkitの間に問題があるようでした。 SSHkitがv1.1.10.0からv1.11.1に移行したのは、bundle updateの私のgit repoによると、私のGemfileを振り返りました。

sshkit gemのアップデートによってこの問題が発生する可能性がありますか、他の場所で調べる必要がありますか?もしそうなら、私はどのように1.10.0に戻って、今後の問題を避けるために私のGemfileにその特定のバージョンを指定するのですか?

答えて

0

はい、これはSSHKit 1.11.1で導入されたバグです。

まず、GitHubでこの問題をSSHKitチームに報告することをお勧めします。それがこれを解決する最速の方法だということです。一方

https://github.com/capistrano/sshkit/issues

、SSHKitの古いバージョンを使用してこの問題を回避するには、古いバージョンに「ピン」にごGemfileを使用することができます。あなたのGemfileにこれを追加します。

# Place this next to gem "capistrano", i.e. in the :development group 
gem "sshkit", "1.10.0" 

その後、あなたの提案@Mattため

bundle update sshkit 
+0

感謝を実行する - 私が示唆したようでしたが、それでも同じエラーを持っているように思われます。私は私の違いを振り返り、Capistrano-Railが1.1.6から1.1.7に更新されたようだ。 SSHkitを変更してもカピストラーノ/レールで問題を開くつもりはないようです – PSCampbell

関連する問題