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.