The configuration Split module allows users to define sets of configuration that will get exported to separate directories when exporting and get merged together when importing.
Drupal split module depends on Config Filter for the integration with the import/export pipeline of the Drupal UI and drush.
It is possible to define in settings.php which of these sets should be active and considered for the export and import
Here are a few things that are considered configuration:
Configuration split exposes a configuration entity which controls what you want to split off. Currently, you can
- Blacklist modules: Any configuration that this drupal split module owns will automatically be blacklisted too.
- Blacklist configuration: settings or configuration entities. These will be removed from the activesync directory.
- Download and Enable Drupal configuration split module :- drush en config_split -y
- Go to configuration -> Configuration Split settings
- Click on 'Add configuration split'. Naming is important, so we'll enter 'Dev split' as the name for this configuration. We'll also create a directory called 'sync-dev-split'. (where the config file will go from activesync directory)
- Select Module’s from which configuration file (yml files ) will get split into another folder in root directory of your module .
- There is an status Option which should be active (Checked)
- Save
3. Doing exports and imports on dev or live .
From now on, if you want to import new settings whether it's on your dev or live environment, you can not use the drush core commands anymore. Use following commands: Go to Terminal
A) Export your configuration in other folder
- drush csex dev_split
- sync-dev-split
- Y/N option will be there =>Y
- List of yml files => ls sync-dev-split
- # to export on your dev environment -> @dev:/home/drupal/drupal-core$ drush csex dev_split
- # to export on your live environment -> @live:/home/drupal/drupal-core$ drush csex live_split
B) Import Your configuration
- In local -> drush csim dev_split
- In dev site - drush @pantheon.config-split.dev csim dev_split
- # to import on your dev environment -> @dev:/home/drupal/drupal-core$ drush csim dev_split
- # to import on your live environment -> @live:/home/drupal/drupal-core$ drush csim live_split
OR
C) You can directly Import your Configuration
Go to Configuration-> Configuration Synchronization - If you have added multiple split config settings, then it will be shown like this in Configuration Synchronization
There you can see Multiple Split configuration option like dev split & live Split
If you want to use “Dev split” go to your settings.php file
- $config['config_split.config_split.dev_split']['status']= TRUE;
- $config['config_split.config_split.live_split']['status']= False;
- $config['config_split.config_split.test_split']['status']= False;
Result :
References :