Re:Ask YC: How do you upload to your web server?
by turkishrevenge on Thursday May 22, 2008 @01:20PM
(#197306)
I was in the same boat as you not too long ago. As the others have said, Capistrano really is the way to go. Out of the box, it's meant to work with rails projects, but if you tweak it a bit, it'll work fine with really any language/environment. You can try www.capify.org to get started. Beware though, the majority of documentation floating around is for the 1.x release. By v2, a lot of the configuration specific details were changed though and unfortunately if you are starting now, the 2.x docs are really lacking. There is an effort underway to bring them up to speed, but so far I haven't seen anything. Read the docs from the 1.x release, as enough of it still applies to 2.x.
Re:Ask YC: How do you upload to your web server?
by wehriam on Thursday May 22, 2008 @09:08PM
(#197704)
I found Capistrano a little too Rails-centric. I've had a lot of luck with a Python equivalent, Fabric. It works well with the Boto Amazon AWS library to manage EC2 instances. Capistrano has limited AWS support but it seemed immature at the time I tested it.
Re:Ask YC: How do you upload to your web server?
by rufo on Thursday May 22, 2008 @12:29PM
(#197240)
I use Capistrano and am quite happy with it, but even if you don't go that way, seriously look into some kind of deployment management software. Versioned deployments, simple and automatic rollbacks if something fails, and the ability to easy scale up deployments if you wind up breaking out into multiple servers for app/db/web.
It turns updating your server from a mild headache to one line that you actually enjoy typing in.
If you're deploying code, you really should be using Capistrano. Even if it is not a Rails project. It is a world of difference.