Re: [capistrano] Weird error executing SSH command via Capistrano 2.15.4.

257 views
Skip to first unread message

Lee Hambley

unread,
May 25, 2013, 4:06:45 AM5/25/13
to capistrano
Dan,

That looks like the same "we think it's Net::SSH" issue - if you can find a way to crank the reporting level on Net::SSH to "Debug" you see a lot more information (down to bytes on the stream) and might be able to better diagnose it.

FWIW, 1.8.7 is now officially unsupported by Ruby, and as such unsupported by us, although the README still says otherwise.

- Lee



On 25 May 2013 05:01, Dan Sullivan <dansu...@gmail.com> wrote:
Hi,

I am having a weird error during a deployment using capistrano 2.x.    I am unsure whether or not this is directly related to net-ssh (as suggested below), or by Capistrano itself (the occurs when executing a Capistrano task).  First and foremost, I want to say that I am fairly confident that this was working before; I'm guessing that this error has something to do with a newer version of net-ssh and or Capistrano, however this has yet to be proven.

The full stack trace of my error is here:

http://pastie.org/7956002

What is particularly unusual to me is that if I run a single command in the task, the command (i.e. create a directory), the task runs fine.  As soon as I run a second command in the same task, the deployment script bombs out with the stack trace above, even if it is the exact same command run twice in a row in the same task (as defined in the pastie below).

I've stripped down my deploy.rb to include a very minimal amount of code to illustrate the problem.  The past of this code is here.

http://pastie.org/7955994

I am running ruby 1.8.7 (2012-10-12 patchlevel 371) [x86_64-linux] and Capistrano v2.15.4.

In addition to this, I am running ruby RVM ruby-1.8.7-p371.  Finally, my bundle list is below:

I would really appreciate any insight that somebody could provide for me in resolving this issue.  Thank-you so much for your time and attention in helping me look at this problem.

Dan Sullivan

--[dps@neve]-[/tmp/asap/asap]--
> bundle list
Gems included by the bundle:
  * actionmailer (2.3.14)
  * actionpack (2.3.14)
  * activerecord (2.3.14)
  * activeresource (2.3.14)
  * activesupport (2.3.14)
  * builder (3.2.0)
  * bundler (1.3.5)
  * capistrano (2.15.4)
  * configatron (2.6.3)
  * declarative_authorization (0.4.1)
  * fastercsv (1.5.3)
  * haml (3.0.4)
  * highline (1.6.19)
  * hoptoad_notifier (2.4.7)
  * liquid (2.0.0)
  * memcache-client (1.8.3)
  * mysql (2.9.1)
  * net-scp (1.1.1)
  * net-sftp (2.1.2)
  * net-ssh (2.6.7)
  * net-ssh-gateway (1.2.0)
  * newrelic_rpm (2.13.4)
  * nokogiri (1.4.1)
  * paperclip (2.3.1.1)
  * pdfkit (0.5.2)
  * prawn (0.8.4)
  * prawn-core (0.8.4)
  * prawn-layout (0.8.4)
  * prawn-security (0.8.4)
  * preferences (0.4.2)
  * rack (1.1.6)
  * rails (2.3.14)
  * rake (0.8.7)
  * ruby_parser (2.0.6)
  * sanitize (1.2.1)
  * searchlogic (2.5.14)
  * sexp_processor (3.2.0)
  * slim_scrooge (1.0.11)
  * uuidtools (2.1.1)
  * version_bumper (0.3.0)
  * will_paginate (2.3.12)
  * yamler (0.1.0)
--[dps@neve]-[/tmp/asap/asap]--
>







--
--
* You received this message because you are subscribed to the Google Groups "Capistrano" group.
* To post to this group, send email to capis...@googlegroups.com
* To unsubscribe from this group, send email to capistrano+...@googlegroups.com For more options, visit this group at http://groups.google.com/group/capistrano?hl=en
---
You received this message because you are subscribed to the Google Groups "Capistrano" group.
To unsubscribe from this group and stop receiving emails from it, send an email to capistrano+...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
 
 

Donovan Bray

unread,
May 25, 2013, 6:33:45 AM5/25/13
to capis...@googlegroups.com
Dan,

I still have this line in my Gemfile for my older Ree 1.8.7 application

Add it to yours and see if it helps.

  gem 'net-ssh', '2.4.0' #https://github.com/net-ssh/net-ssh/issues/45 Known issue with 2.5.1
 

Dan Sullivan

unread,
May 26, 2013, 9:00:27 PM5/26/13
to capis...@googlegroups.com
Hi, Lee,

Thank-you very much for your reply.  I would have replied to this much earlier, apparently the check to "Email updates to me" didn't take effect.  I have confirmed this issue in the ruby-1.9.3-p392 RVM as well, with both net-ssh-2.4.0 and net-ssh-2.6.7 (I believe this problem to extend beyond version 1.8.7 of the interpreter).

Interestingly enough, I have built the most simple possible Capistrano multistage deployment script I think I possibly can, and I can't get it to work using *any* combination of Ruby, Capistrano (and capistrano-ext depending on how far back you go), or net-ssh.  When I say any, I mean I can't get this to work at all, no matter what I do.  And I've tried many many permutations of platforms, ruby interpreters, and versions net-ssh.  I've literally spent hours and hours on this.  I must be doing something seriously wrong here, as I would think that if these components didn't play nice together, there would be much more information about this issue available.  Just for sanity purposes, I checked my very simple Capistrano script into github if somebody wants to take a look.

In light of this, I would like to pose what a potentially a very simple question; can somebody tell me a combination of the following versions that they know with 100% works, at least on their local system? 

1) Ruby (the interpreter itself, preferably an RVM)
2) Capistrano *with* multistage
3) Net-SSH
4) Executing more than a single command on a remote system in a single task

I have checked my simple configuration into github if anybody wants to futz around with it (I'm trying to run the task 'uname' against the UAT stage). 

https://github.com/dsulli99/capistrano.git

I must admit that I haven't gone down the dark road of debugging Net::SSH yet, although it's getting there.  :-)

Thank-you so much for your time and attention to help me troubleshoot this problem.  I must admit I didn't see this one coming.

Dan

Dan Sullivan

unread,
May 26, 2013, 9:03:42 PM5/26/13
to capis...@googlegroups.com, donn...@donovanbray.com
Hi, DBRay,

Thank-you for your suggestion; explicitly using this version of net-ssh does not appear to solve the problem.   Thank-you for your suggestion, though.  If you had any other suggestions I would definitely be interested in hearing them.

Dan Sullivan

Dan Sullivan

unread,
May 27, 2013, 1:40:01 PM5/27/13
to capis...@googlegroups.com, donn...@donovanbray.com
Hi, Everyone,

After trying to debug this problem for days, I have narrowed the issue down to a problem with the SSH daemon on the hosts in our environment.  We are using a proprietary Centrify DirectControl-enabled OpenSSH daemon, and a recent upgrade from 5.0 to 5.1 appeared to have introduced this issue.  I downgraded one of our hosts to 5.0 and Capistrano started functioning as expected (I should have discovered this a long time ago; I somehow convinced myself it was a problem with the version of Ruby gem(s) I had installed).  Thank-you to everybody who read my email and or started going down the path of helping me :-)

Have a nice holiday.
Reply all
Reply to author
Forward
0 new messages