30
Page 1 | Configuration Management: A True Life Story Configuration Management A True Life Story

Configuration Management - DrupalCon...Page 2 | Configuration Management: A True Life Story John E. Picozzi Senior Drupal Architect 401-228-7660 72 Clifford Street, Providence, RI

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Configuration Management - DrupalCon...Page 2 | Configuration Management: A True Life Story John E. Picozzi Senior Drupal Architect 401-228-7660 72 Clifford Street, Providence, RI

Page 1 | Configuration Management: A True Life Story

Configuration Management A True Life Story

Page 2: Configuration Management - DrupalCon...Page 2 | Configuration Management: A True Life Story John E. Picozzi Senior Drupal Architect 401-228-7660 72 Clifford Street, Providence, RI

Page 2 | Configuration Management: A True Life Story

John E. PicozziSenior Drupal Architect

401-228-766072 Clifford Street, Providence, RI 02903

oomphinc.comoomph.is/[email protected]

Drupal Providence

Page 3: Configuration Management - DrupalCon...Page 2 | Configuration Management: A True Life Story John E. Picozzi Senior Drupal Architect 401-228-7660 72 Clifford Street, Providence, RI

Page 3 | Configuration Management: A True Life Story

Nathan DentzauSenior Developer

chromatichq.comchromatichq.com/users/[email protected]

Drupal Providence

Page 4: Configuration Management - DrupalCon...Page 2 | Configuration Management: A True Life Story John E. Picozzi Senior Drupal Architect 401-228-7660 72 Clifford Street, Providence, RI

Page 4 | Configuration Management: A True Life Story

What is configuration?

September 1, 2016

Page 5: Configuration Management - DrupalCon...Page 2 | Configuration Management: A True Life Story John E. Picozzi Senior Drupal Architect 401-228-7660 72 Clifford Street, Providence, RI

Page 5 | Configuration Management: A True Life Story

”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

Page 6: Configuration Management - DrupalCon...Page 2 | Configuration Management: A True Life Story John E. Picozzi Senior Drupal Architect 401-228-7660 72 Clifford Street, Providence, RI

Page 6 | Configuration Management: A True Life Story

Configuration vs. Content

Configuration Content

Content types Nodes

Taxonomy vocabulary Taxonomy terms

Menus Menu links

Blocks Block content

Media types Media

Page 7: Configuration Management - DrupalCon...Page 2 | Configuration Management: A True Life Story John E. Picozzi Senior Drupal Architect 401-228-7660 72 Clifford Street, Providence, RI

Page 7 | Configuration Management: A True Life Story

Pantheon Workflow

https://pantheon.io/docs/pantheon-workflow/#code-moves-up-content-moves-down

Page 8: Configuration Management - DrupalCon...Page 2 | Configuration Management: A True Life Story John E. Picozzi Senior Drupal Architect 401-228-7660 72 Clifford Street, Providence, RI

Page 8 | Configuration Management: A True Life Story

Other types of configuration

● Fields (for entities)

● Views

● Display modes (for entities)

● Image styles

● Language settings

● System settings

● User roles

● Module settings

Page 9: Configuration Management - DrupalCon...Page 2 | Configuration Management: A True Life Story John E. Picozzi Senior Drupal Architect 401-228-7660 72 Clifford Street, Providence, RI

Page 9 | Configuration Management: A True Life Story

Where is configuration stored?

Page 10: Configuration Management - DrupalCon...Page 2 | Configuration Management: A True Life Story John E. Picozzi Senior Drupal Architect 401-228-7660 72 Clifford Street, Providence, RI

Page 10 | Configuration Management: A True Life Story

Configuration Storage: Database

● Active configuration

● Stored in a relational database

● Changes applied immediately

● Benefits:

○ Performance

○ Security

Page 11: Configuration Management - DrupalCon...Page 2 | Configuration Management: A True Life Story John E. Picozzi Senior Drupal Architect 401-228-7660 72 Clifford Street, Providence, RI

Page 11 | Configuration Management: A True Life Story

Configuration Storage: Filesystem

● Staged configuration

● Stored on the filesystem as YAML files

● Changes applied by export or import

● Benefits:

○ Portability

○ Security

Page 12: Configuration Management - DrupalCon...Page 2 | Configuration Management: A True Life Story John E. Picozzi Senior Drupal Architect 401-228-7660 72 Clifford Street, Providence, RI

Page 12 | Configuration Management: A True Life Story

Configuration Manager

September 1, 2016

Page 13: Configuration Management - DrupalCon...Page 2 | Configuration Management: A True Life Story John E. Picozzi Senior Drupal Architect 401-228-7660 72 Clifford Street, Providence, RI

Page 13 | Configuration Management: A True Life Story

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

Page 14: Configuration Management - DrupalCon...Page 2 | Configuration Management: A True Life Story John E. Picozzi Senior Drupal Architect 401-228-7660 72 Clifford Street, Providence, RI

Page 14 | Configuration Management: A True Life Story

View Differences

Page 15: Configuration Management - DrupalCon...Page 2 | Configuration Management: A True Life Story John E. Picozzi Senior Drupal Architect 401-228-7660 72 Clifford Street, Providence, RI

Page 15 | Configuration Management: A True Life Story

Configuration Manager: Workflow

