Skip to main content
logo Informaid

INFORMAID

Main navigation
  • Accueil
    • Développement Drupal
    • Partenaires
    • Réalisations Drupal
  • Développement de site web
    • Conception et développement de votre site web
    • Maintenance et assistance de votre site Drupal
    • Pourquoi choisir Drupal pour votre site d'entreprise
  • Blog Drupal et web
    • Qu'est ce qu'un CMS ?
    • Les mises à jour dans Drupal
    • Drupal 7, fin du support

Les mises à jour dans Drupal

Culture générale sur les mises à jour Drupal

En quoi consistent les mises à jour dans Drupal ? Nous parlerons un peu technique mais pas trop.

Les différents types de mises à jour (releases)

Les releases Drupal, pour le coeur (core), les modules et thèmes de contribution reçoivent différents types de mises à jour:

  • Les mises à jours de sécurité: à effectuer en priorité,
  • Les mises à jours fonctionnelles, qui permettent de faire évoluer le module,
  • Les mises à jour techniques: souvent non visibles, ce sont les correctifs reçus dans les listes des anomalies ("issues") dans drupal.org: https://www.drupal.org/project/issues/
Mise à jour de Drupal

Mise à jour du coeur de Drupal

Depuis Drupal 8, le cœur de Drupal est basé sur Symfony. Les modules sont parfois dépendants de librairies stockées dans Vendor (PHP) ou Libraries(Javascript). 

Les process se sont professionnalisés. Les téléchargements ne sont plus manuels. On utilise l’outil Composer pour installer les modules et dépendances. La documentation Drupal aide à la mise à jour par version ou globale. Chaque release (version mineure) suggère la ligne de commande à exécuter. Liste des releases Drupal: https://www.drupal.org/project/drupal/releases .

L’exécution de la commande via Composer importe automatiquement le cœur (core) de Drupal, contenant les modules du cœur (core), les librairies JS (libraries) et PHP (vendor) associées. Les unes sont stockées dans le répertoire libraries, les autres dans le répertoire vendor. 

Suite à la mise à jour du coeur de Drupal, il est nécessaire d’effectuer une mise à jour de la base de données et de vider les caches. 

Cette seconde étape est réalisée par les commandes drush: 

  • drush updb 
  • drush cr 

Le cœur reçoit une mise à jour de sécurité une fois par mois environs.

Mise à jour de Drupal

Mise à jour des modules de contribution

Tout comme pour importer le cœur de Drupal, chaque module de contribution est importé via la commande composer update drupal/<module>. Lorsque cette commande ne met pas à jour le module pour une question de numérotation de version, on utilise la commande composer require drupal/<module> afin d’importer la dernière version compatible avec l’installation en cours.

Il peut arriver que les versions de modules soient incompatibles et nécessitent un temps d’investigation autour des librairies en place mais globalement, la mise à jour côté Drupal est fluide.

Du point de vue fonctionnel, il arrive que des modules de contribution évoluent. Ces cas nécessitent une investigation et parfois de la reconfiguration, voire l'adaptation des modules personnalisés associés. 

Après mise à jour des modules la structure de la base de données peut être mise à jour et les caches: 

  • Drush updb 
  • Drush cr

Note importante: les mises à jour sont d'abord éprouvées en environnement de développement,à distinguer des environnements de tests et de production.

 

Mise à jour de Drupal

Mise à jour des entités

Il arrive plus rarement que le rapport de statut de Drupal vous informe d'une mise à jour d'entité. Dans ce cas, on doit activer temporairement le module Devel qui fournit les outils. Cette opération est à effectuer dans tous les environnements.

Dans l'environnement de développement, ouvrir le terminal de commandes et se positionner dans le répertoire du site contenant les fichiers composer.json et composer.lock.

Exécutuer les commandes suivantes:

  • Import du module Devel:
    • composer require drupal/devel
  • Installation du module dans Drupal
    • drush en devel
  • Exécution de la commande de mise à jour des entités:
    • drush entup
  • Désinstallation du module Devel:
    • drush pmu devel
  • Suppression du package Devel:
    • composer remove drupal/devel
Mise à jour de Drupal

Tests fonctionnels

Les fonctionnalités de votre site ne doivent pas avoir changé entre 2 releases du coeur de Drupal.

Il est nécessaire de contrôler les éventuels changements de configuration des modules et le bon fonctionnement du site en environnement de développement et/ou de tests avant le déploiement par des tests de non régression. Le mieux est d'avoir automatisé les tests de non régression afin de pouvoir les exécuter avant chaque déploiement. 

Dans le cas où les tests automatisés n'ont pas été développés, il faut globalement : 

  • naviguer dans le site, en desktop et en responsive,
  • ajouter, modifier les contenus, 
  • soumettre les formulaires.

Pendant ces tests, il faut activer les journaux afin d’y capturer tout message d’erreur PHP ou provenant d’un module.

Sauvegarde projet Drupal

L'importance de la sauvegarde

Avant tout déploiement, la sauvegarde du projet en production doit être réalisée: sauvegarde de l'arborescence et de la base de données.

Cette sauvegarde doit pouvoir être restaurée en cas de problème après déploiement.

Drupal: déploiement du site web vers l'hébergeur

Le déploiement de la mise à jour

Le déploiement consiste à transférer la mise à jour sur les serveurs en production (hébergement).

Il peut être réalisé par des outils de déploiements automatisés ou manuellement via les protocoles FTP/SSH de transferts de fichiers.

Sujets annexes

Conception et développement de votre site web

Maintenance et assistance de votre site Drupal

Get in touch

Transmettez votre cachier des charges, descriptif de votre demande.

One file only. 2 MB limit. Allowed types: rtf, pdf, doc, docx, odt, ppt, pptx, odp, xls, xlsx, ods. 2 MB limit per form.
CAPTCHA
7 + 8 =
Solve this simple math problem and enter the result. E.g. for 1+3, enter 4.
Pour montrer que vous n'êtes pas un robot, merci de répondre à la question ci-dessous:
Fabienne RONDEAU, développeur Drupal Nantes

Fabienne RONDEAU

Développeur Drupal

(33) 6 33 44 07 51
  • INFORMAID RONDEAU's DRUPAL profile
  • Fabienne RONDEAU's linkedin profile
  • INFORMAID Facebook page
  • INFORMAID Twitter page
  • INFORMAID phone number

Footer menu

  • Contact
  • Plan du site
  • Mentions légales
  • Politique de confidentialité
Powered by Drupal{{ 'Drupal logo'|trans }}