My git workflow to deploy an application to appengine
my workflow to deploy an application to appengine using git
I've been using git for nearly 2 years. I love it. It's so extensible that you can easily map it to your own workflow.
I've recently been working on a contextual gadget for Gmail. The problem with contextual gadget is that it's not easy to test it outside of Gmail. So you need to have an easy and quick way to deploy your app. I wanted also to have a way to easily manage my staging and production environment. For this purpose I wrote a script using fabric that is making it easy to manage the different versions (staging, prod and their history). I'm now using it for all my appengine deployment.
For the staging environment, I'm just using a staging version of the application with App Engine Mulitenancy. In some case, you might want to use a totally different application, It's easy to change.
so here is a typical use :
$ git commit -m "blah blah" $ fab deploy # this is tagging the version and deploying to staging $ fab last_tag # this give me the last tag deployed on staging $ fab production last_tag # this give me the last tag deployed on production $ fab production deploy:staging-2010-11-15.015 # this deploy the version tagged staging-2010-11-15.015 to production and tag this version with a production tag
If you want to play with it as well, check it out on github and fork it :