The Configuration Management module offers a linear workflow where each environment shares the same set of configuration.

LOCAL PRODSTAGEDEVCONFIG SYNC

Page 16: Configuration Management - DrupalCon...Page 2 | Configuration Management: A True Life Story John E. Picozzi Senior Drupal Architect 401-228-7660 72 Clifford Street, Providence, RI

Page 16 | Configuration Management: A True Life Story

Configuration Split

September 1, 2016

Page 17: Configuration Management - DrupalCon...Page 2 | Configuration Management: A True Life Story John E. Picozzi Senior Drupal Architect 401-228-7660 72 Clifford Street, Providence, RI

Page 17 | Configuration Management: A True Life Story

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

Page 18: Configuration Management - DrupalCon...Page 2 | Configuration Management: A True Life Story John E. Picozzi Senior Drupal Architect 401-228-7660 72 Clifford Street, Providence, RI

Page 18 | Configuration Management: A True Life Story

Complete Split

Page 19: Configuration Management - DrupalCon...Page 2 | Configuration Management: A True Life Story John E. Picozzi Senior Drupal Architect 401-228-7660 72 Clifford Street, Providence, RI

Page 19 | Configuration Management: A True Life Story

Conditional Split

Page 20: Configuration Management - DrupalCon...Page 2 | Configuration Management: A True Life Story John E. Picozzi Senior Drupal Architect 401-228-7660 72 Clifford Street, Providence, RI

Page 20 | Configuration Management: A True Life Story

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 PRODSTAGEDEV

CONFIG SYNC

Page 21: Configuration Management - DrupalCon...Page 2 | Configuration Management: A True Life Story John E. Picozzi Senior Drupal Architect 401-228-7660 72 Clifford Street, Providence, RI

Page 21 | Configuration Management: A True Life Story

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 REDISSOLRFASTLY

CONFIG SYNC

Page 22: Configuration Management - DrupalCon...Page 2 | Configuration Management: A True Life Story John E. Picozzi Senior Drupal Architect 401-228-7660 72 Clifford Street, Providence, RI

Page 22 | Configuration Management: A True Life Story

Feature SplitsEnvironment Splits

Comparison of Config Directories

Page 23: Configuration Management - DrupalCon...Page 2 | Configuration Management: A True Life Story John E. Picozzi Senior Drupal Architect 401-228-7660 72 Clifford Street, Providence, RI

Page 23 | Configuration Management: A True Life Story

Feature SplitsEnvironment Splits

Comparison of Settings Files

Note: Each config split is turned OFF by default, enabling splits are cleaner in settings.php

Page 24: Configuration Management - DrupalCon...Page 2 | Configuration Management: A True Life Story John E. Picozzi Senior Drupal Architect 401-228-7660 72 Clifford Street, Providence, RI

Page 24 | Configuration Management: A True Life Story

Configuration Read-only

September 1, 2016

Page 25: Configuration Management - DrupalCon...Page 2 | Configuration Management: A True Life Story John E. Picozzi Senior Drupal Architect 401-228-7660 72 Clifford Street, Providence, RI

Page 25 | Configuration Management: A True Life Story

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.

Page 26: Configuration Management - DrupalCon...Page 2 | Configuration Management: A True Life Story John E. Picozzi Senior Drupal Architect 401-228-7660 72 Clifford Street, Providence, RI

Page 26 | Configuration Management: A True Life Story

Config Ignore

September 1, 2016

Page 27: Configuration Management - DrupalCon...Page 2 | Configuration Management: A True Life Story John E. Picozzi Senior Drupal Architect 401-228-7660 72 Clifford Street, Providence, RI

Page 27 | Configuration Management: A True Life Story

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 Readonly: You can use the Config Ignore Read-only module to automatically whitelist configuration forms that are ignored.

Page 28: Configuration Management - DrupalCon...Page 2 | Configuration Management: A True Life Story John E. Picozzi Senior Drupal Architect 401-228-7660 72 Clifford Street, Providence, RI

Thank You! Thank you for listening. If you have any questions feel free to contact us.

oomphinc.com@oomphinc

[email protected]

@johnpicozzi

/in/johnpicozzi

johnpicozzi

@nathandentzau

nathandenzau

nathandentzau

[email protected]@chromatichq

SAY HELLO TO OUR TEAM AT BOOTH 516!

Page 29: Configuration Management - DrupalCon...Page 2 | Configuration Management: A True Life Story John E. Picozzi Senior Drupal Architect 401-228-7660 72 Clifford Street, Providence, RI

Subtitle

Add speaker name here

Title slide

Join us forcontribution opportunities

Friday, April 12, 2019

9:00-18:00Room: 602

Mentored Contribution

First TimeContributor Workshop

GeneralContribution

#DrupalContributions

9:00-12:00Room: 606

9:00-18:00Room: 6A

Page 30: Configuration Management - DrupalCon...Page 2 | Configuration Management: A True Life Story John E. Picozzi Senior Drupal Architect 401-228-7660 72 Clifford Street, Providence, RI

Subtitle

Add speaker name here

Title slide

What did you think?

Locate this session at the DrupalCon Seattle website:

http://seattle2019.drupal.org/schedule

Take the Survey!

https://www.surveymonkey.com/r/DrupalConSeattle