SlideShare a Scribd company logo
Configuration Management
in Drupal8
What configuration is, and what other types of
information exist in Drupal 8:
Configuration, Content, Session, State.
LvivDrupalCamp2016 Oleksiy Kalinichenko
CTO @ InternetDevels https://www.facebook.com/oleksiy.kalinichenko
Skype: AexChecker
Mail: AexChecker@gmail.com
An introduction
● Configuration is the information about your site that is not content and is
meant to be more permanent, such as the name of your site, the content
types, fields, and views you have defined.
● Content is the information meant to be displayed on your site, such as
articles, basic pages, images, files, and so on.
● Session is the information about an individual user's interactions with the site,
such as whether they are logged in.
● State is information of a temporary nature about the current state of your site.
Examples include the time when Cron was last run, whether node access
permissions need rebuilding, and so on.
https://en.wikipedia.org/wiki/Configuration_management
Why manage configuration?
● It's simple to explain why configuration that is only saved in the database is
bad. You can't keep track of any changes (who made what change, and
when); it's hard to work with a group of people (you simply can't get their
changes without using their SQL dump, and using their dump would delete
your work); and, if you build something on a development environment, how
do you get it to the live site? You get the gist. We want our configuration in
files, and Drupal 8 gives us just that.
● Before Drupal 8, a variety of methods were used to transport configuration
from one environment to another — for example, from a development
environment to a production environment.
Meaningful commit messages
Commit messages are a very important part of your code documentation when
working with version control. When looking for something that was done in the
past, you will first scan through the commit messages, as shown in the following
screenshot:
Meaningful branches
Tickets that require a lot of work should be worked on in a separate branch. When
you name that branch, make sure you use your ticket ID at the beginning—for
instance, 1234-publications , as shown in the following screenshot:
A look back at Drupal 7
● Manual Configuration Management
● The hook_install()/hook_update_N() function
● The Features module
● Storing configuration variables in settings.php
Drupal 8's Take on Configuration Management
Config files
Learning the difference between active and staging
directories
#services.yml (file name)
services:
# Override configuration storage.
config.storage:
class: DrupalCoreConfigCachedStorage
arguments: ['@config.storage.active', '@cache.config']
config.storage.active:
# Use file storage for active configuration.
alias: config.storage.file
The Configuration Management API
Drupal 7, system.admin.inc:
<?php
// The status message depends on whether an admin
// theme is currently in use: a value of 0 means the admin
// theme is set to be the default theme.
$admin_theme = variable_get('admin_theme', 0);
...
// Set the default theme.
variable_set('theme_default', $theme);
?>
Drupal 8:
<?php
// The status message depends on whether an admin theme
// is currently in use: a value of 0 means the admin theme is
// set to be the default theme.
$admin_theme = Drupal::config('system.theme')->get('admin');
...
// Set the default theme.
Drupal::configFactory()
->getEditable('system.theme')
->set('default', $theme)
->save();
?>
Best practices
<?php
Drupal::configFactory()
->getEditable('system.theme')
->set('admin', 'seven')
->save();
Drupal::configFactory()
->getEditable('system.theme')
->set('default', 'bartik')
->save();
?>
<?php
// Load the editable configuration object.
$config = Drupal::configFactory
->getEditable('system.theme');
// Set value of first configuration item.
$config->set('admin', 'seven');
// Set another value.
$config->set('default', 'bartik');
// Save changes back to configuration storage.
$config->save();
?>
Overriding the configuration
#services.yml
cm_example.config_factory_override:
class: Drupalcm_exampleConfigExampleConfigFactoryOverride
arguments: ['@config.storage', '@event_dispatcher', '@config.typed']
tags: - { name: config.factory.override, priority: 10 }
/**
* Provides custom overrides for the configuration factory.
*/
class ExampleConfigFactoryOverride implements ConfigFactoryOverrideInterface {
public function loadOverrides($names) {
$overrides = array();
if (in_array('system.site', $names)) {
$overrides['system.site'] = ['name' => 'Customized site name'];
}
return $overrides;
}
….
Useful Tools and Getting Help
● https://drupal.org/developing/api/8/configuration
● https://drupal.org/documentation/administer/config
● https://drupal.org/project/config_inspector
● https://www.drupal.org/project/config_devel
● https://github.com/drush-ops/drush

More Related Content

What's hot (20)

PPTX
Working with disconnected data in Windows Store apps
Alex Casquete
 
PPTX
S3 l4 db2 environment - databases
Mohammad Khan
 
PPTX
S3 l7 db2 storage model
Mohammad Khan
 
DOCX
Mysql certification in chennai
THINK IT Training
 
PDF
The Ultimate Guide to Oracle database security administration 1 z0 116
ParshantiniRoy
 
PPTX
Creating modules in Drupal
Sayed Ahmed
 
PPTX
Drupal as a data server
Jay Friendly
 
PDF
Dbms lifecycle. ..Database System Development Lifecycle
Nimrakhan89
 
PPTX
Introducing ms sql_server_updated
leetinhf
 
PPSX
Sample database design methodology
Wally Pons
 
PPT
10 Cache Implementation
Ranjan Kumar
 
PDF
The Ultimate Guide to Upgrade ocp java 6, 7 &amp; 8 to java se 11 developer ...
ParshantiniRoy
 
PPTX
Big file tablespaces
dev3993
 
DOCX
Freeingwebhost
Mahkota Raja
 
PPTX
MDF and LDF in SQL Server
Masum Reza
 
DOCX
Sql data shrink steps
Manoj Agnihotri
 
PDF
MySQL 8 Server Optimization Swanseacon 2018
Dave Stokes
 
PPTX
MongoDB-SESION01
Jainul Musani
 
PDF
Ibm data stage implementing etl solution using ibm datastage
bispsolutions
 
Working with disconnected data in Windows Store apps
Alex Casquete
 
S3 l4 db2 environment - databases
Mohammad Khan
 
S3 l7 db2 storage model
Mohammad Khan
 
Mysql certification in chennai
THINK IT Training
 
The Ultimate Guide to Oracle database security administration 1 z0 116
ParshantiniRoy
 
Creating modules in Drupal
Sayed Ahmed
 
Drupal as a data server
Jay Friendly
 
Dbms lifecycle. ..Database System Development Lifecycle
Nimrakhan89
 
Introducing ms sql_server_updated
leetinhf
 
Sample database design methodology
Wally Pons
 
10 Cache Implementation
Ranjan Kumar
 
The Ultimate Guide to Upgrade ocp java 6, 7 &amp; 8 to java se 11 developer ...
ParshantiniRoy
 
Big file tablespaces
dev3993
 
Freeingwebhost
Mahkota Raja
 
MDF and LDF in SQL Server
Masum Reza
 
Sql data shrink steps
Manoj Agnihotri
 
MySQL 8 Server Optimization Swanseacon 2018
Dave Stokes
 
MongoDB-SESION01
Jainul Musani
 
Ibm data stage implementing etl solution using ibm datastage
bispsolutions
 

Viewers also liked (20)

PPTX
Артем Доценко — Deploy Plus. Better UI and more control for deploy module
LEDC 2016
 
PDF
Healthcare Mobility Consulting and Solution Provider
TVS Next
 
PPTX
Partnership
Muneeb Ahsan
 
PDF
Arquitectura de smartphones y tables
Javy1998
 
PDF
Bliss AdTech Solutions
TVS Next
 
PPTX
Memorendom of association
Muneeb Ahsan
 
PDF
Fear of public speaking
Škola Futura
 
PPTX
Тарас Цюпер - Методы кеширования и оптимизация Drupal 7 проектов
LEDC 2016
 
PPTX
Юлія Снітко — Як подружити дизайнерів і Drupal розробників. Досвід ефективної...
LEDC 2016
 
PPTX
Костянтин Чаус — Monitoring of huge Drupal site. Tools and tips
LEDC 2016
 
PPTX
Олександр Щедров та Альбіна Тюпа — Magic button. Can production releases be s...
LEDC 2016
 
PDF
Олександр Щедров — Build your application in seconds and optimize workflow as...
LEDC 2016
 
PPTX
Віталій Бобров — Web components, Polymer and Drupal
LEDC 2016
 
PDF
Andy Postnikov - Drupal 7 vs Drupal 8: от бутстрапа до рендера
LEDC 2016
 
DOCX
Meaning and types of share capital 2
Arshad Islam
 
DOCX
Sistema de archivos
lorenaitu
 
PDF
Libro1
lorenaitu
 
PPTX
Олександр Лінивий — Multisite platform with continuous delivery process for m...
LEDC 2016
 
PPTX
Андрій Юн — Воркшоп "Docker use cases for developers"
LEDC 2016
 
PDF
Тарас Круц — Open Social: brand new Drupal 8 distro for building social netwo...
LEDC 2016
 
Артем Доценко — Deploy Plus. Better UI and more control for deploy module
LEDC 2016
 
Healthcare Mobility Consulting and Solution Provider
TVS Next
 
Partnership
Muneeb Ahsan
 
Arquitectura de smartphones y tables
Javy1998
 
Bliss AdTech Solutions
TVS Next
 
Memorendom of association
Muneeb Ahsan
 
Fear of public speaking
Škola Futura
 
Тарас Цюпер - Методы кеширования и оптимизация Drupal 7 проектов
LEDC 2016
 
Юлія Снітко — Як подружити дизайнерів і Drupal розробників. Досвід ефективної...
LEDC 2016
 
Костянтин Чаус — Monitoring of huge Drupal site. Tools and tips
LEDC 2016
 
Олександр Щедров та Альбіна Тюпа — Magic button. Can production releases be s...
LEDC 2016
 
Олександр Щедров — Build your application in seconds and optimize workflow as...
LEDC 2016
 
Віталій Бобров — Web components, Polymer and Drupal
LEDC 2016
 
Andy Postnikov - Drupal 7 vs Drupal 8: от бутстрапа до рендера
LEDC 2016
 
Meaning and types of share capital 2
Arshad Islam
 
Sistema de archivos
lorenaitu
 
Libro1
lorenaitu
 
Олександр Лінивий — Multisite platform with continuous delivery process for m...
LEDC 2016
 
Андрій Юн — Воркшоп "Docker use cases for developers"
LEDC 2016
 
Тарас Круц — Open Social: brand new Drupal 8 distro for building social netwo...
LEDC 2016
 
Ad

Similar to Олексій Калініченко — Configuration Management in Drupal8 (20)

PPTX
Drupal 8 Configuration Management
Sathya Sheela Sankaralingam
 
PDF
DDAY2014 - Features per Drupal 8
DrupalDay
 
PDF
Drupal 8 Configuration Management
Philip Norton
 
PDF
Drupal 8 Configuration Management with Features
Nuvole
 
PDF
Getting Into Drupal 8 Configuration
Philip Norton
 
PDF
Gestione della configurazione in Drupal 8
Eugenio Minardi
 
PDF
Developing with Configuration Management on Drupal 7
Ryan Szrama
 
PDF
Drupal 8 Configuration Management for you and your team
Luc Bézier
 
PDF
Configuration Management in Drupal 8: A preview (DrupalDays Milano 2014)
Nuvole
 
PDF
Configuration Management in Drupal 8: A preview (DrupalCamp Alpe Adria 2014)
Nuvole
 
PDF
Creating a Reusable Drupal Website for Higher Education - Webinar
Suzanne Dergacheva
 
PPT
Drupal con Sydney configuration management in drupal 7
Arradi Nur Rizal
 
PDF
Config management
Alexei Goja
 
PPTX
Drupal 8 deploying
Andrew Siz
 
PDF
CMI 2.0 session at Drupal DevDays in Cluj-Napoca
Nuvole
 
PDF
Drupal 8 Configuration Management
Exove
 
PDF
Advanced Configuration Management with Config Split et al.
Nuvole
 
PDF
Drupal 8 configuration management
Alexander Tkachev
 
PDF
Configuration Deployment in Drupal 8
Manifesto Digital
 
PDF
Configuration as Dependency: Managing Drupal 8 Configuration with git and Com...
Erich Beyrent
 
Drupal 8 Configuration Management
Sathya Sheela Sankaralingam
 
DDAY2014 - Features per Drupal 8
DrupalDay
 
Drupal 8 Configuration Management
Philip Norton
 
Drupal 8 Configuration Management with Features
Nuvole
 
Getting Into Drupal 8 Configuration
Philip Norton
 
Gestione della configurazione in Drupal 8
Eugenio Minardi
 
Developing with Configuration Management on Drupal 7
Ryan Szrama
 
Drupal 8 Configuration Management for you and your team
Luc Bézier
 
Configuration Management in Drupal 8: A preview (DrupalDays Milano 2014)
Nuvole
 
Configuration Management in Drupal 8: A preview (DrupalCamp Alpe Adria 2014)
Nuvole
 
Creating a Reusable Drupal Website for Higher Education - Webinar
Suzanne Dergacheva
 
Drupal con Sydney configuration management in drupal 7
Arradi Nur Rizal
 
Config management
Alexei Goja
 
Drupal 8 deploying
Andrew Siz
 
CMI 2.0 session at Drupal DevDays in Cluj-Napoca
Nuvole
 
Drupal 8 Configuration Management
Exove
 
Advanced Configuration Management with Config Split et al.
Nuvole
 
Drupal 8 configuration management
Alexander Tkachev
 
Configuration Deployment in Drupal 8
Manifesto Digital
 
Configuration as Dependency: Managing Drupal 8 Configuration with git and Com...
Erich Beyrent
 
Ad

More from LEDC 2016 (20)

PPTX
A. Postnikov & P. Mahrinsky — Drupal Community — це ми
LEDC 2016
 
PDF
Слава Мережко — Практикум: "Як ростити розробників"
LEDC 2016
 
PDF
Генадій Колтун — Комунізм наступає: що будемо робити, коли машини навчаться п...
LEDC 2016
 
PDF
Андрій Поданенко — Воркшоп "Розвертання CIBox"
LEDC 2016
 
PDF
Юрій Герасімов — Editorial experience in Drupal8
LEDC 2016
 
PPTX
Валентин Мацвейко та Владислав Мойсеєнко — D8: Migrate Yourself: code->module...
LEDC 2016
 
PPTX
Тарас Кирилюк — Docker basics. How-to for Drupal developers
LEDC 2016
 
PDF
Ігор Карпиленко — PHPStorm for drupal developer
LEDC 2016
 
PPTX
Анатолій Поляков — Subdomains everywhere
LEDC 2016
 
PPTX
Сергій Бондаренко — Тестування Drupal сайтiв з допогою TqExtension
LEDC 2016
 
PPTX
Вадим Абрамчук — Big Drupal: Issues We Met
LEDC 2016
 
PDF
Юрій Герасимов — Delayed operations with queues
LEDC 2016
 
PDF
Андрій Юн — Drupal contributor HOWTO
LEDC 2016
 
PPTX
Генадій Колтун — Перехід від фрілансера в стадію компанії
LEDC 2016
 
PPTX
Олена Ольховик — Від frontend розробки до Drupal-темізації. Основи і специфіка
LEDC 2016
 
PPTX
Тарас Кирилюк та Олена Пустовойт — CI workflow у веб-студії
LEDC 2016
 
PDF
Тарас Круц - Tips On Getting Everything You Can Out of Drupal Form API
LEDC 2016
 
PPTX
Анатолий Поляков - Drupal.ajax framework from a to z
LEDC 2016
 
PDF
Андрей Поданенко - Start using Vagrant now!
LEDC 2016
 
PPTX
Александр Даниленко - Panels как философия
LEDC 2016
 
A. Postnikov & P. Mahrinsky — Drupal Community — це ми
LEDC 2016
 
Слава Мережко — Практикум: "Як ростити розробників"
LEDC 2016
 
Генадій Колтун — Комунізм наступає: що будемо робити, коли машини навчаться п...
LEDC 2016
 
Андрій Поданенко — Воркшоп "Розвертання CIBox"
LEDC 2016
 
Юрій Герасімов — Editorial experience in Drupal8
LEDC 2016
 
Валентин Мацвейко та Владислав Мойсеєнко — D8: Migrate Yourself: code->module...
LEDC 2016
 
Тарас Кирилюк — Docker basics. How-to for Drupal developers
LEDC 2016
 
Ігор Карпиленко — PHPStorm for drupal developer
LEDC 2016
 
Анатолій Поляков — Subdomains everywhere
LEDC 2016
 
Сергій Бондаренко — Тестування Drupal сайтiв з допогою TqExtension
LEDC 2016
 
Вадим Абрамчук — Big Drupal: Issues We Met
LEDC 2016
 
Юрій Герасимов — Delayed operations with queues
LEDC 2016
 
Андрій Юн — Drupal contributor HOWTO
LEDC 2016
 
Генадій Колтун — Перехід від фрілансера в стадію компанії
LEDC 2016
 
Олена Ольховик — Від frontend розробки до Drupal-темізації. Основи і специфіка
LEDC 2016
 
Тарас Кирилюк та Олена Пустовойт — CI workflow у веб-студії
LEDC 2016
 
Тарас Круц - Tips On Getting Everything You Can Out of Drupal Form API
LEDC 2016
 
Анатолий Поляков - Drupal.ajax framework from a to z
LEDC 2016
 
Андрей Поданенко - Start using Vagrant now!
LEDC 2016
 
Александр Даниленко - Panels как философия
LEDC 2016
 

Recently uploaded (20)

PDF
FutureCon Seattle 2025 Presentation Slides - You Had One Job
Suzanne Aldrich
 
PPTX
PHIPA-Compliant Web Hosting in Toronto: What Healthcare Providers Must Know
steve198109
 
PDF
Cleaning up your RPKI invalids, presented at PacNOG 35
APNIC
 
PDF
Boardroom AI: The Next 10 Moves | Cerebraix Talent Tech
ssuser73bdb11
 
PDF
BRKAPP-1102 - Proactive Network and Application Monitoring.pdf
fcesargonca
 
PDF
BRKACI-1001 - Your First 7 Days of ACI.pdf
fcesargonca
 
PPTX
Networking_Essentials_version_3.0_-_Module_5.pptx
ryan622010
 
PPTX
L1A Season 1 ENGLISH made by A hegy fixed
toszolder91
 
PPTX
Softuni - Psychology of entrepreneurship
Kalin Karakehayov
 
DOCX
Custom vs. Off-the-Shelf Banking Software
KristenCarter35
 
PPTX
Presentation3gsgsgsgsdfgadgsfgfgsfgagsfgsfgzfdgsdgs.pptx
SUB03
 
PPTX
Networking_Essentials_version_3.0_-_Module_3.pptx
ryan622010
 
PPTX
Metaphysics_Presentation_With_Visuals.pptx
erikjohnsales1
 
PDF
Enhancing Parental Roles in Protecting Children from Online Sexual Exploitati...
ICT Frame Magazine Pvt. Ltd.
 
PPTX
西班牙巴利阿里群岛大学电子版毕业证{UIBLetterUIB文凭证书}文凭复刻
Taqyea
 
PPTX
04 Output 1 Instruments & Tools (3).pptx
GEDYIONGebre
 
PDF
Digital burnout toolkit for youth workers and teachers
asociatiastart123
 
PDF
BRKSP-2551 - Introduction to Segment Routing.pdf
fcesargonca
 
PDF
BRKACI-1003 ACI Brownfield Migration - Real World Experiences and Best Practi...
fcesargonca
 
PPTX
Orchestrating things in Angular application
Peter Abraham
 
FutureCon Seattle 2025 Presentation Slides - You Had One Job
Suzanne Aldrich
 
PHIPA-Compliant Web Hosting in Toronto: What Healthcare Providers Must Know
steve198109
 
Cleaning up your RPKI invalids, presented at PacNOG 35
APNIC
 
Boardroom AI: The Next 10 Moves | Cerebraix Talent Tech
ssuser73bdb11
 
BRKAPP-1102 - Proactive Network and Application Monitoring.pdf
fcesargonca
 
BRKACI-1001 - Your First 7 Days of ACI.pdf
fcesargonca
 
Networking_Essentials_version_3.0_-_Module_5.pptx
ryan622010
 
L1A Season 1 ENGLISH made by A hegy fixed
toszolder91
 
Softuni - Psychology of entrepreneurship
Kalin Karakehayov
 
Custom vs. Off-the-Shelf Banking Software
KristenCarter35
 
Presentation3gsgsgsgsdfgadgsfgfgsfgagsfgsfgzfdgsdgs.pptx
SUB03
 
Networking_Essentials_version_3.0_-_Module_3.pptx
ryan622010
 
Metaphysics_Presentation_With_Visuals.pptx
erikjohnsales1
 
Enhancing Parental Roles in Protecting Children from Online Sexual Exploitati...
ICT Frame Magazine Pvt. Ltd.
 
西班牙巴利阿里群岛大学电子版毕业证{UIBLetterUIB文凭证书}文凭复刻
Taqyea
 
04 Output 1 Instruments & Tools (3).pptx
GEDYIONGebre
 
Digital burnout toolkit for youth workers and teachers
asociatiastart123
 
BRKSP-2551 - Introduction to Segment Routing.pdf
fcesargonca
 
BRKACI-1003 ACI Brownfield Migration - Real World Experiences and Best Practi...
fcesargonca
 
Orchestrating things in Angular application
Peter Abraham
 

Олексій Калініченко — Configuration Management in Drupal8

