Lorsque j'exécute drush cim -y sur mon instance de transfert de mon site, j'obtiens l'erreur suivante:
Drupal\Core\Config\ConfigImporterException: des erreurs sont survenues lors de la validation de la synchronisation de la configuration. dans Drupal\Core\Config\ConfigImporter-> validate () (ligne 728 de /var/www/xeno/docroot/core/lib/Drupal/Core/Config/ConfigImporter.php).
L'importation a échoué pour les raisons suivantes: L'UUID du site dans le stockage source ne correspond pas au stockage cible. Il existe des entités de type Paragraphe et de type Paragraphe Image. Ces entités doivent être supprimées avant l'importation.
C'est ce que j'ai fait:
Copié la base de données de la mise en scène et extrait le dernier code
Ran drush cex -y
Configuration validée
Je suis allé à la mise en scène et à extraire le dernier code
Ran drush cim -y
et obtenez l'erreur indiquée ci-dessus
Quand je lance drush cget system.site uuid
sur le local et la mise en scène, j'obtiens le même uuid donc je ne sais pas pourquoi j'obtiens cette erreur.
Comment puis-je corriger l'erreur?
En fait, j'utilisais SFTP deploy et il n'avait pas le fichier system.site.yml
sur mon site de transfert. Je viens de redéployer tous les fichiers et le problème a disparu.
Vous pouvez résoudre ce problème en en changeant votre UUID de site local à l'aide de drush .
J'ai également dû exécuter un mélange de drush entity-updates -y
et l'installation de modules spécifiques avec drush en <module_name> -y
avant que les configurations ne soient importées dans une nouvelle base de données.
Mise à jour : vous ne devez pas utiliser drush entity-updates -y
plus. Voir https://www.drupal.org/node/3034742
Traditionnellement, vous utiliseriez les éléments suivants avant d'importer la configuration:
drush cset system.site uuid "6ba9bxxx-xxxx-438x-9c8x-e5x7x3d0x347"
Ou avec la console drupal:
$ drupal config:override
Enter configuration name []:
> system.site
Enter the configuration key [uuid]:
> uuid
Enter the configuration value:
> 6ba9bxxx-xxxx-438x-9c8x-e5x7x3d0x347
Pour les gens qui en ont assez de recommencer. J'ai finalement trouvé une solution pour le faire automatiquement. Vous devriez ajouter une pré-commande pour config: importez avec drush pour définir l'uuid. Lisez tout à ce sujet ici: https://stefvanlooveren.me/blog/fixing-systemsite-uuid-config-import-problem-drupal-8