Mise à jour Drupal et modules

Une mise à jour du Drupal est disponible (passage de 7.80 à 7.82) ainsi que de certains modules :
Chaos Tool Suite (ctools) 7.x-1.15 7.x-1.19 (Notes de version)
Date 7.x-2.10 7.x-2.11 (Notes de version)
Features 7.x-2.11 7.x-2.13 (Notes de version)
Form Builder 7.x-2.0-alpha7 7.x-2.0-alpha8 (Notes de version)
Polling 7.x-1.0 7.x-1.1 (Notes de version)
Token 7.x-1.7 7.x-1.8 (Notes de version)
Webform 7.x-4.23 7.x-4.24 (Notes de version)
Webform Confirm Email Address 7.x-2.15 7.x-2.18 (Notes de version)
Webform Tokens 7.x-1.8 7.x-1.9 (Notes de version)
Wysiwyg 7.x-2.6 7.x-2.7 (Notes de version)

Le processus de mis à jour requiert un accès FTP, ce qui n’est pas des plus simples. De plus, la méthode de mise à jour manuelle documentée par Drupal n’est pas des plus aisée (effacer l’ancien module, remplacer par le nouveau).
Le passage par le module Drush semble simplifier les choses (mais nécessite que Drupal soit installé via Composer, ce qui semble pas être le cas ici).

De même la mise à jour de Drupal est possible de multiples manières.
Quelles méthodes conseillez-vous ?

Bref, comment conseilleriez-vous la procédure de mise à jour pour maintenir Yakforms ?

Je pense que pour compléter la foc d’installation de Yakforms, il faudrait donc rajouter les étapes recommandées qui permettent de le maintenir à jour.

Merci pour votre aide et pour le taf déjà accompli.

Je fais quelques tests et vous fais des retours ici.

1 « J'aime »

Salu @webafrancois,
Merci du signalement.
La mise à jour via Drush marche bien. Il vaut mieux utiliser cette méthode. Pour installer drush, les instructions sont ici, il me semble.

C’est un outil très utile pour maintenir (via drush up) et ajouter des modules (via drush dl / drush en) sur ton site.

Bonjour,

Je tombe sur ce thread. Effectivement, ça a l’air bien plus simple avec « drush ». Par contre, je viens d’avoir une erreur de mise à jour avec yakforms et « webform » lors de la mise à jour :

The following updates returned messages
webform_confirm_email module
Update #7211

    Failed: PDOException: SQLSTATE[23502]: Not null violation: 7 ERROR: null value in column "confirmed" violates not-null constraint DETAIL: Failing row contains (1, 1, 1, 1, 0, 0, 1646756155, 1646756155, 1646756155, IP.IP.IP.IP, null).: UPDATE webform_submissions SET confirmed=:db_update_placeholder_0 WHERE (confirmed = :db_condition_placeholder_0) ; Array ( [target] => default [return] => 2 [already_prepared] => 1 ) in webform_confirm_email_update_7211() (line 172 of /var/www/html/yakforms/profiles/yakforms_profile/modules/webform_confirm_email/webform_confirm_email.install)

La vraie IP a été remplacée par IP.IP.IP.IP dans le message ci-dessus.

Dans l’interface Web, cette erreur était fatale et la mise à jour s’arrêtait, par drush ça passe avec une erreur.

En revanche, la page « status report » met bien qu’il reste la bdd à mettre à jour, et ça échoue au même endroit…

Merci,

EDIT : ok, j’ai supprimé la contrainte NOT NULL du champs confirmed sur la table webform_submissions et ça passe.

1 « J'aime »

@remyd1 : j’ai rencontré le même problème et la même erreur lors d’une tentation de mise à jour de https://formulaire.facil.services

Je vais essayer de supprimer la même contrainte et revenir ici pour rapporter.

Question : Si nous sommes plusieurs à rencontrer ce problème de mise à jour, ne vaudrait-il pas mieux ouvrir un ticket pour faire corriger le problème en amont (dans le schéma yakforms_profile/modules/webform_confirm_email/webform_confirm_email.install) ?

Salut et merci pour les retours

Pour les prochains qui chercherai des commandes à passer.
Je suppose que vous avez installé la base de donnée sur PostgreSQL, sur un système Debian et que vous avez accès au terminal de commande (CLI)

  1. Connectez vous à la machine et ouvrez le CLI ou SSH ;
  2. Utilisez le compte Debian « postgres » avec la commande su - postgres
  3. Connectez vous sur la base de donnée avec la commande psql <votre_base>
  4. Passez la commande SQL suivante alter table webform_submissions alter column confirmed drop not null;
  5. Sortez de la base avec la commande exit
  6. Fermez la session de l’utilisateur postgres avec la commande exit

Vous pouvez reprendre une activité normale ;-p