Turbo-installer

bazooka07bazooka07 PluXml Lead Developer, Moderator
Rassurez-vous, je ne vous propose pas de modifier PluXml cette fois-ci :D

Après lecture de l'article publié sur http://vincentkaheri.com, je me suis dit que ses remarques étaient fondées et qu'il fallait faciliter l'accès de PluXml à Mme Michu et ses copines.

En partageant cet article sur ce fil de discussion, j'espérais voir émerger quelques nouvelles idées pour améliorer l'utilisation de PluXml. Hélas, en vain.

Je vous ai déjà proposé le plugin kzUploader qui vous permet d'installer un plugin ou un thème depuis votre PC sur votre site perdu dans les nuages sur le net en quelques clics de souris, et sans logiciel de FTP.

Mais jusqu"à ce jour le déployement de PluXml sur votre site perdu sur le net était assez lent pour deux raisons :
- en dépliant une archive Zip, le volume de fichiers est doublé ( taux de compression d'une archive Zip est de 50% environ )
- il faut téléverser ( uploader ) à la queue leu leu 220 fichiers (
[== bash ==]
unzip -l ~/Téléchargements/PluXml/PluXml-5.6.zip |wc -l
) avec des échanges "client FTP/serveur" entre chaque fichier

D'où l'idée d'un script PHP le plus simple possible à téléverser en premier sur le serveur qui déploierait tout seul PluXml sur le serveur.
Si l'utilisation de Curl est permise sur le serveur, ce qui est généralement le cas, le script ira télécharger directement l'archive Zip de PluXml sur le serveur officiel et la dépliera.
Dans le cas contraire, typiquement les sites hébergés par Free.fr, le script affiche un formulaire pour téléverser les archives Zip de PluXml et du plugin kzUploader sur le serveur et la déplier.

Voir le code de ce script
Télécharger le script

J'aurais pu écrire plus simplement ce script et ne conserver que la compatibilité pour des hébergeurs, en principe payant sans que cela coute un bras, autorisant l'usage de Curl mais j'ai préféré conserver un emploi plus universel pour des hébergeurs plus draconniens tels que Free.fr, certes gratuits, mais qui ont banni Curl.

Il est possible que je publie un jour cette version simplifiée en la minifiant mais on ne gagnera pas grand chose en temps d'installation.

Dans l'idéal, cela serait bien que ce script soit installé chez quelques hébergeurs pour avoir une auto-installation en un clic comme on peut en trouver pour Wordpress par exemple.

Réponses

  • testé sur un mutualisé OVH.
    l'installation s'est bien passé.
    on voit le message au démarrage pour supprimer le fichier install.php. c'est pas très grave parce qu'on peut le supprimer juste en cliquant sur le lien du message.
    j'ai également testé kzUploader. ça marche très bien.

    Bravo. je pense que c'est une très bonne idée et permettra de simplifier l'installation.
    En plus, c'est rapide.
  • Ben dis donc !!!!

    Cela fonctionne chez O2switch.

    Bravo et merci bazooka07 :)
  • J'ai fais un test chez Free par pure curiosité et cela donne...

    [== Indéfini ==]
    Parse error: syntax error, unexpected T_CONST in /mnt/104/sda/1/c/symphonique/turbo/turbo-installer.php on line 10
    
  • @bazooka07,
    Tu pourrais faire comme Flatboard, qui est sur un free.fr justement.
    Un petit script de unpack avec l'archive de pluxml, j'aime son idée de simplifié l'installation et surtout d'être certain d'avoir les bon droits justement.
    Rapide et efficace.
  • bazooka07bazooka07 PluXml Lead Developer, Moderator
    @jack31,

    Tu utilises une version obsolète de PHP (4.4.3-dev) qui n'est plus maintenue.
    La plus ancienne version maintenue est la 5.6.33 aujourd'hui (php.net en haut et à droite de l'écran)
    On annonce déjà la version 7.2.

    Crée un fichier .htaccess (avec un point devant) contenant simplement :
    [== .htaccess ==]
    php56 1
    

    Ton site basculera en PHP version 5.6.8

    Plus d'infos sur l'hébergement chez Free.fr en suivant le lien ci-dessous :
    http://les.pages.perso.chez.free.fr/migrations/php5v6.io
  • bazooka07bazooka07 PluXml Lead Developer, Moderator
  • @bazooka07

    Oui, c'était bien cela et le test est très concluant.

    Chapeau pour ce nouvel outil. :)
  • Bonjour, :)

    Si l'on réserve un répertoire pour installer des Pluxml à la volée pour faire des tests, il pourrait être intéressant de garder Turbo-installer en permanence dans notre dossier et j'ai repéré le bout de code qui l'éradique mais commenter ces lignes de donne des erreurs. Comment puis-je le faire proprement ?
    [== Indéfini ==]
    # Auto-destruction if not in private range
    			if(filter_input(INPUT_SERVER, 'SERVER_ADDR', FILTER_VALIDATE_IP, FILTER_FLAG_NO_PRIV_RANGE)) {
    				unlink(__FILE__);
    			}
    		}
    	}
    

    Bien sûr, il faut trouver un système pour renommer les dossiers créé et c'est ce que j'ai fait dans l'optique d'améliorer mon bon Pluxautomatic avec ce script. Quand il sera au point, je vous montrerai mon système.

    Ligne 21
    [== Indéfini ==]
    const ADDON_URL = 'https://kazimentou.fr/pluxml-plugins2/index.php?plugin=kzUploader&download';
    

    On ne peut vraiment installer qu'un plugin à la fois ?
  • bazooka07bazooka07 PluXml Lead Developer, Moderator
    février 2018 modifié
    @Jack31,

    Le script ne s'efface que si le serveur est sur un réseau privé. C'est le cas si l'adresse IP commence par "168."
    Après si le serveur est perdu dans la toile, le plus simple est de rajouter false pour faire échouer le test :
    [== PHP ==]
    if(false and filter_input(INPUT_SERVER, .....
    
    Je verrai plus tard pour rajouter une option pour éviter de modifier le code PHP.

    Renommer le dossier n'est pas prévu. Tu peux toujours créer un dossier avant, pour accueillir PluXml.
    L'option qui manque est celle qui permet de ramener tout le contenu du dossier PluXml à la racine du site pour supprimer PluXml dans l'url.
    L'idée au départ était de pouvoir installer d'autres CMS à coté de PluXml pour comparer ergonomie et performance.

    Il n'est prévu d'installer qu'un plugin à la voir. Par contre, kzUploader permet d'installer plusieurs plugins et des thèmes à la fois dans les limites imposées par le serveur.
    J'ai voulu un script universel. C'est à dire que si le script ne peut pas télécharger directement des archives Zip, un formulaire s'affiche pour les uploader. Typiquement c'est le cas pour les pages perso chez free.fr. C'est un script qui se veut simple pour attirer des débutants et une installation rapide.

    Après si c'est pour installer une usine à gaz avec toute une floppée de plugins et de scripts, on peut faire plus simple si on est sur d'aller sur un serveur qui autorise Curl. Mais l'utilisateur n'aura plus le choix de ses plugins. J'ai déjà la méthode dans la tete. Il me manque un peu de temps pour coder cela

    @tous,
    Merci pour vos retours.
    N'hésitez pas à en parler. Cela facilitera la diffusion de PluXml.
  • Le if(false and filter_input(INPUT_SERVER, ..... a très bien fonctionné ce qui m'évite de faire des détours pour recréer par un script ce fichier magique qui va rendre des services à plus d'un.
    [== Indéfini ==]
    Renommer le dossier n'est pas prévu. Tu peux toujours créer un dossier avant, pour accueillir PluXml.
    

    C'est ce que j'ai fais en bidouillant un petit système pour renommer les dossier à loisir en direction de ceux d'entre nous qui voudraient utiliser ce script pour installer plusieurs Pluxml dans un même répertoire.

    On peut tester (pour quelques jours) la chose ici.

    *ttp://jo.legtux.org/turbo/turbo-installeron.php
    [== Indéfini ==]
    Il n'est prévu d'installer qu'un plugin à la voir. Par contre, kzUploader permet d'installer plusieurs plugins et des thèmes à la fois dans les limites imposées par le serveur.
    

    C'est dommage car le but de ce script est de faire une install en un clic et plusieurs plugins sont incontournables pour la plupart des débutants comme un editeur (ckeditor par exemple), MyBetterUrls et autres MyContact et MyPluginDownloader.

    kzUploader est épatant mais pour ceux qui veulent aller très vite.... ;)

    On peut contourner cela en important une version déjà prête avec les modules de base à la place de l'archive latest de pluxml.org mais il faudra veiller à ce que la version et les plugins soient à jour.

    C'est pour cela que si Turbo Installer pouvait aller chercher les plugins de base direct, cela serait un plus.
    [== Indéfini ==]
    
    L'option qui manque est celle qui permet de ramener tout le contenu du dossier PluXml à la racine du site pour supprimer PluXml dans l'url
    

    Je ne me suis pas encore penché sur la question mais je pense qu'on va trouver.
  • bazooka07 a écrit:
    En partageant cet article sur ce fil de discussion, j'espérais voir émerger quelques nouvelles idées pour améliorer l'utilisation de PluXml. Hélas, en vain.

    Il me semble m'être exprimé sur ce point précis sur le forum :
    http://forum.pluxml.org/viewtopic.php?id=5739

    J'aimerais beaucoup avoir des éclaircissements pour la suite de pluxml, pour contribuer de façon collective et pas juste dans mon coin.

    C'est sur que "spxplugindownloader" est le plugin par excellence pour ajouter facilement de nouveaux plugins. Par contre je ne sais pas si Stéphane serait d'accord pour l'intégrer dans la dernière version de Pluxml. Et même si demain je décidais (ou quelqu'un d'autre) de faire mon propre github pour rassembler tous les derniers plugins et thèmes disponible et que je propose une pull request à Stéphane, je ne sais pas s'il aurait le temps pour vérifier et intégrer cela au site officiel.

    C'est cela que je trouve dommage, je suis sûr qu'il y a plein de bonnes volontés pour faire avancer ce projet, mais pour tout centraliser, c'est la que je me pose les questions sur la manière de faire afin que ce soit pris en compte et que le prochain débutant qui découvre pluxml ne soit pas perdu à chercher les ressources à droite à guauche.
  • bazooka07bazooka07 PluXml Lead Developer, Moderator
    spxplugindownloader souffre de 3 défauts :
    ce n'est pas un plugin officiel
    Tu dois aller courtiser son auteur pour que tes plugins figurent à son catalogue
    Il utilise curl qui est parfois banni chez certains hébergeurs. Dans ce cas là, aucun notification pour les mises à jour, y compris pour PluXml.

    Le plugin kzUploader est plus souple. Dans ta quête du Saint-Graal sur le net tu collectes les plugins qui t'intêressent et tu téléverses leurs archives zip sur ton site propulsé par PluXml avec le plugin kzUploader.

    C'est clair qu'il manque à PluXml une gestion centralisée de ses plugins officiels et non officiels avec indice de popularité. Il y a une page sur le wiki mais c'est pas très "sexy".

    Quant à l'avenir de PluXml, on va dire qu'il va évoluer plus lentement...
    Si tu sais utiliser Git, tu peux aller récupérer les dernières mises à jour sur Github. Ce sont plus des évolutions que des bugfixes.

    Toutes les bonnes volontés sont les bienvenues, mais vu ton nombre de posts, on ne va peut-être pas s'emballer.
    Pour reprendre une terminologie bittorrent, tu te sens leecher ou seeder :D
  • jack31jack31 Member
    Pour la gestion centralisée de ses plugins, je plussoie grandement et il y aurait bien des choses à redire mais reconnaissons que ce n’est pas facile ne serait-ce que par le fait que beaucoup ne sont pas mis à jour mais jetterons-nous la pierre à ceux qui les développent et les mettent gracieusement à disposition.

    Idem pour les thèmes. ;)
    Bazzoka07 a écrit:
    Dans ta quête du Saint-Graal sur le net tu collectes les plugins qui t'intêressent et tu téléverses leurs archives zip sur ton site propulsé par PluXml avec le plugin kzUploader.

    Depuis que j'ai adopté l'incontournable kzUploader, en attendant le Saint-Graal, j'ai trouvé un process qui me fait gagner un temps énorme.

    1) Je les télécharge direct dans mon dossier téléchargements
    2/ Je vais les y chercher direct depuis le site que je travaille
    3) Je fais régulièrement le ménage dans mon dossier téléchargements

    En bref, je ne les stoke plus comme avant et bénéficie par la même occasion de la dernière version.
Connectez-vous ou Inscrivez-vous pour répondre.