This module allows you to dynamically enable and import configuration from a config split, based upon the currently enabled installation profile.

It also allows you to install Drupal from a custom installation profile, overriding the profile that is set in the default core.extension.yml file.

Theoretically, using multi-site Drupal 8, you might want multiple profiles in the same codebase. This allows you to install various sites on your multi-site platform from any one of the profiles. Going a step farther, you likely want configuration for each of the profiles.

There is an issue currently between drupal/core, drupal/config_split, and acquia/blt that isn't allowing config splits at the profile level to work.

The issue, fundamentally, is that a config split model assumes a default set of configuration that is overwritten in the various splits. This works great for single profile models. However with a multi-profile model, this immediately breaks down because drupal/core writes the profile key into core.extensions.yml. The result? As soon as you try to import config on a site with an active profile that is not the profile in core.extensions.yml you get the following error:

The selected installation profile <em class="placeholder">profile_1</em> does not match the profile stored in configuration <em class="placeholder">profile</em>

This module attempts to remedy the situation by filtering the current profile name when Drupal reads or writes to the core.extension file on disk so that the currently installed profile never conflicts with the profile in your default configuration.

Additionally, if you are using `config_split`, it will enable a split that matches the name of your installed profile at run time. This allows you to have configuration specifically enabled per split.

See the Readme.md file for usage instructions including sample configuration

Supporting organizations: 

Project information

Releases