Oh wow. This is scaringly close to how we run geocod.io - right down to the ansible provisioning wrapper that I put together :)
> ./provision
provision usage:
./provision environment role [hostname]
This script will provision the given role in the specified environment using Ansible
If a hostname is specified, provisioning will be limited to that specific server