Closed (fixed)
Project:
Hostmaster (Aegir)
Component:
Code
Priority:
Critical
Category:
Bug report
Assigned:
Unassigned
Reporter:
Created:
16 Feb 2009 at 23:16 UTC
Updated:
30 May 2014 at 10:04 UTC
Jump to comment: Most recent
i ran into trouble today trying to install Aegir using hosting and provision HEAD revisions, which (with anarcat's help) was tracked down to residual hostmaster.profile and hosting module dependencies. i had attempted to install following these instructions, provided by anarcat in irc:
cd /var
sudo cvs -z6 -d:pserver:anonymous:anonymous@cvs.drupal.org:/cvs/drupal co -d aegir/drupal-5 -r DRUPAL-5-12 drupal # whatever, maybe 5-13 now
cd aegir/drupal-5/
sudo cvs co -d profiles/hostmaster contributions/profiles/hostmaster # no -r
sudo cvs co -d sites/default/modules/hosting contributions/modules/hosting # same
# now we change the process
cd ~
sudo cvs co -d drush contributions/modules/drush
sudo mkdir .drush
sudo cvs co -d .drush/provision contributions/modules/provision
anarcat's grep matches on what needs to go:
http://anarcat.ath.cx/~anarcat/pastes/2009-02-16T180721
Comments
Comment #1
spidermanso that seemed to work, but then i got to the stage of running 'drush hosting setup' from within the /var/aegir/drupal-5 dir (as directed by the hosting wizard at hosting/wizard/hosting/init), and got:
Comment #2
anarcat commentedSo after discussion with Adrian, I realized this was a pretty serious issue.. Hosting *does* need some functions from provision so those need to either be duplicated into provision (meh) or hosting must be able to load provision.
Now there are two ways hosting is called: from the web interface, through Apache/PHP and from the commandline through Drush. The former will not have access to the provision module so all the functions that call provision in that code path need to be fixed. The latter *will* have access to drush so it will be able to call parse_output() and things like that.
Basically, the IPC layer can be written in provision.module and hosting can use it since it's also called from drush.
Regarding my earlier paste of "what needs to be fixed", here's a filtered output based on the above criterias:
Those lines are OKAY as they are in the drush code path (i think):
... although some will probably have to be ported to use drush_ instead of provision_.
Those I'm not sure about at all:
And the DNS module probably needs a bit of a cleanup:
Comment #3
anarcat commentedSo this commit fixed some issues, but we still have some remaining:
Those probably still need to go:
And the DNS module still needs cleanup.
Comment #4
adrian commentedI removed all those instances. Help now also works again.
Now the tricky part is going to be the provision constants.
I think hostmaster needs to change to only create the initial user / client.
The first page of installation will then be to add the server node, which will instruct the user to use a command that will set up the hosting
platform (ie: hosting setup).
This will populate the server specific set of provision functions. These will then be used as defaults to manually create the platform node.
All instances of the error handling constants will need to be migrated from.
Comment #5
adrian commentedI have some code in my new checkout to use the default drush return codes.
Here is a list of the stuff i couldn't change :
The only one that needs special attention is :
The code does not represent if the site has been installed, we need to check the returned array of errors, for which provision needs to be modified to use drush_set_error and not provision_set_error.
Comment #6
adrian commentedMost of those could only be defaulted from within the site itself (ie: the web group etc), so i have copied the little stuff that was needed into hosting, and changed all the defaults.
Hostmaster now installs clean 0.2
Comment #7
anarcat commentedWell, we still have work to do here. Either hostmaster should not depend on provision/drush, or we should change the way we setup platforms right now, because the install profile explicitely depends on those modules. Even if i remove the dependencies from the profile, I still get this:
Comment #8
anarcat commentedI fixed brutally a few issues in the hostmaster profile (not committed yet), but I still stumble upon errors in hostnig.module:
Comment #9
anarcat commentedI committed two fixes to both hosting and hostmaster:
http://drupal.org/cvs?commit=176206
http://drupal.org/cvs?commit=176204
Comment #10
anarcat commentedI feel like i fixed all the issues with the latest commits above.