Mise à jour automatique des plugins

Une nouvelle lame du Couteau Suisse permet de visualiser les plugins nécessitant une mise à jour, tout comme SPIP lui-même !

Présentation

Rendons à César ce qui est à César, voici un extrait de la présentation du Couteau Suisse pour sa lame « Mise à jour automatique » :

« Garde un oeil sur tous vos plugins. Cet outil vous permet de gérer facilement leurs mises à jour, récupérant notamment le numéro de révision contenu dans le fichier svn.revision et le comparant avec celui trouvé sur zone.spip.org. La liste proposée offre la possibilité de lancer le processus de mise à jour automatique de SPIP sur chacun des plugins préalablement installés dans le dossier plugins/auto/. »

Cette lame a été ajoutée au Couteau Suisse à partir de la révision 31378 (version 1.8.09.05) de ce dernier. Si vous n’avez pas cette lame dans votre Couteau Suisse, cela veut dire que votre version n’est pas à jour.

A partir de la version 1.8.32.00 du plugin et si vous avez le statut de webmestre, la version de SPIP lui-même est vérifiée. Comme il est toujours préférable de mettre à jour un code qui peut s’avérer défectueux ou présenter de graves failles de sécurité (par exemple : SPIP 2.1.8 corrige une importante faille de sécurité), n’hésitez pas ! Voici un exemple du message proposé :

Incompatibilité

Le Couteau-Suisse peut parfois (pour le moment) être incompatible avec certains plugins. Au mieux, certaines lames ne sont pas compatibles avec d’autres plugins. La lame "mise à jour automatique" n’est pas compatible avec le (ou les) plugins suivants (liste non exhaustive) :
-  SoyezCréateurs.

Précautions

Cet outil vous permet de gérer facilement la mise à jour de vos différents plugins, récupérant notamment le numéro de révision contenu dans le fichier svn.revision et le comparant avec celui trouvé sur zone.spip.org.

La liste offre la possibilité de lancer le processus de mise à jour automatique de SPIP sur chacun des plugins préalablement installés dans le dossier plugins/auto/. Les autres plugins se trouvant dans le dossier plugins/ sont simplement listés à titre d’information, aucun bouton radio n’apparaîtra de ce fait. Si la révision distante n’a pas pu être trouvée, alors tentez de procéder manuellement à la mise à jour du plugin.

Note : les paquets .zip n’étant pas reconstruits instantanément, il se peut que vous soyez obligé d’attendre un certain délai avant de pouvoir effectuer la totale mise à jour d’un plugin tout récemment modifié.

Activation

Pour activer cette lame, allez dans la page de configuration du Couteau Suisse en ayant cliquer sur "Configuration" de votre bandeau.

Cliquez sur "Administration" dans votre bloc "Outils inactifs" (En rouge) pour voir apparaître la liste des lames de cette catégorie où se trouve "Mise à jour automatique" :

Cliquez sur "Mise à jour automatique" pour voir son descriptif en bas de la page...

... et pouvoir l’activer :

Une fois cela fait, vous verrez apparaître la liste de vos plugins actifs (installés grâce au panneau de "Gestion des plugins") dans un 1er tableau et un 2e tableau pour les plugins inactifs :

Explications

Cette liste se présente sous forme de tableau contenant 3 colonnes :

  1. un bouton radio pour sélectionner un plugin à mettre éventuellement à jour
  2. le nom du plugin, son numéro de version, et en gras soit "Ce plugin semble à jour." soit "La révision XXXX est disponible" (XXXX est le numéro de révision du plugin)
  3. Le numéro de révision de votre plugin actif sur votre site et la date de cette révision

Vous remarquerez que le bouton radio sélectionné correspond au premier plugin de votre liste ayant une mise à jour disponible. Dans l’exemple présent, nous voyons le plugin "Notifications" sélectionné

Revenons sur la colonne principale de ce tableau.
Lorsque votre plugin est à jour, vous voyez la phrase "Ce plugin semble à jour". Dans cette simple phrase, vous avez 2 liens :

  1. le premier sur "plugin" qui pointe vers l’archive (zip) de votre plugin ;
  2. le deuxième sur "à jour", pointant vers le "changelog" de votre plugin vous permettant de voir les différentes révisions liées à ce plugin

