My First Attempt With Phing

I’ve finally come to the place where I need some help in automated deployments. I’ve got a few weekend PHP projects that are getting large enough that deploying them takes a few minutes — minutes where stuff can break and stay broken until I remember the exact command line call I need to make to fix them. SVN export, symlinks, mkdir’s, etc etc. I want to automate this crap!

My first attempt was with using Capistrano. I’d heard it could be hacked a bit to make it deploy just about anything. So I installed the gem and tinkered. The trouble is, I don’t have time to learn Ruby right now. Furthermore, I don’t like having the Ruby/Capistrano dependencies.

…and in walks Phing — automated deployment using PHP and XML. Hey! I know those!

Installing Phing was a bit more troublesome than Capistrano — mainly because my hosting company (Dreamhost) has some restrictions around installing PEAR modules and also a small issue in that the default command line bin for PHP is v4 — no good for Phing, which requires PHP5.

A few hours later, and viola! Phing is ready to roll.

Hi there, I'm Jon.

Writer. Musician. Adventurer. Nerd.

Purveyor of GIFs and dad jokes.