Bonjour à tous et bon premier mai.
Comme la journée est calme j’ai décidé de faire ce que je repousse depuis un bon moment : migrer ma jeedom de production sur mon nouveau NUC.
Les 2 sont en 4.4.5 et bien à jour allez hop !
Globalement les choses se sont bien passées à une exception, j’ai 1 plugin NOK sur le jeedom migré : elmtouch (çà c’est ballot c’est un de mes plugins !)
Le problème c’est l’installation des dépendances. Il y a déjà quelques temps j’ai changé pour le nouveau système d’installation des dépendances par packages.json, mais
je pense ne jamais l’avoir testé sur une machine « vierge » (oui je sais c’est pas bien).
L’installation se passe mal et je ne comprends pas pourquoi.
Le plugin nécessite nodejs et aussi la librairie nefit-easy-http-server de Robert Kelp
Mon fichier plugins/elmtouch/plugin_info/packages.json
{
"apt" : {
"nodejs" : {}
},
"npm" : {
"plugins/elmtouch/resources" : {}
}
}
Mon fichier plugins/elmtouch/resources/package.json (c’est bien sans s cette fois ?)
{
"name": "jeedom_elmtouch",
"version": "1.0.1",
"description": "Node to connect Nefit Easy Http Server to Jeedom",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"license": "GPL-3.0",
"dependencies": {
"nefit-easy-http-server": "latest"
}
}
Le log d’installation des dépendances
+ echo '*******************Begin of package installation******************'
*******************Begin of package installation******************
+ touch /tmp/jeedom_install_in_progress_elmtouch
+ echo 1
+ echo 2
+ sudo killall apt apt-get unattended-upgr
apt: no process found
apt-get: no process found
unattended-upgr: no process found
+ sudo rm /var/lib/apt/lists/lock
+ sudo rm /var/cache/apt/archives/lock
+ sudo rm /var/lib/dpkg/lock /var/lib/dpkg/lock-frontend
+ sudo sudo dpkg --configure -a --force-confdef
+ sudo apt update
WARNING: apt does not have a stable CLI interface. Use with caution in scripts.
Get:1 http://security.debian.org/debian-security bullseye-security InRelease [48.4 kB]
Hit:2 http://deb.debian.org/debian bullseye InRelease
Get:3 http://deb.debian.org/debian bullseye-updates InRelease [44.1 kB]
Hit:4 https://deb.nodesource.com/node_18.x nodistro InRelease
Fetched 92.4 kB in 0s (455 kB/s)
Reading package lists...
Building dependency tree...
Reading state information...
All packages are up to date.
+ echo 3
+ sudo chmod +x /var/www/html/core/class/../../resources/install_nodejs.sh
+ sudo /var/www/html/core/class/../../resources/install_nodejs.sh
Hit:1 http://security.debian.org/debian-security bullseye-security InRelease
Hit:2 http://deb.debian.org/debian bullseye InRelease
Hit:3 http://deb.debian.org/debian bullseye-updates InRelease
Hit:4 https://deb.nodesource.com/node_18.x nodistro InRelease
Reading package lists...
Reading package lists...
Building dependency tree...
Reading state information...
apt-utils is already the newest version (2.2.4).
build-essential is already the newest version (12.9).
git is already the newest version (1:2.30.2-1+deb11u2).
lsb-release is already the newest version (11.1.0).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
[Check Version NodeJS actuelle : v18.20.2 : [ OK ]
[Check Prefix : /usr and sudo prefix : /usr and www-data prefix : /usr : [ OK ]
+ echo 4
+ sudo chmod +x /var/www/html/core/class/../../resources/install_nodejs.sh
+ sudo /var/www/html/core/class/../../resources/install_nodejs.sh
Hit:1 http://security.debian.org/debian-security bullseye-security InRelease
Hit:2 http://deb.debian.org/debian bullseye InRelease
Hit:3 http://deb.debian.org/debian bullseye-updates InRelease
Hit:4 https://deb.nodesource.com/node_18.x nodistro InRelease
Reading package lists...
Reading package lists...
Building dependency tree...
Reading state information...
apt-utils is already the newest version (2.2.4).
build-essential is already the newest version (12.9).
git is already the newest version (1:2.30.2-1+deb11u2).
lsb-release is already the newest version (11.1.0).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
[Check Version NodeJS actuelle : v18.20.2 : [ OK ]
[Check Prefix : /usr and sudo prefix : /usr and www-data prefix : /usr : [ OK ]
+ echo 5
+ sudo chmod +x /var/www/html/core/class/../../resources/install_nodejs.sh
+ sudo /var/www/html/core/class/../../resources/install_nodejs.sh
Hit:1 http://security.debian.org/debian-security bullseye-security InRelease
Hit:2 http://deb.debian.org/debian bullseye InRelease
Hit:3 http://deb.debian.org/debian bullseye-updates InRelease
Hit:4 https://deb.nodesource.com/node_18.x nodistro InRelease
Reading package lists...
Reading package lists...
Building dependency tree...
Reading state information...
apt-utils is already the newest version (2.2.4).
build-essential is already the newest version (12.9).
git is already the newest version (1:2.30.2-1+deb11u2).
lsb-release is already the newest version (11.1.0).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
[Check Version NodeJS actuelle : v18.20.2 : [ OK ]
[Check Prefix : /usr and sudo prefix : /usr and www-data prefix : /usr : [ OK ]
+ echo 6
+ sudo chmod +x /var/www/html/core/class/../../resources/install_composer.sh
+ sudo /var/www/html/core/class/../../resources/install_composer.sh
Begin installation of composer
--2024-04-30 23:10:40-- https://getcomposer.org/installer
Resolving getcomposer.org (getcomposer.org)... 54.36.53.46, 2001:41d0:302:1100::8:104f
Connecting to getcomposer.org (getcomposer.org)|54.36.53.46|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 58444 (57K) [application/octet-stream]
Saving to: 'composer-setup.php'
0K .......... .......... .......... .......... .......... 87% 2.66M 0s
50K ....... 100% 98.7M=0.02s
2024-04-30 23:10:41 (3.02 MB/s) - 'composer-setup.php' saved [58444/58444]
All settings correct for using Composer
Downloading...
Composer (version 2.7.4) successfully installed to: /var/www/html/core/ajax/composer.phar
Use it: php composer.phar
End installation of composer
+ echo 7
+ cd /var/www/html/core/class/../../plugins/elmtouch/resources
+ rm -rf node_modules
+ sudo npm install
npm warn deprecated node-xmpp-tls-connect@1.0.1: this package is deprecated please use https://github.com/xmppjs/xmpp.js
npm warn deprecated har-validator@5.1.5: this library is no longer supported
npm warn deprecated node-xmpp-core@5.0.9: this package is deprecated please use https://github.com/xmppjs/xmpp.js
npm warn deprecated uuid@3.4.0: Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.
npm warn deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142
npm warn deprecated node-xmpp-client@3.2.0: this package is deprecated please use https://www.npmjs.com/package/@xmpp/client
added 153 packages, and audited 154 packages in 3s
14 packages are looking for funding
run `npm fund` for details
6 moderate severity vulnerabilities
To address all issues (including breaking changes), run:
npm audit fix --force
Run `npm audit` for details.
+ sudo chown -R www-data:www-data node_modules package-lock.json package.json
+ echo 8
+ php /var/www/html/core/class/../php/jeecli.php plugin dependancy_end elmtouch
+ echo 9
+ rm /tmp/jeedom_install_in_progress_elmtouch
+ echo '*******************End of package installation******************'
*******************End of package installation******************
La page santé
D’après la vérification des packages il voit bien mon fichier dans resources
Mais le démon ne veut pas démarrer.
[2024-05-01 09:59:01][ERROR] : Attention je pense qu'il y a un soucis avec le démon que j'ai relancé plus de 3 fois consécutivement
[2024-05-01 09:59:01][DEBUG] : if [ $(ps -ef | grep -v grep | grep "easy-server" | wc -l) -eq 0 ]; then sudo easy-server --serial=***** --access-key=***** --password="****";echo "Démarrage easy-server";sleep 1; fi
sudo: easy-server: command not found
Démarrage easy-server
[2024-05-01 09:59:31][ERROR] : Impossible de lancer le démon Elm Touch, relancez le démon en debug et vérifiez la log
Visiblement easy-server ne s’est pas installé d’ailleurs on peut facilement corriger le problème en l’installant en ligne de commande. Mais qu’est ce qui cloche dans mes fichiers ?
Bien sûr je pourrai revenir à l’ancien système d’installation des dépendances que je maitrise mieux plutôt que celui-ci ou je n’ai fait que recopier ce que j’ai vu dans d’autres plugins en l’adaptant (sans doute mal) mais ce n’est pas un bon choix et puis j’ai arrété le chauffage depuis déjà plusieurs semaines donc j’ai plusieurs mois pour résoudre le problème
Merci de votre aide.
Informations Jeedom
Core : 4.4.5 (V4-stable)
DNS Jeedom : oui
Plugin : ELM Touch
Version : 2024-04-30 23:09:39 (beta)
Statut Démon : Stoppé - (2024-05-01 10:00:01)
Informations complémentaires
== Jeedom 4.4.5 sur Debian GNU/Linux 11 (bullseye)/amd64/x86_64/64bits aka ‹ diy › avec nodeJS v18.20.2 et jsonrpc:enable et elmtouch (beta) 2024-04-30 23:09:39 (avant:beta/2024-04-16 17:36:19)