PluXml.org

Blog ou CMS à l'Xml

Vous n'êtes pas identifié(e).

#1 07/01/2019 00:41:27

bazooka07
Membre
Lieu : Quelque part en Rhône-Alpes
Inscription : 06/02/2014
Messages : 1 217
Site Web

Gestionnaire de dépôt statique pour extensions de PluXml

Bonjour,

Il y a 3 ans, je vous avais proposé un gestionnaire de dépôt pour les plugins à utiliser avec PluXml :
https://forum.pluxml.org/viewtopic.php?id=5274
Ce gestionnaire a été étendu pour héberger des thèmes et éventuellement d'autres choses comme des utilitaires.
Ce gestionnaire gére le dépôt de façon dynamique :  il suffit d'envoyer dans les dossiers adéquats par FTP les archives zip des différentes extensions, pour qu'au prochain visiteur la page d'accueil se mette automatiquement à jour :
https://kazimentou.fr/repo/

Problème :
La contrainte principale est d'avoir un hébergement avec PHP inclus. Le protocole HTTPS est également bienvenu si on veut interroger les catalogues d'extensions depuis un autre site avec Javascript pour ne pas être bloqué par un hébergeur qui interdit la fonction curl ou l'usage de file_get_contents avec des sites distants (Coucou les dépôts hébergés par Free.fr). il y a également les contraintes de sécurité gérés par CORS. Enfin un temps de réponse court du dépôt sera apprécié par les utilisateurs de PluXml.

Solution :
C'est peu connu par les néophites mais un excellent hébergeur gratuit pour un site Internet est https://github.com. Par contre, on accepte que des sites statiques en pure HTML, CSS et Javascript. Exit PHP.

Il faut donc générer entièrement générer sur son ordinateur, avec un petit script en PHP,  les catalogues des extensions pour son dépôt et les envoyer sur son compte Github avec un utilitaire éprouvé comme Git. un script Javascript s'occupera dans le navigateur d'actualiser la page d'accueil selon les choix des visiteurs. Il suffit juste d'avoir un compte gratuit chez Github et une connaissance sommaire des commandes de Git.

Voir la démo d'un dépôt :
https://bazooka07.github.io/PluXml-repo/
Et pour installer sur son ordinateur, les explications sont là :
https://github.com/bazooka07/PluXml-repo

Bon amusement

P.S. : J'ai modifié le plugin kzUploader pour intégrer ces catalogues d'extensions dans les pages plugins et thèmes de PluXml et de les installer directement si Curl est autorisé sur votre site. Dans le cas contraire, il faudra d'abord les télécharger sur votre ordinateur et utiliser ce plugin comme avant. Il gére évidemment plusieurs dépôts de votre choix (pas de collecteur-centralisateur). Le format plus simple des catalogues de mes gestionnaires de dépôts est privilégié. Mais il sera pris en compte l'ancien format qui ne traite que les plugins. C'est plus compliqué avec Javascript. J'ai encore quelques détails mineurs à régler avant publication.

Dernière modification par bazooka07 (07/01/2019 00:54:12)

Hors ligne

#2 08/01/2019 02:20:10

bazooka07
Membre
Lieu : Quelque part en Rhône-Alpes
Inscription : 06/02/2014
Messages : 1 217
Site Web

Re : Gestionnaire de dépôt statique pour extensions de PluXml

Oups ! Petite erreur dans le fichier README.md :
Après avoir copié les archives zip de vos plugins ou thèmes dans les bons dossiers, exécuter les commandes Git suivantes pour publier sur Internet  :

[== bash ==]
git add .
git commit -am 'le message qui vous convient' 
git push origin gh-pages

Dernière modification par bazooka07 (08/01/2019 02:20:44)

Hors ligne

#3 10/01/2019 13:20:12

bazooka07
Membre
Lieu : Quelque part en Rhône-Alpes
Inscription : 06/02/2014
Messages : 1 217
Site Web

Re : Gestionnaire de dépôt statique pour extensions de PluXml

Quelques fonctionnalités supplémentaires avec cette nouvelle version :
- Affichage sous forme de tableau de toutes les versions des extensions disponibles sur le dépôt
- Affichage en pied de page des liens vers les catalogues au format JSON et XML + VERSION (format traditionnel)
- Sur le site de démo, ajout du fabuleux script kzInstall2
- une page index.html (affichage user-friendly) et une page all.html (format tableau)
- emploi d'un input[type="checkbox"] pour basculer d'un type d'extension à un autre.

Voir démo sur les pages Github

Pour ceux qui ont déjà installé :

[== bash ==]
git pull upstream master
git checkout gh-pages
git merge master

....

Dernière modification par bazooka07 (10/01/2019 13:21:21)

Hors ligne

Pied de page des forums

A propos Nous soutenir Contact Twitter Google+
Copyright © 2006-2019 PluXml.org, tous droits réservés