0

We have D8 site where we use Configuration Management to export and deploy to multiple environments. We recently created a new content type, Blogs where we added a few fields (field_url, field_country). When we export this in our local development environment it all exports to yml files.

When we push these configurations to our Dev and Test environment we are seeing that they are out of sync even after running drush @env cim. Doing further analysis we found that the UUID is different and causing the issue.

However even if we were to export the configuration from Dev environment into our local ones, we still see that the UUID is different.

The settings.php already contains $config_directories['sync'] = 'path/to/config-folder';

How can we get the UUIDs to be in sync? We don't have this issue with other content types nor fields.

6
  • Which version of drupal do you use? I thought uuid was considered in config files (it is present) but maybe it's only since a certain version of the core.
    – Claire D
    Apr 19, 2018 at 20:34
  • @ClaireD I tagged the question with 8 since we use Drupal8 Apr 19, 2018 at 22:21
  • Yes, I understand, but which version of Drupal 8? Many change are added between minor versions. :-)
    – Claire D
    Apr 20, 2018 at 16:26
  • @ClaireD Drupal 8.5.1 Apr 20, 2018 at 19:14
  • What UUID? The site's UUID? The UUID of one config object?
    – leymannx
    Nov 21, 2018 at 18:23

1 Answer 1

2

The right way to do it is to create a config_sync folder, you can set it like this in the settings.php file.

$config_directories['sync'] = 'path/to/config-folder';

Then you can run drush cex to export current configuration, and run drush cim to import. I am doing this on all my drupal sites and have never ran into any issues.

You shall commit the config files if you are using git so you can import them on production.

UPDATE: As it is described on drupal.org the full export, on the config page is only to use if you move from one copy of a site to another.

Or the full site configuration can also be dumped as yml files to a tar.gz file. This only works if you're moving configuration between two copies of the same site (e.g. development and production) and for that reason the sites UUIDs must match.

Try to use the drush cex command instead.

2
  • maybe i should've added that information but we are already doing that with the settings.php. We run Configuration Export from the admin/config/development/configuration/full/export page through the UI. Basically everything you have highlighted is what we do already. Apr 19, 2018 at 22:24
  • running the drush cex command to export the active configurations and importing using drush cim did the trick. Apr 23, 2018 at 17:21

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.