Software Capistrano? In my PHP? It’s more likely than you think!
For most of Innova’s applications, we’ve got two environments: staging and production. So it was an easy thing to just hit the proper server and do an SVN operation to push out new code.
With our new project, IMEBase we have a little more complexity in mind: we’ve got multiple testing and multiple production environments. Doing all of our SVN stuff manually would be error-prone and boring as hell.
Enter Capistrano.
Marketing How Having An Awesome Blog Is Really Cool
Many, many people keep blogs. Few, few people read them. Even this blog, which is part of a surprisingly successful business, has a readership that struggles to stay in single figures.
My new blog, on the other hand, is astonishingly successful. If I have fewer than 30 000 uniques in a day then I feel bad; the record so far is around 130K. I’ve been linked from boingboing, neatorama, gawker, all the cool well-edited places. I’ve been #1 on digg and #1 on reddit. Possibly at the same time, I’m not sure because I am constantly distracted by how awesome my blog is.
Success of this magnitude obligates me to convey some part of the genius involved to you, the less-successful bloggers. Here are my secrets.
General I don’t know how to do a mail merge. Oh, and Office 2007 is a big fat failure.
To tell the whole truth, I didn’t even know what a “mail merge” was until last week…
Networking/Systems How are your servers today? Three things your network engineering department needs.
Whether you’re responsible for one website or an entire room full of servers, your job as a network engineer (or administrator, analyst, operator, whatever) is to keep it up and know when it’s down so you can get it back up. Your job is to strive for 100% uptime and that should always be your goal, but you need to be prepared - you will experience downtime at some point. These three items will ensure you know about (and are in the process of fixing) a problem before your clients do.
Software Deploying via SVN
So… How long does it take for you to update your WordPress.org sites?
A while back we decided to switch all our WordPress installs to svn, since the good people over at WordPress release their software via svn tags.
So now, the process of updating a WordPress site consists of this: backup the database, disable all the plugins then do the svn switch, which looks like this:
http://svn.automattic.com/wordpress/tags/2.5
hit the wp-admin page again (which will update the database… You remembered to back up, right?) then re-enable the plugins. And you’re pretty much done.
With fast connections, the whole process only takes about 5 minutes per site. You can’t scp faster.
Obviously, do a few tests on your own, and get the process under your fingers, but this becomes such a time saver.
If you’re not using svn (or a similar technology… Personally, I like git, and here’s one reason why…), you’re asking for trouble. See problem #36 here.
Now if only more of the tools that we all depend on would do svn tagging… (of course, we already know that Zend does… but we need more!)