Lorsque votre version de plugin n’est pas la plus récente, vous verrez une phrase du type "La révision XXXX est disponible". Ici aussi, vous avez 2 liens :

  1. Le numéro de révision pointe vers le "changelog" du plugin vous permettant de consulter la liste des révisions avant de mettre à jour (ou pas) votre plugin ;
  2. "disponible" pointe vers l’archive zippée du plugin.

Mise à jour d’un plugin

Venons au plus intéressant. Repérez un de vos plugins ayant une révision disponible. Cliquez sur le bouton à gauche du nom du plugin (s’il est le premier plugin de la liste, il sera déjà sélectionné).
En bas du tableau, vous verrez le bouton "Mettre à jour le plugin sélectionné". Cliquez-le.

Vous verrez une page similaire à celle-ci apparaître :

Cliquez sur "Suivant" en bas de page (hé oui, SPIP nous oblige ici à faire de la roulette de souris...). Puis une autre page vous invitant à "Continuez pour l’activer" en cliquant sur "Suivant" encore une fois. Faites-le.

Ces étapes terminées, vous êtes redirigé vers la page de la lame "Mise à jour automatique" du Couteau Suisse pour procéder à d’éventuelles nouvelles mises à jour.

Attention : la mise à jour d’un plugin est une opération délicate qui ne saurait être automatisée. L’œil du Webmestre est toujours requis en cas de besoin. Si une erreur survient, n’oubliez pas les bases de SPIP :

-  Vider le cache de SPIP
-  Supprimer les fichiers /tmp/charger_*.php
-  Supprimer le dossier /tmp/couteau-suisse

Informations techniques

Merci à Patrice Vanneufville pour les informations suivantes :

-  Le cache de la consultation des logs est créé pour 24h afin de ne pas surcharger le serveur de trac. Par exemple, pour trouver la version actuelle de CFG, le Couteau Suisse va consulter la page http://zone.spip.org/trac/spip-zone/log/_plugins_/cfg?format=changelog et repérer le premier chiffre de révision, puis le comparer à ce qu’il peut trouver dans le fichier svn.revision. La page de trac est ensuite mise en cache : tant que le fichier svn.revision n’a pas été modifié, tout ré-affichage de l’admin du Couteau Suisse ne provoquera pas d’accès distant pendant 24h, (ce qui accélère considérablement la rapidité d’affichage par rapport à la première fois).

-  pour court-circuiter le cache et refaire toutes les consultations sur trac, il suffit d’ajouter var_mode=calcul dans l’url. Par exemple : /ecrire/?exec=admin_couteau_suisse&cmd=descrip&outil=maj_auto&var_mode=calcul

-  le fait qu’un commit [1] (donc nouvelle version disponible immédiatement) n’est pas pris en compte tout de suite dans le paquet .zip est que le paquet doit être refait sur trac (il est refait, en temps normal, toutes les heures). Sans cela donc, la mise à jour du plugin ne pourra pas se faire.

Notes

