Rolling back failed AppEngine deploys in Hudson

In a previous post I mentioned how to set up a build that deployed to AppEngine using Hudson. I’ve been using such a build for a while for JS-Analytics but its frustrating when the deploy operation fails midway.

When this happens you need to issue a Rollback command at the same place you started to deploy form, else AppEngine will say that there is an update in progress. Meaning all builds will fail until it is corrected.

Until recently I’ve been logging into my build server to correct this problem every time it happens. However now I’ve set up another Hudson build to handle the rollback, a clean-up build if you wish.

I set the build to execute in the same workspace as the build that deploys to AppEngine and all the build does currently is to issue the rollback command.

image

I blurred out the part that contains the password, but as you can see it’s still pretty straight forward.

Now every time my deploy build starts acting up, I simply run my rollback build which takes a few seconds. Then I’m good to go again.