Posts Tagged ‘capistrano’

A New Blog, Git, & Capistrano

Sunday, August 24th, 2008

I’ve had my fun with ruby.

I wanted to learn ruby, so I wrote myself a blog. Then, I wanted to learn rails, so I migrated it to rails. Then, the spam was too much, so I migrated to Typo. Then, I couldn’t take Typo’s memory footprint, so I moved to Mephisto.

But you know what? Even Mephisto is a pain to deploy, and is still a resource hog. It’s kind of the nature of ruby and rails apps. And what’s the benefit to justify the cost? Aren’t there other more mature, stable, better supported and more flexible blog engines in other languages?

…yes, there are like 50 of them.

So I’ve migrated yet again, this time to WordPress.

I’m really happy with it, but I did have some cool toys in my rails world that I didn’t want to give up. I can use my own machine as a staging environment to blog changes. I can also deploy with a simple “cap deploy”.


My entire website now lives on github and I use capistrano to deploy it after making edits locally. It looks something like this:

git commit -m "..."
git push
cap pull

And to give you an idea of the goodness that is ruby and cap, I also wrote a script to pull the databases on my server down to my staging environment. After all, what’s the point of staging if it uses different data. Using looks something like this:

cap backup
rake db:pull db:restore

If you want to see how this is done, check out repository