Central master config for multi-tenant multi-forum solution

I’m looking at a little project where I need lots of tiny communities that are almost identical except for the users and content; that is, configuration, theme, SSO provider, etc.

What’s the best way to lock down config/settings across lots of forums on exactly the same server where the config will vary only slightly between forums? Also I’d like to be able to programatically create new forums, utilising the central config with slight variations between forums.

Is it possible to create a plugin who’s sole responsibility is managing a central set of configuration items? For example, use the plugin designated config unless the forum has a local setting.

What about a central “master” forum that’s not used except for configuration, that other forums inherit from?

Our (CDCK) multi-tenant hosting containers use an (internal-only) plugin to do what you describe – hard-code (or derive) default values for some settings, make settings invisible (and hence unavailable to be changed), that sort of thing. Programmatically creating new forums is simply a matter of creating (and migrating) a new DB and adding the config to the multisite config.

I wouldn’t call the whole setup “trivial”, but it’s certainly not the most complicated thing I’ve ever seen, either.

I was looking at using the app.yml to add a bunch of things like:

- exec: rails r "SiteSetting.notification_email='hello@bricabrac.io'"

And some how scripting that process.

Hmm… certainly doesn’t seem trivial the more i look at it. I’m back to seeing if this is possible by restricting users to category and sub-category trees and controlling that set up instead.

I wouldn’t try and do any of that in app.yml; that only gets run at container rebuild time, and there’s no need to trigger a rebuild in order to add another site to a multisite config. I’d strongly recommend going down the custom plugin route to apply config settings, unless your single-forum-with-category-restrictions approach is working for you (which is even easier).

Ya tenemos una solución alojada en http://community.ncqa.org/ y ese grupo de negocio está muy satisfecho con ella.

Ahora, otros grupos dentro de nuestra empresa están mostrando interés en tener sus propios foros.

¿Es posible una solución multiinquilino y multi-foro, similar a lo que se está discutiendo aquí, para una solución alojada?

Si vas a http://community.ncqa.org/u, verás una lista de usuarios.

Estos usuarios ingresaron mediante nuestro inicio de sesión SSO.

Mientras estaban en community.ncqa.org, personalizaron su foto de perfil.

Ahora recibimos otro sitio alojado de su parte.

Llamémoslo dmc.ncqa.org.

Ahora, cuando uno de los usuarios que personalizó su foto de perfil en http://community.ncqa.org/u visite dmc.ncqa.org, ese usuario debería ver su foto de perfil personalizada de manera transparente dentro de dmc.ncqa.org.

En esencia, lo que quería saber es si este nivel de multiinquilinato es posible en una solución alojada de discourse.org.

¡Gracias!