Maybe i'm not getting this right, but it seems to me that I could add a new platform under hostmaster... So i went along and tried:

1. anonymously checkout DRUPAL-6 core in /var/hostmaster/drupal-6.x
2. create a new platform node with that path
3. attempt a verification

Expected result:

* happiness
* a new platform created

Actual result:

* $ /var/hostmaster/drupal-6.x/drush.php 'provision' 'verify' --root='/var/hostmaster/drupal-6.x' --uri='http://hostmaster.koumbit.net' --task_id='148' --publish_path='/var/hostmaster/drupal-6.x' --platform='147' --backend
Unable to load Drupal configuration from sites/default/.

Note how i attempted to install drush in the new platform. I also tried to install provision, nothing worked very well...

Comments

boris mann’s picture

I'm getting the exact same issue. What happens is, it tries to use the new platforms path to drush, rather than the main, installed, D5 version of drush etc.

adrian’s picture

Priority: Critical » Normal

Each platform will need drush installed (as it might need multiple versions of drush).

The trick here is figuring out the path to the drush for that platform.

Marking this as priority normal, as the 0.1 SPECIFICALLY does not support multiple platforms.

adrian’s picture

I intend to store a set of configuration files that will be called instead of drush, for each of the sites.
got the idea from : http://drupal.org/node/250843

So instead of calling
/path/to/drush command --uri=domain --root=something

we will call :
PROVISION_CONFIG_PATH/drushrc/domain.com command

This will also centralize the interface for platforms on remote servers.

boris mann’s picture

Category: bug » feature

If it doesn't support it yet, then it's a feature request, not a bug :P

"Each version will need drush installed" -- hmm, OK, not sure that makes sense -- that's almost like needing a whole hostmaster install profile for each platform? Or just drush for each version of the platform?

But then, it looks like the config files you are thinking of obsolete that. Does that mean no longer using drush? Not clear to me...

anarcat’s picture

Title: cannot verify a new platform » multi-platform support

Indeed, that's a feature request, although we did talk about hiding the platform UI elements from the first versions... if they're broken, we shouldn't show them, otherwise we won't have a polished, production-ready release. So I'm making this bug the feature request and opening a seperate one for the UI issue (http://drupal.org/node/280969).

That said, I also think having drush in each platform is a bit annoying. Similarly, if we need drush, then we'll probably need provision too.. That sounds too much trouble for what we need: can't provision/drush operate on a different Drupal install than the one we loaded?

Maybe we need to start to look at those PROVISION*PATH macros all over again...

adrian’s picture

Status: Active » Postponed (maintainer needs more info)
adrian’s picture

it actually works already, just lacking a good way of popping up new platforms.

I cleaned it up a little bit, and started qorking on a provisionslave profle, to install a headless provisioning system. Probably forcing it to install in the default directory. So provision can redirect for non existing sites pointing to it

Also want to make provision configured via a config file and not the interface. This will make it a lot simpler on both sides.

adrian’s picture

Version: 5.x-0.1-alpha2 » 5.x-0.1-beta1

I created a number of tickets to break this down into easier pieces for us :

Primary requirements :
http://drupal.org/node/321953 - location of drush.php

Related requirements :
http://drupal.org/node/321940 - force provision / hostmaster sites into sites/default
http://drupal.org/node/321949 - create headless slave profile for backend.

That will at least allow us to host multiple platforms simply, and get on with the D6 port of provision.

To make this all really slick (think 0.2 release and non-experimental platforms) :

http://drupal.org/node/321942 - Provision only configured through config file. Simplifies both modules and lessens hosting's dependence on provision
http://drupal.org/node/321944 - A setup command for creating the provision config file, that we can call from front ends. So adding a new platform becomes a 2 form process.
http://drupal.org/node/321946 - Simple front page for slaves, with some help on how to configure / link with a hostmaster. Just documentation mostly.

adrian’s picture

Status: Postponed (maintainer needs more info) » Needs work

completed :
http://drupal.org/node/321953 - location of drush.php
http://drupal.org/node/321940 - force sites/default
http://drupal.org/node/321944 - basic setup command working now. creates drush symlink

in progress :
http://drupal.org/node/321949 - HostSlave profile. Working, but needs some more love before creating project node and importing.

not started :
http://drupal.org/node/321946 - Simple front page for slaves.
http://drupal.org/node/321942 - Config files. I am thinking seriously about this though. It simplifies a lot of code.

I can now somewhat easily pop up new platforms, but it still requires a lot of legwork that should be unnecessary.

I'm seriously considering the config file ticket because it simplifies the D6 and all future ports a decent amount.

adrian’s picture

Status: Needs work » Fixed

Now works.

Just needs http://drupal.org/node/321946 , but that is a documentation issue.

Anonymous’s picture

Status: Fixed » Closed (fixed)

Automatically closed -- issue fixed for two weeks with no activity.