Il y a 389 articles et 19 utilisateurs inscrits (ce bandeau est défini dans MediaWiki:Sitenotice)

Migration des scripts de pré-traitement (eole2 → eole3)

De AJLSM
Aller à la navigation Aller à la recherche

Migration des scripts de pré-traitement (eole2 → eole3)

[modifier | modifier le wikicode]

Adapter les scripts historiques pour fonctionner sur :

  • Ubuntu 24
  • Python 3
  • Java 17
  • stockage ZFS

---

1. Installation des dépendances

[modifier | modifier le wikicode]
apt update
apt install -y openjdk-17-jdk-headless python3 imagemagick libvips-tools 2to3

---

2. Migration Python

[modifier | modifier le wikicode]
cp pretraitement_images_plus.py pretraitement_images_plus.py.py2
cp pretraitement_images.py pretraitement_images.py.py2
2to3 -w pretraitement_images_plus.py
2to3 -w pretraitement_images.py
python3 -m py_compile pretraitement_images_plus.py
python3 -m py_compile pretraitement_images.py

---

3. Mise en place des wrappers

[modifier | modifier le wikicode]
/home/ajlsm/bin/java-pretraitement

Contenu :

#!/usr/bin/env bash
exec /usr/bin/java "$@"

---

Wrapper Python

[modifier | modifier le wikicode]
/home/ajlsm/bin/python

Contenu :

#!/usr/bin/env bash
exec /usr/bin/python3 "$@"

---

4. Configuration PATH

[modifier | modifier le wikicode]
sudo ln -s /usr/bin/python3 /usr/bin/python
export PATH=/home/ajlsm/bin:/usr/local/bin:/usr/bin:/bin

Cron :

SHELL=/bin/bash
PATH=/home/ajlsm/bin:/usr/local/bin:/usr/bin:/bin

---

5. Migration des chemins (ZFS)

[modifier | modifier le wikicode]

Changement majeur

[modifier | modifier le wikicode]

Avant (eole2) :

/var/data/<client>-data/pleade/images

Après (eole3) :

/var/data/<client>-data/data/pleade/images

---

6. Tests de fonctionnement

[modifier | modifier le wikicode]

Vérification des binaires

[modifier | modifier le wikicode]
which java
which python
which convert
which identify
which vips

---

python pretraitement_images_plus.py --help

---

java-pretraitement -jar ImagePretraitement.jar

---

7. Exécution complète

[modifier | modifier le wikicode]
java-pretraitement -jar ImagePretraitement.jar \
pretraitement_images_plus.py \
'<SOURCE>' \
<DESTINATION> \
'hidef' \
true \
true \
<LOGFILE> \
10

---

  • Code retour : 0
  • Logs générés
  • Images produites

---

9. Problèmes connus

[modifier | modifier le wikicode]

Images illisibles

[modifier | modifier le wikicode]

Erreur :

identify: unable to open image

Cause :

  • fichier absent
  • mauvais format
  • extension incorrecte

---

Erreur :

Not a JPEG file: starts with 0xd0 0xcf

Cause :

  • fichier non image (souvent PDF ou DOC renommé)

---

10. Points d’attention

[modifier | modifier le wikicode]
  • Ne pas installer :
apt install python-is-python3
  • Ne pas utiliser Java 7
  • Conserver les scripts Python 2 originaux

---

La chaîne complète fonctionne désormais sur eole3 :

  • Java 17 ✔
  • Python 3 ✔
  • ImageMagick ✔
  • VIPS ✔
  • ZFS ✔