Skip to research

Importer une simple configuration avec Drush dans Drupal 8

Image
Illustration for drush cim
Temps de lecture
Environ 1 minutes
Étiquettes

Propos

Durant le développement, il arrive que nous modifions certaines configurations du site, voici comment, avec Drush, il est possible de migrer ces configurations vers le site en production.

 

Pré-requis

- un site web Drupal 8
- Drush de disponible sur son serveur de production
 

Les fichiers yml

D'abord, il nous faut un fichier ou plusieurs, de configuration en .yml.
Voici 3 fichiers de configuration yml, qui vont ajouter 3 nouveaux rôles à notre site drupal 8.


Attention, dans le cas de figure suivant, mon site dispose de deux customs éditeurs de texte préalablement créés, algorithme et embed, dont j'accorde l'accès à deux des trois nouveaux rôles suivants :

/user.role.friends.yml

langcode: fr
status: true
dependencies: {  }
id: friends
label: Friends
weight: -6
is_admin: null
permissions:
  - 'use text format algorithme'
  - 'use text format basic_html'
  - 'use text format embed'

/user.role.press.yml

langcode: fr
status: true
dependencies: {  }
id: press
label: press
weight: -8
is_admin: null
permissions:
  - 'use text format basic_html'

/user.role.friends.yml

langcode: fr
status: true
dependencies: {  }
id: runner
label: runner
weight: -7
is_admin: null
permissions:
  - 'use text format algorithme'
  - 'use text format basic_html'
  - 'use text format embed'

 

La procédure

J'ai créé un dossier confImport à la racine de mon site rdc.mm.
Dans ce dossier, j'ai des dossiers, chacun, correspondant à sa thématique.
Les fichiers rôles, dans le dossier rôles, les fichiers storage dans le dossier storage, etc, ce qui me permettra d'importer plusieurs fichiers en même temps et par thématique.


Enfin, je me place dans un de ces dossiers, pour cette action le dossier rôles, puis je lance la commande suivante :

drush cim --partial --source=/rdc.mm/confImport/3_role

 

Drush cim

Drush cim, pour drush config-import, --partial pour indiquer que nous allons altérer quelques configurations et non toutes, puis --source= pour indiquer ou se trouve les fichiers a importer, ici, dans le dossier /www.rdc.mm/confImport/3_role
 

Le système vous demande de confirmer avec un y,  puis vous indique les actions exécutées, par un ok si l'action a réussi ou par un error dans le cas d'erreur, bien sur ;).

studio@mm /rdc.mm/confImport/3_role> drush cim --partial --source=/www.rdc.mm/confImport/3_role
 Collection  Config             Operation
             user.role.friends  create
             user.role.press    create
             user.role.runner   create
Import the listed configuration changes? (y/n): y
Synchronisation de la configuration : create user.role.friends.      [ok]
Synchronisation de la configuration : create user.role.press.        [ok]
Synchronisation de la configuration : create user.role.runner.       [ok]
Finalisation de la synchronisation de la configuration.              [ok]
The configuration was imported successfully.                         [success]