  • 1. Configuration Management in Drupal8 What configuration is, and what other types of information exist in Drupal 8: Configuration, Content, Session, State.
  • 2. LvivDrupalCamp2016 Oleksiy Kalinichenko CTO @ InternetDevels https://www.facebook.com/oleksiy.kalinichenko Skype: AexChecker Mail: [email protected]
  • 3. An introduction ● Configuration is the information about your site that is not content and is meant to be more permanent, such as the name of your site, the content types, fields, and views you have defined. ● Content is the information meant to be displayed on your site, such as articles, basic pages, images, files, and so on. ● Session is the information about an individual user's interactions with the site, such as whether they are logged in. ● State is information of a temporary nature about the current state of your site. Examples include the time when Cron was last run, whether node access permissions need rebuilding, and so on.
  • 5. Why manage configuration? ● It's simple to explain why configuration that is only saved in the database is bad. You can't keep track of any changes (who made what change, and when); it's hard to work with a group of people (you simply can't get their changes without using their SQL dump, and using their dump would delete your work); and, if you build something on a development environment, how do you get it to the live site? You get the gist. We want our configuration in files, and Drupal 8 gives us just that. ● Before Drupal 8, a variety of methods were used to transport configuration from one environment to another — for example, from a development environment to a production environment.
  • 6. Meaningful commit messages Commit messages are a very important part of your code documentation when working with version control. When looking for something that was done in the past, you will first scan through the commit messages, as shown in the following screenshot:
  • 7. Meaningful branches Tickets that require a lot of work should be worked on in a separate branch. When you name that branch, make sure you use your ticket ID at the beginning—for instance, 1234-publications , as shown in the following screenshot:
  • 8. A look back at Drupal 7 ● Manual Configuration Management ● The hook_install()/hook_update_N() function ● The Features module ● Storing configuration variables in settings.php
  • 9. Drupal 8's Take on Configuration Management
  • 11. Learning the difference between active and staging directories #services.yml (file name) services: # Override configuration storage. config.storage: class: DrupalCoreConfigCachedStorage arguments: ['@config.storage.active', '@cache.config'] config.storage.active: # Use file storage for active configuration. alias: config.storage.file
  • 12. The Configuration Management API Drupal 7, system.admin.inc: <?php // The status message depends on whether an admin // theme is currently in use: a value of 0 means the admin // theme is set to be the default theme. $admin_theme = variable_get('admin_theme', 0); ... // Set the default theme. variable_set('theme_default', $theme); ?> Drupal 8: <?php // The status message depends on whether an admin theme // is currently in use: a value of 0 means the admin theme is // set to be the default theme. $admin_theme = Drupal::config('system.theme')->get('admin'); ... // Set the default theme. Drupal::configFactory() ->getEditable('system.theme') ->set('default', $theme) ->save(); ?>
  • 13. Best practices <?php Drupal::configFactory() ->getEditable('system.theme') ->set('admin', 'seven') ->save(); Drupal::configFactory() ->getEditable('system.theme') ->set('default', 'bartik') ->save(); ?> <?php // Load the editable configuration object. $config = Drupal::configFactory ->getEditable('system.theme'); // Set value of first configuration item. $config->set('admin', 'seven'); // Set another value. $config->set('default', 'bartik'); // Save changes back to configuration storage. $config->save(); ?>
  • 14. Overriding the configuration #services.yml cm_example.config_factory_override: class: Drupalcm_exampleConfigExampleConfigFactoryOverride arguments: ['@config.storage', '@event_dispatcher', '@config.typed'] tags: - { name: config.factory.override, priority: 10 } /** * Provides custom overrides for the configuration factory. */ class ExampleConfigFactoryOverride implements ConfigFactoryOverrideInterface { public function loadOverrides($names) { $overrides = array(); if (in_array('system.site', $names)) { $overrides['system.site'] = ['name' => 'Customized site name']; } return $overrides; } ….
  • 15. Useful Tools and Getting Help ● https://drupal.org/developing/api/8/configuration ● https://drupal.org/documentation/administer/config ● https://drupal.org/project/config_inspector ● https://www.drupal.org/project/config_devel ● https://github.com/drush-ops/drush