The maze book for programmers!

Algorithms, circle mazes, hex grids, masking, weaving, braiding, 3D and 4D grids, spheres, and more!

DRM-Free Ebook

The Buckblog

assorted ramblings by Jamis Buck

Capistrano: Not just for Rails

21 September 2006 — 1-minute read

I am asked periodically if I know of anybody using Capistrano with environments other than Rails. I’ve never had any concrete examples to give them—just rumors and hearsay. Never, that is, until this morning.

The Simplistic Complexity blog has an article from last month titled Automated PHP Deployment With Capistrano, which goes step-by-step through the process of setting up Capistrano for a PHP application, and then using Capistrano to deploy. It can be done!

Furthermore, googling for “java capistrano” returns (besides a few links to cafes in San Juan Capistrano) a few abstracts and articles of people using Capistrano in Java environments. I wish someone would do a blog article on it so I could link it up, but it is heartening to see Ruby sneaking into “enterprise” environments.

Reader Comments

As I moved my business to Rails, there was one big PHP project that I had to support. Adding Capistrano support made to that project my life so much easier as deploying updates was no longer a chore. Then I realized I could use Migrations on the project too, without having the actual code know anything about Ruby. Thanks for helping me sneak Ruby into the system!
I am using Capistrano to deploy Wordpress to my Dreamhost account. I've detailed how I did that here and here It works great, once you work out the specific app issues for which files to deploy, and which to have shared and symlinked into place during the deployment.
"Me too" -- I've used Capistrano with a PHP app.
I actually had the idea to deploy PHP with Capistrano at RailsConf in Chicago. I didn't really have a project I was working on while I was there and got an email from work saying I needed to redeploy a certain project. So I decided to write a recipe and get cap to do my dirty work. After using it with all my current rails apps I knew I could never deploy manually again. You think you cringe deploying manually now? Try doing it after _cap deploy_ing all your new stuff.
The 'vmbuilder' gem I've put together uses Capistrano to build Xen based Debian VMs from scratch automatically and in parallel. Watching 10 machines build themselves in parallel is remarkably satisfying.