BASICS TRAINING
Configuration Management September 23rd, 2020 Presented by John E. Picozzi
1 // Configuration Management Basics Training
Slide 2
John E. Picozzi Account Manager 401-228-7660 [email protected] oomph.is/jpicozzi www.oomphinc.com
Drupal Providence
Slide 3
WHAT IS CONFIGURATION?
In Drupal, configuration is the collection of admin settings that determine how the site functions, as opposed to the content of the site. https://www.drupal.org/docs/8/configuration-management
3 // Configuration Management Basics Training
Slide 4
What is Configuration?
4 // Configuration Management Basics Training
Slide 5
CONFIGURATION VS. CONTENT
Configuration
Content
Content types
Nodes
Taxonomy vocabulary
Taxonomy terms
Menus
Menu links
Blocks
Block content
Media types
Media
5 // Configuration Management Basics Training
Slide 6
PANTHEON WORKFLOW
Code Moves Up, Content Moves Down DEV
https://pantheon.io/docs/pantheon-workflow/#code-moves-up-content-moves-down 6 // Configuration Management Basics Training
TEST
LIVE
Slide 7
OTHER TYPES OF CONFIGURATION
Fields (for entities) - Views - Display modes (for entities) - Image styles - Language settings - System settings - User roles - Module settings
7 // Configuration Management Basics Training
Slide 8
Where is Configuration Stored?
8 // Configuration Management Basics Training
Slide 9
CONFIGURATION
Configuration Storage: Database ●
Active configuration
●
Stored in a relational database
●
Changes applied immediately
●
Benefits: ○
Performance
○
Security
9 // Configuration Management Basics Training
Slide 10
CONFIGURATION
Configuration Storage: Filesystem ●
Staged configuration
●
Stored on the filesystem as YAML files
●
Changes applied by export or import
●
Benefits: ○
Portability
○
Security
10 // Configuration Management Basics Training
Slide 11
Configuration Manager
11 // Configuration Management Basics Training
Slide 12
CONFIGURATION MANAGER
Configuration Manager ●
Core module
●
Import and export a single set of configuration to the filesystem
●
○
User Interface
○
Drush
Install configuration from modules, profiles and themes ○
Required config
○
Optional config
12 // Configuration Management Basics Training
Slide 13
View Differences
13 // Configuration Management Basics Training
Slide 14
CONFIGURATION MANAGER
Configuration Manager: Workflow The Configuration Management module offers a linear workflow where each environment shares the same set of configuration.
LOCAL
14 // Configuration Management Basics Training
DEV
STAGE
PROD
Slide 15
Configuration Split
15 // Configuration Management Basics Training
Slide 16
CONFIGURATION SPLIT
Configuration Split ●
Contributed module
●
Import and export multiple sets (splits) of configuration to the filesystem ○
User Interface
○
Drush
●
Enable/disable modules or themes for different environments
●
Store different configuration values for different environments ○
Complete Split / Blacklist
○
Conditional Split / Graylist
16 // Configuration Management Basics Training
Slide 17
Complete Split
17 // Configuration Management Basics Training
Slide 18
Conditional Split
18 // Configuration Management Basics Training
Slide 19
CONFIGURATION SPLIT
Configuration Split: Environment Workflow Creating configuration splits by environment allows developers to group sets of configuration that differ per environment (e.g. dev, test, prod).
LOCAL
19 // Configuration Management Basics Training
DEV
STAGE
PROD
Slide 20
CONFIGURATION SPLIT
Configuration Split: Feature Workflow Creating configuration splits by features allows developers to turn individual features (e.g. modules) on and off no matter the context the site is running in.
DEVEL
20 // Configuration Management Basics Training
FASTLY
SOLR
REDIS
Slide 21
COMPARISON OF CONFIG DIRECTORIES
Environment Splits
21 // Configuration Management Basics Training
Feature Splits
Slide 22
COMPARISON OF SETTINGS FILES
Environment Splits
Feature Splits
Note: Each config split is turned OFF by default, enabling splits are cleaner in settings.php 22 // Configuration Management Basics Training
Slide 23
Configuration Read-only
23 // Configuration Management Basics Training
Slide 24
CONFIGURATION READ-ONLY
Configuration Read-only ●
Contributed module
●
Prevents administrators from editing active configuration through the User Interface
●
Module can be enabled per environment with Configuration Split
●
Warning: Have a solid continuous integration pipeline and testing procedures in place before enabling in a production environment.
24 // Configuration Management Basics Training
Slide 25
Config Ignore
25 // Configuration Management Basics Training
Slide 26
CONFIG IGNORE
Config Ignore ●
Contributed module
●
Allows for defined config to be ignored by import and export
●
Module can be enabled per environment with Configuration Split
●
Compatibility with Config Read-only: You can use the Config Ignore Read-only module to automatically whitelist configuration forms that are ignored.
26 // Configuration Management Basics Training
Slide 27
If you have any questions feel free to contact us.
/in/johnpicozzi @johnpicozzi
John E. Picozzi Account Manager 401-228-7660 [email protected] oomph.is/jpicozzi www.oomphinc.com
johnpicozzi