La mise à jour WooCommerce du vendredi soir (ou comment j'ai appris à aimer WP-CLI)
Contents
Petite histoire, parce que je l'ai racontée trois fois cette semaine et que ça ira plus vite comme ça.
Vendredi, 18h40. Une cliente boulangerie à Nantes m'appelle : "le site n'affiche plus rien quand on veut payer". Les commandes du samedi matin (le gros jour) passent par là. J'ai hérité du site il y a deux mois, et évidemment les mises à jour automatiques étaient activées pour tout. WooCommerce s'était mis à jour tout seul, et une vieille passerelle de paiement n'était plus compatible. Page blanche au checkout, erreur fatale.
Ce que j'ai fait, dans l'ordre, en SSH depuis la table de la cuisine :
# voir ce qui a bougé
wp plugin list --fields=name,status,version,update_version
# lire l'erreur (WP_DEBUG_LOG était déjà à true, merci moi d'il y a deux mois)
tail -n 50 wp-content/debug.log
# sauvegarde avant de toucher à quoi que ce soit
wp db export avant-rollback-$(date +%F).sql
# revenir à la version d'avant
wp plugin install woocommerce --version=9.8.5 --force
# et plus jamais de mise à jour auto sur ces deux-là
wp plugin auto-updates disable woocommerce
wp plugin auto-updates disable passerelle-paiement-ancienne
19h05, le checkout remarche. J'ai passé une vraie commande de test avec ma carte (une baguette, 1,20 €). Tout est bon.
Ce qui a changé depuis
- Plus de mises à jour automatiques pour WooCommerce et les plugins de paiement, sur tous mes clients e-commerce.
- Un site de staging pour chacun. Copie de la base, puis
wp search-replace 'https://boulangerie.fr' 'https://staging.boulangerie.fr' --skip-columns=guid. - Les mises à jour, c'est le mardi matin, d'abord en staging, une commande test en mode test Stripe, puis la prod.
- Jamais le vendredi. Jamais.
J'ai facturé deux heures d'intervention d'urgence. La cliente a payé, plus une boîte de croissants. Je ne sais pas comment déclarer les croissants à l'URSSAF, mais ils étaient excellents.
Get the best of #php_still_pays weekly
One email each Monday with the most useful posts. No spam; unsubscribe in one click.
Comments
Sign in to join the conversation.
Sign in to comment