wiki:LookDeFiles

Version 16 (modified by toggg, 12 years ago) (diff)

--

retour LesProjets

Présentation des fournitures de zones

Montrer les zips, plugin.xml et autres productions d'un svn comme la zone. Fournir des moyens pour faciliter les recherches et suivis.

D'aucuns artistes se plaignent du peu d'attractivité des espaces de téléchargement comme http://zone.spip.org/files/spip-zone/ ou http://miroirspip.ventre.name/builds/spip/

D'aucuns producteurs de ces épatants espaces voudraient morfler pour ce qu'il faut.

Alice ? Me vois-tu en ce miroir ?

Production des données de base

cf. source:_dev_/bin_svn

La configuration est dans paquets.cfg

La production est gérée globalement par paquets.sh:

  • fixe les répertoires de base
  • boucle sur PQ_SVNREP, défaut "spip spip-zone" , soit faire les paquets pour spip , puis spip-zone
  • checkout (update, met à jour) le svn,
  • appelle paquets-zone.sh pour produire chaque zone

paquets-zone.sh

est héroïquement devenu un boeuf:

  • parcourt le répertoire de la copie locale du morceau de svn posé par paquets.sh et en extrait les plugin.xml ou theme.xml sur l'arborescence ref/
  • leur associe un svn.revision (produit par paquet-version.sh)
  • visite chaque entrée du archivelist.txt
    • pose une référence correspondante dans ref/ (produit par paquet-version.sh),
    • si .svn/entries globalement plus récente que le zip , commande sa fabrication à paquet-unique.sh

paquet-unique.sh

  • finalise la détermination du temps encore paquet-version.sh
  • si nécessaire fait le .zip et/ou .tgz ou .tbz

paquet-version.sh

  • si 2 arguments (zip pour comparer la date), affine la détermination du temps en inspectant la date de commit à l'intérieur du svn/entries , réponse 0 ou 1 dans l'erreur
  • affiche origine (url svn) , date de production , date et numéro de dernière révision (cet affichage constitue les svn.revision)

ref.xml

La production de ref/ a été complétée par le ref.xml (400ko) listant les plugin.xml et theme.xml enrichis du svn.revision correspondant. Il devrait être exploitable par des outils simples (pas taper, Cedric) comme les boucles XML.

Dans cet xml on trouve donc:

  • un <zone> contenant
  • plein de <zone_elt> chacun avec dedans, au choix
    • un <plugin> le même que plugin.xml ou un <theme> pareil, le contenu de theme.xml
    • <svn_revision> contenant comme le nouveau svn.revision:
      • <text_version> l'ancien contenu de svn.revision pour compatibilité avec le core
      • <origine> l'url du svn
      • <date_production> la date de production de cette référence
      • <revision> la dernière révision pour ce sous-dossier svn
      • <commit> la date de cette dernière révision

Cet xml est produit pour tout sous-dossier contenant un plugin.xml ou un theme.xml, il y manque encore la référence du zip éventuel , lorsque ce sous-dossier est déclaré dans archivelist.txt

Il est destiné à alimenter des modules de visualisation ou de surveillance.