We do our own automation of the drush provision and drush hosting commands that Aegir does, plus we add a couple of extra steps to do the sass and coffeescript compilations before migrating a site to a new platform automatically.
So we still have the benefits of the Aegir front end but also augment the power of the drush backend with our required extra steps. Plus, by tying it in with Git tags we make generating new Aegir platforms an integral part of the site-development workflow.
It was quite a big step to augment our reliance upon Aegir with automating the running of drush provision steps from our own Fabric tasks. However, at the cost of one or two limitations, our solution is giving us much more flexibility in the resulting automated workflow.
These are the components:
- A Git post-receive hook that triggers a Jenkins job
- A Jenkins job that runs the Fabric tasks
- Fabric tasks that drive drush provision and drush hostmaster steps
- A YAML configuration file.
- A drush .make template file
The solution took quite a bit of effort initially but should be straightforward to copy.
It is a bit lengthy to describe in detail here but a detailed description can be seen here which should give you enough information to tailor our solution to your similar needs using the Fabric program here on GitHub