Restauration et réinstallation « automatique » des dépendances

Bonjour
Tout est dans le titre
Je cherche depuis des heures sans vraiment trouver de solution, pourtant ça me paraît une super idée.
Je souhaiterai trouver un moyen de réinstaller automatiquement toutes les dépendances d’un plugin après restauration de jeedom.
Via un script bash par exemple qui boucle et qui appelle un sh ? J’ai trouvé des install.sh mais pas pour tout le monde. Bref si quelqu’un a une solution va m’intéresserait !
Merci

Heu ça ne se fait pas automatiquement ça ? Après il faut attendre pas mal car ça prend pas mal de temps !

Et bien, si je prends une vm neuve, j’installe jeedom et je restaure mon backup, non, les dépendances de homebridge par exemple ne s’installent pas.
Pareil pour mqtt2 je dois cliquer sur réinstaller les dépendances dans lihm et relancer pour que ça fonctionne.
Je trouve ça hallucinant de pas avoir un moyen automatique pour, une fois la sauvegarde restaurée que tout fonctionne tout seul

Bonjour
As tu attendu au moins 30min après la restauration ? Les dépendances étaient elles bien en nok ?

Les dépendances sont ok, mais les dameon nok.
Du coup, si je ne réinstalle pas à la main les deps et ne relance pas manuellement ensuite les deamons ça ne fonctionne pas
Effectivement je n’ai pas attendu aussi longtemps

Il faudrait voir l’erreur que tu as sur les démon mais oui il faut attendre un peu suite à la restauration pour que jeedom vérifie tout. Ça prend du temps car c’est très consommateur en cpu donc pour éviter que jeedom s’arrête on fait ça petit à petit.

Bon j’ai fait une installation propre sur vm debian 11 neuve, et restaure de mon tar gz.
Attendu plus d’une demi heure et c’est dans le même état.
J’ai au moins 2 deamons qui ne se lancent pas : erreur 3 fois consécutives etc…
Home bridge et mqtt2 sont en erreur
Si j’installe les deps à la main, et relance le démon ça marche … une idée ?

Bonjour
Comme dit avant sans la log impossible de vous dire.

Pour homebridge

0000|sh: 1: /var/www/html/plugins/homebridge/core/class/../../resources/node_modules/homebridge/bin/homebridge: not found
0001|sh: 1: /var/www/html/plugins/homebridge/core/class/../../resources/node_modules/homebridge/bin/homebridge: not found
0002|sh: 1: /var/www/html/plugins/homebridge/core/class/../../resources/node_modules/homebridge/bin/homebridge: not found
0003|sh: 1: /var/www/html/plugins/homebridge/core/class/../../resources/node_modules/homebridge/bin/homebridge: not found
0004|sh: 1: /var/www/html/plugins/homebridge/core/class/../../resources/node_modules/homebridge/bin/homebridge: not found
0005|sh: 1: /var/www/html/plugins/homebridge/core/class/../../resources/node_modules/homebridge/bin/homebridge: not found
0006|sh: 1: /var/www/html/plugins/homebridge/core/class/../../resources/node_modules/homebridge/bin/homebridge: not found
0007|sh: 1: /var/www/html/plugins/homebridge/core/class/../../resources/node_modules/homebridge/bin/homebridge: not found
0008|sh: 1: /var/www/html/plugins/homebridge/core/class/../../resources/node_modules/homebridge/bin/homebridge: not found
0009|sh: 1: /var/www/html/plugins/homebridge/core/class/../../resources/node_modules/homebridge/bin/homebridge: not found
0010|sh: 1: /var/www/html/plugins/homebridge/core/class/../../resources/node_modules/homebridge/bin/homebridge: not found
0011|sh: 1: /var/www/html/plugins/homebridge/core/class/../../resources/node_modules/homebridge/bin/homebridge: not found
0012|sh: 1: /var/www/html/plugins/homebridge/core/class/../../resources/node_modules/homebridge/bin/homebridge: not found
0013|sh: 1: /var/www/html/plugins/homebridge/core/class/../../resources/node_modules/homebridge/bin/homebridge: not found
0014|sh: 1: /var/www/html/plugins/homebridge/core/class/../../resources/node_modules/homebridge/bin/homebridge: not found
0015|sh: 1: /var/www/html/plugins/homebridge/core/class/../../resources/node_modules/homebridge/bin/homebridge: not found

Pour mqtt2

0363|Error: Cannot find module 'axios'
0364|Require stack:
0365|- /var/www/html/plugins/mqtt2/resources/mqtt2d/jeedom/jeedom.js
0366|- /var/www/html/plugins/mqtt2/resources/mqtt2d/mqtt2d.js
0367|at Module._resolveFilename (node:internal/modules/cjs/loader:1140:15)
0368|at Module._load (node:internal/modules/cjs/loader:981:27)
0369|at Module.require (node:internal/modules/cjs/loader:1231:19)
0370|at require (node:internal/modules/helpers:177:18)
0371|at Object.<anonymous> (/var/www/html/plugins/mqtt2/resources/mqtt2d/jeedom/jeedom.js:17:15)
0372|at Module._compile (node:internal/modules/cjs/loader:1364:14)
0373|at Module._extensions..js (node:internal/modules/cjs/loader:1422:10)
0374|at Module.load (node:internal/modules/cjs/loader:1203:32)
0375|at Module._load (node:internal/modules/cjs/loader:1019:12)
0376|at Module.require (node:internal/modules/cjs/loader:1231:19) {
0377|code: 'MODULE_NOT_FOUND',
0378|requireStack: [
0379|'/var/www/html/plugins/mqtt2/resources/mqtt2d/jeedom/jeedom.js',
0380|'/var/www/html/plugins/mqtt2/resources/mqtt2d/mqtt2d.js'
0381|]
0382|}
0383|Node.js v18.20.2

Tu as quoi dans le dossier node_module du plugin mqtt2 dans resources ?

Bon je pense avoir trouvé bugfix #2621 · jeedom/core@6201f67 · GitHub il faudra attendre la 4.4.7 et un backup de la 4.4.7 pour retester mais ca devrait être bon

1 « J'aime »

Ça va corriger mes deux soucis tu penses ?

Comme l’indique le lien que j’ai mis ca va corriger un soucis sur les dépendances NodeJS suite a une restauration de backup.

Bonjour @Loic,

pas du tout une bonne idée de ne plus exclure node_modules des backups !!! la taille des backups va devenir potentiellement énorme

c’est le role de dépendances_info qui doit detecter que les modules node_modules ne sont pas là et donc le cron 5 plugin va automatiquement relancer les dépendances dans les 5 min!

Salut,

Oui on est au courant mais c’était la solution dans l’urgence, car en faite si le dossier est présent (mais vide comme c’est le cas) les dépendances ce relance pas automatiquement et faut les relancer a la main.

ma sauvegarde en 4.4.7 n’est pas plus lourde qu’avant.

Ok tant que c’est temporaire et que les vérifications de dépendances sont sur la lib réellement et pas juste sur l’existence du dossier.