Capistrano is Crazy Delicious!

Has anyone gotten capistrano to work successfully with a nonstandard svn+ssh port? One way I see of doing this is setting the SVN_SSH environment variable, but is there a capistrano way of doing this?

I can think of one potential way to do this, and one sure thing:

Potential:    svn+ssh://use@host:port/application/trunk

(Reasonably) Sure Thing:

   In your ~/.ssh/config file, add an entry like this:

Host yourhost    Hostname 1.2.3.4    Port 6000    HostKeyAlias yourhost

I just discovered ~/.ssh/config, and it's very cool!

You can add a User entry, so that you don't have to specify which user for each and every host...

Host yourhost    Hostname 1.2.3.4    Port 6000    HostKeyAlias yourhost    User youruser

With this entry, when you type in:

   ssh yourhost

It will actually do:

   ssh -p 6000 youruser@1.2.3.4

Yeah I know both of these methods. The first doesn't work (for some reason svn just really doesn't care for ports embedded in the url). The second might work, have to try, but I was hoping for something that could be reasonably included in the cap config itself. Since ~/.ssh/config is very platform dependent and I haev developers even (gasp) working on windows boxes, and ideally we wanted to be able to launch the cap action from any dev box.

Yan

You can set it right in your deploy.rb like this:

ssh_options[:port] = 2345

Cheers-

-Ezra

Ezra,

I tried this but it doesn't seem to take effect for svn...it connects to my ssh on port 2022 but then says

ssh: connect to host [.../ port 22: Connection refused svn: Connection closed unexpectedly

Hi!

I tried this but it doesn't seem to take effect for svn...

you should get more answers if you ask those questions on the new capistrano google group: http://groups.google.com/group/capistrano

(btw thanks Jamie for creating this, you *are* creating passionate users :wink:

cheers

Thibaut