Il y a 389 articles et 19 utilisateurs inscrits (ce bandeau est défini dans MediaWiki:Sitenotice)
Prétraitement et mise à jour automatisée des images préparées
Introduction
Un nouveau script permet de générer automatiquement l'ensemble des versions des images préparées. Il est aussi capable de mettre à jour les images préparées lorsque l'image originale change.
Ce script est disponible sur le SVN à l'emplacement @pleade-libre-sdx-2.5/script-pre-traitement/ImagePretraitement/ImagePretraitement.jar
Principe de fonctionnement
Il s'agit d'un script java qui se lance avec la commande java -jar (compatibilité java >= 6). Pour l'automatiser complètement, il faut l'enregistrer dans le crontab.
Le script offre les fonctionnalités ci-dessous:
- Création des versions miniature (60x60), vignette (300x300) default (2500x2500) et hidef (taux de compression 45%).
- Regénération des images pré-taritement dont l'image originale a été mise à jour.
- Possibilité d'utiliser vips ou imageMagick (par défaut) pour le traitement.
- Possibilité de supprimer les images préparées pour lesquels l'image originale n'existe plus.
- Création et journalisation des log. Possibilité de spécifier le nombre de jours de log à conserver
Exécution du script
Le script se lance de cette façon :
java -jar imagesPretraitement.jar <python> '<racines>' <pretrait> '<formats>' <vips> <delete> <logFile> <nbDaysForLog>
- <python> : emplacement absolue du script python plus. Exemple: /home/mdia/pretraitement_images_plus.py
- <racines> : entre cote, la liste des racines d'images séparée par ; . Exemple : '/home/test-images;/home/mdia/test-images2'
- <pretrait> : emplacement absolue du répertoire image préparées. Exemple : /home/mdia/test-images-preparees
- <formats> : entre cote, la liste des formats d'images préparées à générer séparée par ; . Exemple : 'default;vignette;hidef'
- <vips> : si true travail avec vips. Sinon, travail avec imageMagick
- <delete> : Si true le script supprime les images préparées dont l'image original n'existe plus. Si false, le script indique juste les images préparées à supprimer sans rien faire.
- <LogFile> : Emplacement absolue du ficheir de log.
<nbDaysForLog> : nombre de jours de log à conserver
Exemple d’exécution du script:
java -jar ImagePretraitement.jar /home/mdia/pretraitement_images_plus.py '/home/mdia/test-images;/home/mdia/test-images2' /home/mdia/test-images-preparees 'default;vignette;hidef' vips true /home/mdia/ImagePretraitement.log 10
Exemple de programmation dans le crontab
0 20 * * * java -jar ImagePretraitement.jar /home/mdia/pretraitement_images_plus.py '/home/mdia/test-images;/home/mdia/test-images2' /home/mdia/test-images-preparees 'default;vignette;hidef' vips true /home/mdia/ImagePretraitement.log 10
Avec ce cron, le script se lance tout les jours à 20h00 et écrit ses log dans le fichier /home/mdia/test.log
Message de log par rapport au traitement des images
Quand il donne juste l'info des éléments à supprimer sans faire l'action
- [INFO NO DELETE] Répertoire vide :
- [INFO NO DELETE] Image originale inexistant pour :
Quand il supprime réellement
- [INFO DELETE] Suppression répertoire vide:
- [INFO DELETE] Suppression image préparée :
Quand il crée de nouvelles images préparées qui n'existaient pas avant
- [INFO CREATE DEFAULT|MINIATURE|HIDEF|VIGNETTE] Création image préparée :
Quand il met à jour une image préparée dont l'image original a changé
- [INFO UPDATE DEFAULT|MINIATURE|HIDEF|VIGNETTE] Mise à jour image préparée
Quand une image originale ne peut pas être traitée
- Erreur [0][!!IMAGE ILLISIBLE!!]
- Syntax error:
- ou d'autres messages d'erreurs