Hacker News new | ask | show | jobs
by spleeyah 5241 days ago
Have you looked into things like Fabric for automating installations like this? It sounds like you're only deploying to one (or a few) machines, or is it more?

This part of the development cycle has always interested me, especially to see how other people do things.

2 comments

I use Fabric for my deploys. The process is something like:

* Check out to clean directory

* Run tests

* Zip source

* Upload

* Unzip

* Backup existing (in case of needing rollback)

* Deploy static files

* Run South db migrations

* Restart

It's very easy to get started with Fabric and once you're using it, everything can easily be automated.

I use fabric as well with your same approach but I sometimes find easier to have git installed on the server and just pull from the main repository. I also use fabric for nginx and Apache config files so that I keep track of the changes and replace the files on the server if needed. And finally, I use fabric again to install needed virtualenv requirements.
Cool! I use Puppet at work currently to do deployment stuff, but I've always been curious about other technologies like Fabric, et al. I'll probably look into them for personal projects or just for fun, eventually. It's on my [long and growing] list of things-to-do.
I've looked at Fabric but decided that, for now, it's a bit heavyweight for my needs since I'm only deploying to one machine. If my deployments get more complicated, I'll definitely take another look.