Drupal 10, the latest version of the open-source digital experience platform with even more features, is here.During the 3.x development cycle, I think we need to build out basic support for non-Drupal sites. The most basic case that we can support is flat HTML files. However, we'll need to think through how to present this to a user because the concept of a separation of a platform and a site doesn't make much sense in this case, and there are a lot of systems that will need to collapse platforms and sites into one concept (Wordpress comes to mind).
To this end, I'd like to propose something really crazy: let's get rid of the concept of a platform entirely.
There are some pros and cons that immediately come to mind:
Pros:
- Simplification of non-Drupal support
- Site isolation (security)
- Simplifies the process of creating project/environment associations
- (others?)
Cons:
- Multisite becomes harder (but not impossible) to deal with, and implemented as an opt-in feature on a per-application-type basis (for instance, multisite doesn't make sense for Laravel or Wordpress in most cases)
- CHANGE. BAD.
- (others?)
I think it's going to be a bit easier to write this from the ground up as a separate type of "thing" in Aegir, rather than trying to fit it into the existing codebase.










Comments
Comment #1
cweagansComment #2
Jon PughBeing able to independently create virtualhosts and databases would be really useful. Sometimes you want another vhost, and sometimes you want an extra database (like for more complex sites).
I think once you actually dig into this, multisite isn't that hard at all... it's simply any site that has the same file path as another site, right? That association alone would be enough to say, "These two sites are a part of a multisite".
Comment #3
cweagansThat's very true. Another side effect of this is that you always end up with a sites/default site in Drupal, so there's always a default site and then any multisites are just addons, which makes sense in my mind.
Comment #4
btopro CreditAttribution: btopro commentedWouldn't the platform name-space make a lot of sense for the type of project / CMS in question? Don't want to muddy that name-space in the AEgir community but when I think of Wordpress I think of a Platform (that happens to be a CMS) or an Application.
Mental map
Application (right now Drupal is the default but this could integrate any application)
-- Platform (OpenPublish or OpenPublish For Vendor N+1)
---- Instance 1 (Client N)
---- Instance 2 (Client N+1)
In this way, the instances of a platform are an additional site running off the same code base and so it becomes a multi-site, but the word multi-site is never used.
Have you seen the way that DSLM (https://drupal.org/project/dslm) treats multi-sites? It basically creates a series of drush commands that allow you to stitch together a platform from an application. In DSLM's case that's a drupal core / release paired with an install profile. It then lets you stuff these where ever you want. I build on-top of this in ELMSLN to support the notion of "stacks", basically an intersection of profiles and drupal cores and then author new sites into those multi-sites. Example: https://github.com/btopro/elmsln/tree/master/core/dslmcode/stacks
I'm coming at this from the outside and just trying to get more involved in AEgir / Devshop so wanted to throw my 2-cents in as to how an outsider is starting to tackle some of these issues. Galaxy packaging format that ELMSLN uses supports / is planning out how to support non-drupal platforms but it's at a file-structure level, less a GUI (for now).
Comment #5
omega8cc CreditAttribution: omega8cc commentedJust remember: you can improve terminology, expand it, but you can't overwrite/alter existing terminology with new meanings.
Comment #6
ergonlogicI'd suggest building this in contrib, and then re-including it as part of the 'golden' contrib initiative. This will allow contributors outside of the Aegir core team to participate directly. That said, I think it's a great idea, and could well form the basis of a new 'core' for Aegir 4+.
Comment #7
cweagans@btopro, I'm not a huge fan of dslm in general, plus that still forces us to consider things from purely a Drupal perspective. I want to steer Aegir away from that model if at all possible. Also, I want to make things less complicated, and DSLM seems like a huge complication on top of an already complicated system.
@omega8cc, ergonlogic - roger that. I think that's probably the best approach. This is probably not realistic for Aegir 3.