Configuration management initiative in Drupal

| | 2 min read

Configuration management is the task of tracking and controlling changes in a website. Site owners often want to have deeper visibility and control over configuration changes to maintain integrity and traceability throughout the lifecycle of a website.

Configuration Management in Drupal

The Configuration Management Initiatives in Drupal include:

  • Move configuration management into core
  • Allow storage of configuration in files
  • Allow the transfer of configuration between environments
  • Create an API to allow custom configurations
  • Integrate UUID into the core so that certain configurations can be given machine names

The configuration management has been absorbed into the Drupal core. The idea behind the Configuration Management Initiative was to build Drupal from the ground up to be better at configuration management. This is to combat the haphazard formats in which modules are stored configuration in Drupal 7, making it hard to decipher where the relevant configuration was stored. In the latest versions of Drupal, the configuration is stored as human-readable text files in the YAML (.yml) format.

The Configuration Manager module in Drupal provides a user interface for importing and exporting configuration changes between a Drupal installation in different environments, such as development, staging, and production, so that changes can be made and tested away from the live environment. This allows for configuration deployment from one environment to another, provided they are on the same site (cloned instances of the same site). The site is identified using a Universally Unique Identifier (UUID). The site UUID must match the target site to allow importing of configuration files on that site.

Configuration files

The default configuration of modules, distributions, and themes is imported into the active configuration store when the respective projects are enabled. So the active configuration store is the complete set of live configurations at any given time. The active configuration is stored in the database by default. However, it allows websites to switch to file-based or key-value storage easily.

What's in store for you?

Drupal terminates the risk associated with configuration settings being stored with the content database. Also, most of the features in the configuration system exist to support multilingual sites. This enables Drupal-powered sites to reach a wider audience, especially in European and Asian countries where multilingual sites have a distinct advantage.

Zyxware Technologies has long been associated with Drupal development and actively participated in the community. To migrate to the latest versions of Drupal or learn more about how Drupal has been geared towards multilingual sites using configuration management, please contact us.

References:

Managing configuration in Drupal