Newbie Capistrano question

Hi,

My name is Paul Kristoff and I am rather new to rails. I am trying to
use Capistrano for the first time and am rather confused. My confusion
boils down to the :repository variable in the deploy.rb file. Is this
supposed to point to where your code is currently being stored? Here is
what leads to that question, I am working with an ISP that supports
rails. I originally had the repository variable pointing to the svn on
my machine, but they had me point it to the svn on my account on their
machine. This does not seem right to me; how would Capistrano know
where to check the code out, if I don’t tell it. If I they are right,
then does Capistrano store the checked out code on my isp’s account’s
svn?

Thanks,

Paul Kristoff
[email protected]

Capistrano’s convention is to use an internet accesible server for
your Subversion repostiory. To be honest, having SVN running locally
on your machine is not the best idea from the standpoint that if your
computer dies/blows-up/goes-away, not only have you lost your
development environment, but also your repository.

If you are deploying to the same server that has your SVN repository
(sometimes the case with dedicated hosting), you’d be fine to use
file:///path/to/svn/project – you have to think of capistrano as just
a tool that will go out to your server and do things for you.

So imagine capistrano as an “actor” and when you tell him to deploy,
he will go out to each of your servers (usually one, when you’re
deploying app, web, db) and get your latest code (from wherever you
tell it). This is the repository variable – where the latest version
of your code is.

Capistrano is easy to understand once you’ve done deployment once
manually: sshed into server, checked out code, setup web server,
setup db, then started your app servers and web server…etc. I say
this only because capistrano does all that – it helps to do it
yourself the hard way first.

If you are still wanting to keep your svn on your computer, you’d have
to have a way for when capistrano’s actor sshes into your server where
you’ll be deploying your code, and get back to your computer (if you
are at home, this might mean dynamic dns, and some firewall rules to a
cable modem/router).

Hope that helps,


Charles Brian Q.
self-promotion: www.seebq.com
highgroove studios: www.highgroove.com
slingshot hosting: www.slingshothosting.com