Introducing Drupal 8 Configuration Management

 

BADCamp 2013     matthewtift.com

Matthew Tift (mtift)

Drupal 8 configuration system co-maintainter

Drupal core contributor since 2010

Twin Cities Drupal Camp organizer

Lead Drupal Developer at Wisconsin Public Radio

Today

Define config

Why you care

How to use it

Configuration:

What is it?

Site Builder

vs

Site Editor

Configuration:

Types of Things

Configuration:

Views

Content Types

Image Styles

Forms

Settings

User Roles

Content:

Article

Basic Page

Menu

User

Taxonomy

config content
Credit: Gábor Hojtsy

Simple Configuration

vs

Configuration Entities

Configuration:

Written to files

... and the database

Drupal 7: Configuration in database

yml files

How do you feel about SLQ queries?

crazy head

Drupal 8: Configuration in .yml files


              name: 'Site Install'
              mail: admin@example.com
              slogan: ''
              page:
                403: ''
                404: ''
              front: node
              admin_compact_mode: '0'
              weight_select_max: '100'
              langcode: en
          

How about files?

I love files

Lots of .yml files

yml files

sites/default/files/config_HASH

(e.g. sites/default/files/config_yfDtGgTrGj8My9xzoqmOUUp1Up1Lj4w86L3v9WvUDKYi)

Configuration Manager module

configuration manager module

Configuration:

What is it
good for?

Absolutely Nothing

Good, you are paying attention

Benefit:

Managed in version control

Benefit:

Eliminated 50 database tables


actions block block_custom block_node_type block_role date_format_locale date_format_type date_formats field_config field_config_instance field_data_body field_data_comment_body field_data_field_image field_data_field_tags field_revision_body field_revision_comment_body field_revision_field_image field_revision_field_tags filter filter_format image_effects image_styles role role_permission users_data user_roles variables

Benefit:

Reduced need for Features, Strongarm, Context

Benefit:

Translatable

Benefit:

API for Developers

Configuration:

How do I use it?

Configuration Management Section

config management

Synchronize Changes

synchronize changes

View Differences

yml files

CMI !=

Features module

Common Questions

Can I use the private files directory?

Can I do partial imports?

How do I setup version control?

Why use .yml files and not another format?

Configuration Management:

How You Can Help

drupal8cmi.org

IRC: #drupal-cmi

Matthew Tift

Drupal.org: mtift

Web: matthewtift.com

Twitter: @matthewtift