We are developing a single Drupal 8 site with a set of different features (content types, etc). The CMI approach is great for sharing config through git and importing/exporting on local, dev, stage, and prod environments.
But... I also really like the organizational aspects of the Features module. It is appealing to have config grouped in meaningful buckets rather than a single global sync folder. Individual modules also provide a nice place to hang default content and hook_update_N
functions.
I've read that these two can play nicely together, but I'm having trouble determining the practical logistics of it all. When I develop a feature, I usually do a drush cex
and commit the changes -- so with Features, do I also export a feature and commit that? Now the config lives in two places -- should I be concerned? Will it cause conflicts?
Am I just complicating things by trying to use both? If forced to choose, I will use only CMI because I want to be sure to control all config (not just the bits I've grouped into Features) -- and we want consistent and predictable deployments between local, dev, stage, and prod.