I have an alternative to hostmaster that I built for DevShop. I've built a separate install profile called devmaster.
I can specify an alternative makefile for drush hostmaster-install, but the installation profile itself is hard coded.
In 2.x this is an available option, but it only affects the drupal install profile that is run, and it is not documented.
In the comments are two patches (one for 2.x and one for 1.x) that document this in the drush options display and in the Config list that is output to the user, and uses the profile name for the hostmaster root path.
These patches do not change @hostmaster or @platform_hostmaster, since those seem to be hardcoded in a number of other places.
Comments
Comment #1
Jon PughPatch for 1.x attached.
Comment #2
Jon PughAttached is a patch for 2.x.
Apparently "profile" is made an option in 2.x, but it does not affect the install directory. Regardless of the --profile option, the root is always set to "hostmaster".
This patch adds the profile option to the root folder path, adds a line to the outputted list of options, and adds profile as a documented option in provision_drush_command()
Comment #3
Jon PughUpdated body and updating title,
Comment #4
ergonlogicThis won't likely hit 1.x, but it looks useful for 2.x. I've been considering doing something similar for Valkyrie. Once we finish splitting hosting back out to its own project (another 2.x goal), this'll be even simpler.
Have you tested it with hostmaster-migrate? I suspect it'll work fine, but we should ensure there's no other hardcoding over there.
Comment #5
ergonlogicHmm, we also block building new sites on the hostmaster profile. Should we perhaps do the same here?
Comment #5.0
ergonlogicbeing more descriptive
Comment #6
ergonlogicNew features need to be implemented in Aegir 3.x, then we can consider back-porting to Aegir 2.x.
Comment #7
Jon PughI'll re-roll this in 3.x and 2.x tomorrow.
With this patch I can get rid of devshop's clone of `hostmaster-install`, which would be really nice.
Comment #8
Jon PughAttaching patch for 3.x.
Cherry-pick applies cleanly to 2.x as well.
Comment #9
Jon PughOops, forgot the drush command hook.
Comment #10
Jon PughI'm documenting and altering `hosting_get_profiles` to include the check for banned profiles, this reduces the need to check for them everytime the function is used.
I've added banned profiles as a variable so we can change the list for other install profiles.
Pushed to branch `7.x-3.x-1995506`, patch also attached.
The function now looks like this:
Comment #11
Jon PughComment #14
helmo CreditAttribution: helmo commentedI've merged the 7.x-3.x-1995506 into the hosting project.
And committed the patch from #8 into provision.