[1Correction apportée au code d’un plugin sur le serveur SVN

Dernière modification de cette page le 30 août 2012

Discussion

35 discussions

  • 7

    Bonjour,

    Suite aux nombreuses mise-à-jour des différents plugins de ces dernières semaines, je constate qu’aujourd’hui, la lame mise à jour automatique ne trouve pas le serveur...

    Mini Calendrier (v2.4.1)
    La révision distante n’a pas pu être trouvée.

    Cela est indiqué pour tous les plugins...

    • Jean-Paul

      Même problème sur spip 2.1 et 3.1 depuis la dernière mise à jour
      La révision distante n’a pas pu être trouvée
      Solution ? merci
      JPH

    • J’ai trouvé la solution... Il suffit de modifier dans la lame \plugins\auto\couteau_suisse\outils\maj_auto_action_rapide.php à la ligne 351
      if(strncmp($url_origine, 'http://', 7)!==0) $url_origine='';
      par
      if(strncmp($url_origine, 'https://', 7)!==0) $url_origine='';

    • En effet, ça marche !
      Merci !
      Quelqu’un sait quand cette correction sera intégrée dans une mise à jour du plugin ?

    • Le mainteneur du plugin n’a plus l’air actif. Cependant comme c’était une modif simple, je l’ai envoyé sur la zone. Donc la prochaine version 1.9.13 devrait résoudre ce problème.

      Cela étant, c’est une fonctionnalité intégrée par défaut en SPIP 3.0 et ultérieur.

    • Ah oui ? Et c’est intégré où ? je suis en SPIP 3.1.6 et je suis toujours passé par le couteau suisse pour mettre à jour mes plugins. Il existe un autre moyen ?

    • Dans l’espace de gestion des plugins, tout simplement. Il faut juste déclarer le flux distant (une valeur par défaut est fourni), et ensuite dès qu’une mise à jour est disponible, il y un symbole double flèche et on clique dessus.

      On peut ensuite cocher les plugins à mettre à jour ou bien demander de tous les cocher, puis cliquer sur mettre à jour les plugins.

      (Cela marche uniquement avec les plugins installé dans auto).

      https://www.spip.net/fr_article3396.html

    • OK Merci beaucoup !

      La page que tu mets en lien à du être complétée depuis mon dernier passage. A l’époque je n’avais rien compris au fonctionnement des dépôts ;)

    Répondre à ce message

  • 1

    Bonjour,

    Après une mise à jour du Couteau suisse, pourquoi j’obtiens le message suivant, dans le tableau des Mises à jour automatiques, en face de chaque plugin présents dans le couteau suisse :

    La révision distante n’a pas pu être trouvée.

    Merci pour vos avis,

    Amicalement,

    Thierry

    • Bonjour Thierry,

      la réponse à ta question se trouve juste en dessous (voir question et réponse d’Eric en date du 9 mai 2017).

      Cordialement

    Répondre à ce message

  • 7

    J’ai fréquemment ce message qui s’affiche pour différents plugins...

    ’Le fichier « http://files.spip.org/spip-zone/boutonstexte-v2.zip » est introuvable !’

    • Bonjour,

      même problème pour moi depuis le passage à spip 3.1

      Théo

    • Je remarque que les plugins changent souvent de nom (de dossier). C’est une des raisons qui explique le message d’erreur. Peut-être faut-il mettre sur pied une normalisation ?...

    • Je ne comprends pas où tu vois ce changement, sur ton serveur ou sur le dépot ?
      Merci.

    • Bonjour, sur le dépôt... Par exemple, j’ai un plugin qui se nomme machin.zip et ensuite, il devient machin_v3.zip pour ensuite redevenir machin.zip...

    • Bonjour,

      ah oui effectivement c’est peut-être la source du problème. J’ai aussi noté que lorsque je supprime le dépot et que je le réenregistre, je peux faire une mise à jour automatique avant que le bug ne se reproduise.

      Pourrait-il sinon s’agir du poids des plugins ou du dépot trop important pour la mémoire allouée par le serveur ? Je suis chez 1&1 et j’ai moins de 100mo de mémoire.

      Théo

    • Le problème a changé ?... Est-ce à cause de la mise-à-jour vers spip 3.1.1 ??.... J’ai maintenant le message que le fichier n’a pas été trouvé sur le serveur (or, ici, le nom de fichier zip sur la zone de téléchargement est correctement orthographié). Une fois le fichier récupéré sur la zone et installé par ftp, le message retourné dans le tableau de la lame ’mise-à-jour automatique’ est : « La révision distante n’a pas pu être trouvée. »

       ???

    • Bonjour Eric,

      je suis resté à la 3.0 (mais bon j’ai l’écran de sécurité donc ça devrait pas poser de problème) et j’ai toujours la même erreur.

      Par contre je me suis aperçu que quand j’essaie la mise à jour automatique, ça plante, mais si je refais la même tentative juste après, la mise à jour à l’air de fonctionner. Peux-tu essayer chez toi ?

    Répondre à ce message

  • 1

    Attention, la maj v3.0.20 du plugin Facteur n’est pas renseignée pour la lame mise-à-jour automatique du plugin « Le Couteau Suisse »... Ce qui provoque une erreur avec le plugin Formidable pour l’envoi des formulaires...

    Fatal error : Call to undefined function facteur_mail_html2text() in /var/www/vhosts/monsite.truc/httpdocs/plugins/auto/formidable/traiter/email.php on line 114

    Je remonte l’info auprès du plugin facteur et de formidable.

    Merci

    • Spipmalion

      J’ai l’erreur, mes formulaires font erreur 500 maintenant
      Comment corriger ?

    Répondre à ce message

  • Bonjour, j’ai remarqué que le texte ’OLD’ s’ajoute maintenant en regard des différents plugins... Est-ce parce que j’ai activé l’option ’ajouter des plugins’ (spip 3.0.21) ?

    Répondre à ce message

  • 4

    Bonjour,

    J’ai désactivé mes plugins (sauf Sarka-SPIP 3.4.5, Z-core 2.4.3, Zen-Garden 2.6.2). Je n’ai donc que Le Couteau Suisse 1.9.7 activé avec les 3 précédents utiles pour mon squelette.

    Je n’ai qu’une lame activée : Découpe en pages et onglets.

    J’ai inséré un séparateur de page ou d’onglet (++++) entre les textes d’un même article. J’enregistre et je n’ai que « Page précédente 1 2 3 Page suivante » en tête et en pied de l’article. Les pages défilent lorsque je clique sur 1, 2, ou 3 etc.

    Mais lorsque je vais sur « Voir en ligne » ça ne fonctionne plus et sur « Voir le site » non plus… :(

    Quelqu’un aurait-il déjà rencontré ce problème ?

    • Comment ça ne fonctionne plus ? Ça ne découpe pas ?
      Si c’est bien ça la panne, il faut chercher le code du squelette en question et voir comment est traitée la balise #TEXTE...

    • Oups… dans quel fichier cette balise #TEXTE ?

      Mes paramètres (par défaut, d’origine) :

      Activer la balise #CS_DECOUPE : NON

      Votre choix :
      ✔︎ Edition des contenus
      ✔︎ Messages de Forum

    • Mais j’étais dans la Rubrique ! et pas dans un article… c’est pour ça que ça ne marchait pas :-(

      D’ailleurs les 4 ++++ ne m’ont pas servis. J’ai seulement mis des intertitres (avec 3 accolades).

      Les onglets fonctionnent :-)

      Il est vraiment super cet outil ;-)

    • Dans Rubrique ou Article, c’est finalement pareil :-(

      De la façon que j’avais mis, je n’avais en fait que des "ancres". Ce qui n’est pas pareil que d’avoir des pages distinctes. Comme avec les onglets qui, eux, fonctionnent :-)

      Donc avec un séparateur de pages (++++) entre les textes d’un même article je n’ai que « Page précédente 1 2 3 Page suivante » en tête et en pied de l’article. Ça fonctionne dans l’espace privé mais pas "en ligne"… :-(

    Répondre à ce message

  • Il semblerait que MAJ automatique s’embrouille les pinceaux entres les mise-à-jours des plugins sous spip2.x et spip3.x...

    J’ai ainsi quelques plugins marqués : mise-à-jour disponible et cela continuellement... En effet, les versions de mise-à-jour proposées par MAJ Automatique concerne Spip3.x alors que mon site est sous Spip2.x

    Y aura-t-il une mise-à-jour de la lame mise-à-jour automatique :-)

    Sinon, c’est un plugin qui me permettait une maintenance efficace jusqu’ici...

    Répondre à ce message

  • 2

    Bonjour

    lorsque j’utilise la lame de mise à jour automatiques du couteau suisse, le plugin est toujours marqué comme étant à mettre à jour.
    En fait, il semblerait qu’il y ait une version 68379 disponible mais pas publiée dans le zip mis en téléchargement sur cette page.
    Je ne sais pas comment faire pour actualiser le zip avec la dernière version.
    Si quelqu’un peut m’aider...

    En vous remerciant.

    J’ai publié ce commentaire sur le plugin « SPIP Reset ».
    Mais peut-être est-il mieux adapté ici...

    • Bonjour tu as eu raison de poster ce commentaire sur la page du plugin en question car la reconstruction des fichiers zip s dû subir quelques ratés, ça dépend pas de nous mais du serveur de SPIP...
      La solution serait de commiter une petite modif sur SVN pour relancer la reconstruction de l’archive zip...

    • Merci pour ce retour.
      Mais je n’ai aucune idée de comment faire...
      Je viens d’installer Tortoise, mais après c’est au delà de mes compétences.
      Tant pis, peut-être que le développeur du plugin réagira à mon commentaire.

    Répondre à ce message

  • 2
    lionel4

    Bonjour,

    Dans « Le Couteau Suisse (1.8.133) », j’ai activé « Mises à jour automatiques » mais pour chaque plugins actifs, j’ai ce message : « La révision distante n’a pas pu être trouvée. »

    Merci d’avance si quelqu’un pouvait m’explique comment débloquer cela.

    SPIP 2.1.10 [17657]

    • Salut. Est-ce que par hasard ton serveur a les droits pour consulter des pages distantes ? Free par exemple ne les donne pas...

    • lionel4

      Heu… en effet, je suis sur free ;-(
      Mais pourtant au début cela fonctionnait.
      Donc, je vais re-télécharger les plugins directement dans : plugins/auto
      Merci.

    Répondre à ce message

  • 17

    Bonjour

    2 Points sur la version précédente de Couteau suisse, je ne suis pas arrivé à faire les mises à jour automatique..j’avais un écran blanc et rien ne se passait avec une seule mise à jour à la fois.

    Je viens de mettre couteau suisse à jour et là je coche une mise à jour mais je n’ai pas de bouton pour valider les mises à jour à faire..

    Je suis sous Spip 3.0.4 et l’installation de couteau suisse en automatique s’est déroulé normalement

    Merci de votre réponse

    • Bonjour,

      Exact pour le 2e point, un petit bug JS retirait à tort le bouton de validation.

      Est-ce la dernière release du plugin corrige bien le problème ?

      Pour le 1er point, je ne vois pas quoi répondre.

    • Bonsoir

      Oui sur la dernière releaselebouton est bien revenu

      mais le problème persiste à la page
      ecrire/ ?exec=charger_description_outil

      elle reste blanche

      Et je ne fais qu’une mise à jour à la fois..

    • J’ai réussi à mettre un plugin à jour mais pour faire simple

      J’ai bien supprimé le dossier tmp/couteau-suisse/
      Je n’ai pas trouvé /tmp/charger_*.php

      Mais ensuite pour conttinuer il faut à nouveau supprimer le dossier tmp/couteau-suisse/

      et avec plusieurs plugin à la fois cela ne fonctionne pas

    • Le plugin fonction après mise à jours de Couteau suisse 1.8.101 mais pas pour tout les plugins

      Par exemple pour Crayon, il ne fonctionne pas alors que pour Spipbonux il fonctionne c’est assez curieux..

      Mais

    • Bonjour, ne s’agirait-il pas d’une archive encore non constituée ? Il y a toujours un délai d’une heure entre une mise à jour de code et la disponibilité de l’archive associée...

    • Je ne pense pas mais j’ai pu mettre la plus part des plugins à jour ..en individuel seulement mais bon c’est une belle innovation ..et je ne sais si je pourrai m’en servir longtemps car les gestionnaires du serveurs ne nous laissent pas toutes les possibilités..

      Par exemple j’ai eu des problèmes plus particulièrement avec des plugin signalés OLD (Crayon 16/08/2012 OLD) mais cela ne vient pas de la car SPIP mentions légales (9/05/12 SVP)

      Je met à jour le plus gros ..pour le reste je verrai quand j’auri plus de temps .
      Cordialement

    • Au mieux, il suffirait peut-être de refaire l’installation du plugin par SPIP pour que le statut « OLD » passe en « SVP » ?

    • J’ai ce problème de page blanche qui bloque sur ecrire/ ?exec=charger_description_outil.

      J’ai essayé plein de choses séparément ou simultanément :
      -  vider le cache
      -  supprimer toutes les anciennes versions du couteau suisse en old ou en bck
      -  mettre à jour par la lame du couteau suisse
      -  mettre à jour par la page ecrire/ ?exec=admin_plugin
      -  supprimer manuellement le couteau suisse puis réinstallé par ftp
      -  supprimer manuellement le répertoire tmp/couteau-suisse

      Et rien de change. Le seul moyen que j’ai de mettre à jour mes plugins sans passer par ftp est de passer par la page ecrire/ ?exec=admin_plugin. Le problème c’est que la liste des plugins à mettre à jour sur la commande exec=admin_couteau_suisse&cmd=descrip&outil=maj_auto est bien plus longue que ce que je vois sur la page de gestion des plugins

      Je suis en spip 3.0.7 (20352) avec écran sécurité 1.1.5
      Couteau suisse en 1.8.20, Révision : 71737
      Serveur dédié

      Je suis preneur de bonne(s) idée(s) :)

    • Bonjour, merci beaucoup pour ce retour très précis. Quel est ton hébergeur ?

      je viens de déceler un petit dysfonctionnement dans $_REQUEST corrigé dans la révision 71737 du plugin (prochain paquet vers 17h). Cela réglera-t-il ton problème ?

      A propos des délais, le plugin est prévu pour une consultation d’environ 20 secondes maxi. Tout dépend de la réponse des serveurs distants, à condition d’avoir les droits de sortie !

      La manière de fonctionner est un peu différente avec ?exec=admin_plugin qui consulte en CRON de temps en temps. Le Couteau Suisse n’a pas de CRON, il consulte seulement quand on lui demande, offrant même un lien d’actualisation forcée et un détail plus précis sur les révisions de code.

    • Je ferai ma maj ce soir.
      Hébergeur OVH avec serveur dédié en Ubuntu et Plesk 11
      Merci :)

    • Je viens de migrer en 1.8.121 Révision : 71749 et le problème subsiste
      Avant de lancer la lame du couteau suisse pour la maj des autres plugins, j’avais vidé le cache et supprimé manuellement /tmp/couteau-suisse

      Chose bizarre, la maj en 1.8.121 n’était pas visible par la lame du couteau suisse mais était visible sur la page de gestion des plugins.

    • Pour la dernière question, c’est normal : la lame conserve l’info 24h en cache, sauf en cas d’actualisation forcée.

      Pour la première, peut-être faudrait-il voir ça en privé...

    • Bonjour,
      J’ai le même soucis de la page blanche après avoir activé le plug-in Couteau Suisse pour toute la zone ecrire/ (spip 3.0.8, couteau-suisse 1.8.133)

    • Après avoir déplacer le rép /plugins/auto/couteau_suisse, la partie ecrire/ s’affiche à nouveau mais avec l’erreur :
      Erreur dans les plugins : /plugins/auto/couteau_suisse/v1.8.133/cout_pipelines.php

    • Salut, quelles lames as-tu activé sur le Couteau Suisse ? S’agit-il d’un mise à jour ? Ou d’une installation initiale ?

    • Salut,
      Il s’agit d’une installation initiale.
      Pour aller un peu plus loin, dans error.log j’ai les lignes suivantes :
      Warning : Directive ’register_long_arrays’ is deprecated in PHP 5.3 and greater in Unknown on line 0

      Warning : Directive ’magic_quotes_gpc’ is deprecated in PHP 5.3 and greater in Unknown on line 0
      La version de notre serveur php est 5.3.2-1ubuntu4.19
      c’est peut-être lié.
      Merci de ton aide.

    • Au cas où, je cite la doc du Couteau Suisse :

      Pour le pire des cas, il existe un lien permettant de réinitialiser complètement le plugin, en désactivant l’ensemble des outils et en supprimant toutes les variables stockées dans la base de données. Voici ce lien :
      ecrire/?exec=admin_couteau_suisse&cmd=resetall

    Répondre à ce message

Ajouter un commentaire

Qui êtes-vous ?

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici

Ce champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

Ajouter un document

Suivre les commentaires : RSS 2.0 | Atom