Friday, September 12, 2025
support@conference.yunohost.org
September
Mon Tue Wed Thu Fri Sat Sun
1
2 3 4
5
6 7
8
9
10
11
12
13
14
15
16
17
18 19 20 21
22 23 24 25 26 27 28
29 30          
             

[07:22:42] <Cippr> Bonjour, la MAJ de Nextcloud 31.0.8 vers 31.0.9 ne se passe pas bien. Il y a une perte de l'API a priori durant la génération de l'archive qui fait environ 1 Go.
J'ai eu le souci via la webadmin sur un serveur amd64 avec 6 Go de RAM derrière une box, ainsi que sur un VPS amd64 avec 2 Go de RAM en CLI.
Pour le 1er j'ai attendu 2 minutes et rafraîchit la page et la MAJ est passé.
Pour le second, même en ayant attendu j'ai perdu le sudo, donc impossible de rebooter et j'ai dû redémarrer le VPS via l'interface du provider et cette fois la MAJ n'est pas passée. Elle est resté en 31.0.8.
[07:23:11] <Cippr> J'ai vu passé une discussion avec des soucis de MAJ sur d'autres applications avec une proposition de mise en place d'une sorte de TTL qu'il faudrait passer de 60 à 300. Peut-être que ça pourrait être une solution.
Je pourrais prendre un peu de temps regarder plus précisément les logs ce soir ou demain. Les 2 serveurs sont sur la dernière 12.1.22 stable de YuNoHost.
[08:31:40] <Aleks (he/him/il/lui)> ( Cippr : btw j'sais pas si ça marche via XMPP, j'ai essayé de t'inviter sur le salon Regular Contributors mais ptête l'invit passe pas via XMPP)
[09:27:03] <Luc (he/him)> Bonjour,
J'essaye de faire une backup avec Borg vers un repository accessible en SSH, mais j'ai cette erreur lors de la premiere backup:
2025-09-12 11:22:00,425: ERROR - Could not run script: /etc/yunohost/hooks.d/backup_method/05-borg_app
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/yunohost/hook.py", line 301, in hook_callback
hook_return = hook_exec(
^^^^^^^^^^
File "/usr/lib/python3/dist-packages/yunohost/hook.py", line 422, in hook_exec
raise YunohostError("hook_exec_failed", path=path)
yunohost.utils.error.YunohostError: Could not run script: /etc/yunohost/hooks.d/backup_method/05-borg_app
[09:27:27] <Luc (he/him)> (je peux pas mettre tout le log avec yunopaste car il y a la pass phrase en clair plus haut)
[09:28:40] <Aleks (he/him/il/lui)> apriori la partie intéressant c'est les quelques lignes avant
[09:33:56] <Luc (he/him)> ok, la voici expurgée
[09:34:07] <Luc (he/him)> 2025-09-12 11:21:51,564: DEBUG - Executing command '['sh', '-c', '/bin/bash -x "./05-borg_app" backup /home/yunohost.backup/tmp/auto_conf auto_conf /home/yunohost.backup/archives 475946 \'\' 7>&1']'
2025-09-12 11:21:51,568: DEBUG - + set -Eeuo pipefail
2025-09-12 11:21:51,569: DEBUG - + borg=/var/www/borg/venv/bin/borg
2025-09-12 11:21:51,570: DEBUG - ++ yunohost app setting borg passphrase
2025-09-12 11:21:51,877: DEBUG - + BORG_PASSPHRASE=
2025-09-12 11:21:51,877: DEBUG - ++ yunohost app setting borg repository
2025-09-12 11:21:52,192: DEBUG - + BORG_REPO=
2025-09-12 11:21:52,192: DEBUG - + BORG_LOGGING_CONF=/var/www/borg/logging.conf
2025-09-12 11:21:52,192: DEBUG - + ssh-keygen -F '[BLABLABLA'
2025-09-12 11:21:52,201: DEBUG - + BORG_RSH='ssh -i /root/.ssh/id_borg_ed25519 -oStrictHostKeyChecking=yes '
2025-09-12 11:21:52,201: DEBUG - + work_dir=/home/yunohost.backup/tmp/auto_conf
2025-09-12 11:21:52,201: DEBUG - + name=auto_conf
2025-09-12 11:21:52,201: DEBUG - + size=475946
2025-09-12 11:21:52,202: DEBUG - + description=
2025-09-12 11:21:52,202: DEBUG - + case "$1" in
2025-09-12 11:21:52,202: DEBUG - + do_backup /home/yunohost.backup/tmp/auto_conf auto_conf 475946 ''
2025-09-12 11:21:52,202: DEBUG - + export BORG_PASSPHRASE
2025-09-12 11:21:52,202: DEBUG - + export BORG_REPO
2025-09-12 11:21:52,202: DEBUG - + export BORG_RSH
2025-09-12 11:21:52,202: DEBUG - + export BORG_LOGGING_CONF
2025-09-12 11:21:52,203: DEBUG - + export BORG_RELOCATED_REPO_ACCESS_IS_OK=yes
2025-09-12 11:21:52,203: DEBUG - + BORG_RELOCATED_REPO_ACCESS_IS_OK=yes
2025-09-12 11:21:52,203: DEBUG - + work_dir=/home/yunohost.backup/tmp/auto_conf
2025-09-12 11:21:52,203: DEBUG - + name=auto_conf
2025-09-12 11:21:52,203: DEBUG - + size=475946
2025-09-12 11:21:52,203: DEBUG - + description=
2025-09-12 11:21:52,203: DEBUG - + set +e
2025-09-12 11:21:52,203: DEBUG - + /var/www/borg/venv/bin/borg list
2025-09-12 11:21:54,892: DEBUG - + /var/www/borg/venv/bin/borg init -e repokey
2025-09-12 11:21:57,522: DEBUG - + /usr/bin/mail.mailutils -a 'Content-Type: text/plain; charset=UTF-8' -s '[YNH] First backup is starting' root
2025-09-12 11:21:57,522: DEBUG -
2025-09-12 11:21:57,522: DEBUG - Your first backup on ssh://BLABLABLA/backups is starting.
2025-09-12 11:21:57,522: DEBUG -
2025-09-12 11:21:57,522: DEBUG - This is an automated message from your beloved YunoHost server.'
2025-09-12 11:21:57,560: DEBUG - + set -e
2025-09-12 11:21:57,561: DEBUG - + pushd /home/yunohost.backup/tmp/auto_conf
2025-09-12 11:21:57,561: DEBUG - /home/yunohost.backup/tmp/auto_conf /etc/yunohost/hooks.d/backup_method
2025-09-12 11:21:57,561: DEBUG - + /var/www/borg/venv/bin/borg create --exclude-if-present .nobackup --stats '::auto_conf-{now}' .
2025-09-12 11:22:00,323: DEBUG - + retcode=2
2025-09-12 11:22:00,324: DEBUG - + popd
2025-09-12 11:22:00,324: DEBUG - /etc/yunohost/hooks.d/backup_method
2025-09-12 11:22:00,324: DEBUG - + [[ 2 == 1 ]]
2025-09-12 11:22:00,324: DEBUG - + [[ 2 != 0 ]]
2025-09-12 11:22:00,324: DEBUG - + exit 2
2025-09-12 11:22:00,425: ERROR - Could not run script: /etc/yunohost/hooks.d/backup_method/05-borg_app
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/yunohost/hook.py", line 301, in hook_callback
hook_return = hook_exec(
^^^^^^^^^^
File "/usr/lib/python3/dist-packages/yunohost/hook.py", line 422, in hook_exec
raise YunohostError("hook_exec_failed", path=path)
yunohost.utils.error.YunohostError: Could not run script: /etc/yunohost/hooks.d/backup_method/05-borg_app
[09:38:05] <Aleks (he/him/il/lui)> zmlerp le borg create a renvoyé "2" comme code de retour (plutot que 0=success ou 1=warning) mais genre on voit pas de vraie raison x_x
[09:39:03] <florent> Pas de logs dans `/var/log/borg/<date du jour>.log` ou `.err` non plus ?
[09:39:47] <Aleks (he/him/il/lui)> ah oui genre y'a un logging.conf qui défini où log les trucs si je comprends bien
[09:40:00] <Luc (he/him)> je checke
[09:40:11] <Aleks (he/him/il/lui)> (on pourrait imaginer rajouter un `tail` du fichier de log avant le `exit`)
[09:40:55] <florent> en lien : https://github.com/YunoHost-Apps/borg_ynh/pull/193
[09:42:12] <Luc (he/him)> alors il y a des fichiers mais ca aide pas beaucoup (en tous cas moi ˆˆ)
[09:42:48] <Luc (he/him)> /var/log/borg/250912_1121.log:
INFO Creating a backup archive from the collected files…
INFO The archive will contain about 465KB of data.
INFO The operation 'Create a backup archive' could not be completed. Please share the full log of this operation using the command 'yunohost log share 20250912-092147-backup_create' to get help
INFO Collecting files to be backed up for immich…
INFO Declaring files to be backed up...
INFO Backing up a PostgreSQL database...
INFO Backup script completed for immich. (YunoHost will then actually copy those files to the archive).
INFO Creating a backup archive from the collected files…
INFO The archive will contain about 63GB of data.
INFO The operation 'Create a backup archive' could not be completed. Please share the full log of this operation using the command 'yunohost log share 20250912-092201-backup_create' to get help
[09:43:19] <Luc (he/him)> et
sudo cat /var/log/borg/250912_1121.err
ERROR Could not run script: /etc/yunohost/hooks.d/backup_method/05-borg_app
ERROR Custom backup method could not get past the 'backup' step
WARNING cat: /etc/yunohost/psql: No such file or directory
ERROR Could not run script: /etc/yunohost/hooks.d/backup_method/05-borg_app
ERROR Custom backup method could not get past the 'backup' step
[09:43:33] <Luc (he/him)> ca peut etre /etc/yunohost/psql ?
[09:43:34] <florent> > WARNING cat: /etc/yunohost/psql: No such file or directory

Wow…
[09:44:01] <Aleks (he/him/il/lui)> hmpf ça ressemble au bug qui a été corrigé en 12.1.21 (ou 22 chépu)
[09:44:08] <orhtej2> > > WARNING cat: /etc/yunohost/psql: No such file or directory
>
> Wow…

Not this shit again
[09:44:20] <Aleks (he/him/il/lui)> t'es en quelle version de yunohost ?
[09:44:23] <Luc (he/him)> haha, je débute avec YH, je sias pas ce qu'il y a ou n'y a pas dans ce dossier psql, en tous cas j'y ai jamais touché volontairement
[09:44:42] <Aleks (he/him/il/lui)> ouioui c'est/c'était un bug
[09:45:12] <Luc (he/him)> 12.1.15.1, installé il y a quelques semaines
[09:46:17] <Aleks (he/him/il/lui)> mouaip ben faut faire la mise à jour genre soit via la webadmin dans "Mises à jour" ou bien `yunohost tools update` puis `yunohost tools upgrade system`
[09:51:22] <Luc (he/him)> OK, je tente!
[10:08:09] <Luc (he/him)> OK, mise a jour faite, je suis maintenant en 12.1.22. Ca rate toujours
les logs dans tools > logs sont les memes (borg create renvoit "2")
sudo cat /var/log/borg/250912_1203.log
INFO Creating a backup archive from the collected files…
INFO The archive will contain about 465KB of data.
INFO The operation 'Create a backup archive' could not be completed. Please share the full log of this operation using the command 'yunohost log share 20250912-100400-backup_create' to get help
INFO Collecting files to be backed up for immich…
INFO Declaring files to be backed up...
INFO Backing up a PostgreSQL database...
INFO Backup script completed for immich. (YunoHost will then actually copy those files to the archive).
INFO Creating a backup archive from the collected files…
INFO The archive will contain about 63GB of data.
INFO The operation 'Create a backup archive' could not be completed. Please share the full log of this operation using the command 'yunohost log share 20250912-100414-backup_create' to get help
[10:08:37] <Luc (he/him)> et le .err
sudo cat /var/log/borg/250912_1203.err
ERROR Could not run script: /etc/yunohost/hooks.d/backup_method/05-borg_app
ERROR Custom backup method could not get past the 'backup' step
ERROR Could not run script: /etc/yunohost/hooks.d/backup_method/05-borg_app
ERROR Custom backup method could not get past the 'backup' step
[10:09:25] <Luc (he/him)> ca essaye 2 fois, mais je suppose que c'est normal, j'ai configuré pour sauvegarder la config et les data de l'appli immich
[10:13:59] <florent> What about (please replace the capitalized name to relevant values):
```
yunohost backup create -n YOUR_BACKUP_NAME --apps SOME_APP_INSTALLED --method borg
```
[10:14:23] <florent> And sorry, I have to go
[10:15:02] <florent> I am a bit worried to not have a clear error, probably there are room for improvements in that way in the borg package.
[10:15:23] <Luc (he/him)> no worries, thansk for the help already!
[10:17:59] <Luc (he/him)> luc@yh:~$ sudo yunohost backup create -n test --method borg --apps glances
Info: Collecting files to be backed up for glances…
Info: Declaring files to be backed up...
Info: Backup script completed for glances. (YunoHost will then actually copy those files to the archive).
Info: Creating a backup archive from the collected files…
Info: The archive will contain about 141MB of data.
Error: Could not run script: /etc/yunohost/hooks.d/backup_method/05-borg_app
Info: The operation 'Create a backup archive' could not be completed. Please share the full log of this operation using the command 'yunohost log share 20250912-101718-backup_create' to get help
Error: Custom backup method could not get past the 'backup' step

j'ai tenté avec glances pour avoir une petite app
[10:22:26] <Aleks (he/him/il/lui)> 🤔
[10:31:17] <Luc (he/him)> here is the full log if that helps
[10:31:27] <Luc (he/him)> 2025-09-12 12:17:19,670: DEBUG - temporary directory for backup '/home/yunohost.backup/tmp/test' already exists... attempting to clean it
2025-09-12 12:17:19,738: INFO - Collecting files to be backed up for glances…
2025-09-12 12:17:19,756: DEBUG - Executing command '['sh', '-c', '/bin/bash -x "/var/cache/yunohost/app_tmp_work_dirs/app_x8cgl5q7/scripts/backup" 7>&1']'
2025-09-12 12:17:19,760: DEBUG - + source ../settings/scripts/_common.sh
2025-09-12 12:17:19,760: DEBUG - + source /usr/share/yunohost/helpers
2025-09-12 12:17:19,762: DEBUG - ++++ dirname -- /usr/share/yunohost/helpers
2025-09-12 12:17:19,764: DEBUG - +++ cd -- /usr/share/yunohost
2025-09-12 12:17:19,764: DEBUG - +++ pwd
2025-09-12 12:17:19,764: DEBUG - ++ SCRIPT_DIR=/usr/share/yunohost
2025-09-12 12:17:19,764: DEBUG - ++ YNH_HELPERS_VERSION=2.1
2025-09-12 12:17:19,765: DEBUG - +++ set +o
2025-09-12 12:17:19,766: DEBUG - +++ grep xtrace
2025-09-12 12:17:19,768: DEBUG - ++ readonly 'XTRACE_ENABLE=set -o xtrace'
2025-09-12 12:17:19,768: DEBUG - ++ XTRACE_ENABLE='set -o xtrace'
2025-09-12 12:17:19,768: DEBUG - ++ set +x
2025-09-12 12:17:19,791: DEBUG - + ynh_print_info 'Declaring files to be backed up...'
2025-09-12 12:17:19,791: DEBUG - + echo 'Declaring files to be backed up...'
2025-09-12 12:17:19,791: INFO - Declaring files to be backed up...
2025-09-12 12:17:19,792: DEBUG - + ynh_backup /var/www/glances
2025-09-12 12:17:19,792: DEBUG - + local target=/var/www/glances
2025-09-12 12:17:19,792: DEBUG - + local is_data=false
2025-09-12 12:17:19,792: DEBUG - + [[ -n glances ]]
2025-09-12 12:17:19,793: DEBUG - + [[ /var/www/glances =~ ^/var/log/glances/?*?$ ]]
2025-09-12 12:17:19,793: DEBUG - + [[ -n /home/yunohost.app/glances ]]
2025-09-12 12:17:19,793: DEBUG - + [[ /var/www/glances =~ ^/home/yunohost.app/glances ]]
2025-09-12 12:17:19,793: DEBUG - + [[ -n glances ]]
2025-09-12 12:17:19,793: DEBUG - ++ ynh_app_setting_get --key=do_not_backup_data
2025-09-12 12:17:19,795: DEBUG - ++ local _globalapp=glances
2025-09-12 12:17:19,795: DEBUG - ++ args_array=(['a']='app=' ['k']='key=')
2025-09-12 12:17:19,795: DEBUG - ++ local -A args_array
2025-09-12 12:17:19,795: DEBUG - ++ local app
2025-09-12 12:17:19,795: DEBUG - ++ local key
2025-09-12 12:17:19,795: DEBUG - ++ ynh_handle_getopts_args --key=do_not_backup_data
2025-09-12 12:17:19,796: DEBUG - +++ set +o
2025-09-12 12:17:19,796: DEBUG - +++ grep xtrace
2025-09-12 12:17:19,798: DEBUG - ++ local 'xtrace_enable=set -o xtrace'
2025-09-12 12:17:19,799: DEBUG - ++ set +o xtrace
2025-09-12 12:17:19,822: DEBUG - ++ app=glances
2025-09-12 12:17:19,822: DEBUG - ++ ynh_app_setting get glances do_not_backup_data
2025-09-12 12:17:19,823: DEBUG - +++ set +o
2025-09-12 12:17:19,824: DEBUG - +++ grep xtrace
2025-09-12 12:17:19,826: DEBUG - ++ local 'xtrace_enable=set -o xtrace'
2025-09-12 12:17:19,827: DEBUG - ++ set +o xtrace
2025-09-12 12:17:19,908: DEBUG - + local do_not_backup_data=
2025-09-12 12:17:19,908: DEBUG - + [[ false == true ]]
2025-09-12 12:17:19,909: DEBUG - + '[' '!' -e /var/www/glances ']'
2025-09-12 12:17:19,909: DEBUG - ++ realpath /var/www/glances
2025-09-12 12:17:19,910: DEBUG - + src_path=/var/www/glances
2025-09-12 12:17:19,911: DEBUG - + dest_path=var/www/glances
2025-09-12 12:17:19,911: DEBUG - + [[ -e var/www/glances ]]
2025-09-12 12:17:19,911: DEBUG - + local rel_dir=/apps/glances/backup
2025-09-12 12:17:19,911: DEBUG - + rel_dir=/apps/glances/backup/
2025-09-12 12:17:19,911: DEBUG - + dest_path=/apps/glances/backup/var/www/glances
2025-09-12 12:17:19,911: DEBUG - + dest_path=apps/glances/backup/var/www/glances
2025-09-12 12:17:19,912: DEBUG - ++ echo /var/www/glances
2025-09-12 12:17:19,913: DEBUG - ++ sed --regexp-extended 's/"/\"\"/g'
2025-09-12 12:17:19,916: DEBUG - + local src=/var/www/glances
2025-09-12 12:17:19,917: DEBUG - ++ echo apps/glances/backup/var/www/glances
2025-09-12 12:17:19,917: DEBUG - ++ sed --regexp-extended 's/"/\"\"/g'
2025-09-12 12:17:19,920: DEBUG - + local dest=apps/glances/backup/var/www/glances
2025-09-12 12:17:19,920: DEBUG - + echo '"/var/www/glances","apps/glances/backup/var/www/glances"'
2025-09-12 12:17:19,921: DEBUG - ++ dirname /home/yunohost.backup/tmp/test/apps/glances/backup/var/www/glances
2025-09-12 12:17:19,923: DEBUG - + mkdir --parents /home/yunohost.backup/tmp/test/apps/glances/backup/var/www
2025-09-12 12:17:19,926: DEBUG - + ynh_backup /etc/nginx/conf.d/glances.lucmartinon.com.d/glances.conf
2025-09-12 12:17:19,926: DEBUG - + local target=/etc/nginx/conf.d/glances.lucmartinon.com.d/glances.conf
2025-09-12 12:17:19,926: DEBUG - + local is_data=false
2025-09-12 12:17:19,926: DEBUG - + [[ -n glances ]]
2025-09-12 12:17:19,926: DEBUG - + [[ /etc/nginx/conf.d/glances.lucmartinon.com.d/glances.conf =~ ^/var/log/glances/?*?$ ]]
2025-09-12 12:17:19,927: DEBUG - + [[ -n /home/yunohost.app/glances ]]
2025-09-12 12:17:19,927: DEBUG - + [[ /etc/nginx/conf.d/glances.lucmartinon.com.d/glances.conf =~ ^/home/yunohost.app/glances ]]
2025-09-12 12:17:19,927: DEBUG - + [[ -n glances ]]
2025-09-12 12:17:19,927: DEBUG - ++ ynh_app_setting_get --key=do_not_backup_data
2025-09-12 12:17:19,927: DEBUG - ++ local _globalapp=glances
2025-09-12 12:17:19,927: DEBUG - ++ args_array=(['a']='app=' ['k']='key=')
2025-09-12 12:17:19,927: DEBUG - ++ local -A args_array
2025-09-12 12:17:19,927: DEBUG - ++ local app
2025-09-12 12:17:19,927: DEBUG - ++ local key
2025-09-12 12:17:19,928: DEBUG - ++ ynh_handle_getopts_args --key=do_not_backup_data
2025-09-12 12:17:19,928: DEBUG - +++ set +o
2025-09-12 12:17:19,929: DEBUG - +++ grep xtrace
2025-09-12 12:17:19,931: DEBUG - ++ local 'xtrace_enable=set -o xtrace'
2025-09-12 12:17:19,931: DEBUG - ++ set +o xtrace
2025-09-12 12:17:19,953: DEBUG - ++ app=glances
2025-09-12 12:17:19,953: DEBUG - ++ ynh_app_setting get glances do_not_backup_data
2025-09-12 12:17:19,954: DEBUG - +++ set +o
2025-09-12 12:17:19,955: DEBUG - +++ grep xtrace
2025-09-12 12:17:19,958: DEBUG - ++ local 'xtrace_enable=set -o xtrace'
2025-09-12 12:17:19,958: DEBUG - ++ set +o xtrace
2025-09-12 12:17:20,038: DEBUG - + local do_not_backup_data=
2025-09-12 12:17:20,038: DEBUG - + [[ false == true ]]
2025-09-12 12:17:20,038: DEBUG - + '[' '!' -e /etc/nginx/conf.d/glances.lucmartinon.com.d/glances.conf ']'
2025-09-12 12:17:20,039: DEBUG - ++ realpath /etc/nginx/conf.d/glances.lucmartinon.com.d/glances.conf
2025-09-12 12:17:20,040: DEBUG - + src_path=/etc/nginx/conf.d/glances.lucmartinon.com.d/glances.conf
2025-09-12 12:17:20,041: DEBUG - + dest_path=etc/nginx/conf.d/glances.lucmartinon.com.d/glances.conf
2025-09-12 12:17:20,041: DEBUG - + [[ -e etc/nginx/conf.d/glances.lucmartinon.com.d/glances.conf ]]
2025-09-12 12:17:20,041: DEBUG - + local rel_dir=/apps/glances/backup
2025-09-12 12:17:20,041: DEBUG - + rel_dir=/apps/glances/backup/
2025-09-12 12:17:20,041: DEBUG - + dest_path=/apps/glances/backup/etc/nginx/conf.d/glances.lucmartinon.com.d/glances.conf
2025-09-12 12:17:20,041: DEBUG - + dest_path=apps/glances/backup/etc/nginx/conf.d/glances.lucmartinon.com.d/glances.conf
2025-09-12 12:17:20,043: DEBUG - ++ echo /etc/nginx/conf.d/glances.lucmartinon.com.d/glances.conf
2025-09-12 12:17:20,043: DEBUG - ++ sed --regexp-extended 's/"/\"\"/g'
2025-09-12 12:17:20,046: DEBUG - + local src=/etc/nginx/conf.d/glances.lucmartinon.com.d/glances.conf
2025-09-12 12:17:20,047: DEBUG - ++ echo apps/glances/backup/etc/nginx/conf.d/glances.lucmartinon.com.d/glances.conf
2025-09-12 12:17:20,047: DEBUG - ++ sed --regexp-extended 's/"/\"\"/g'
2025-09-12 12:17:20,050: DEBUG - + local dest=apps/glances/backup/etc/nginx/conf.d/glances.lucmartinon.com.d/glances.conf
2025-09-12 12:17:20,050: DEBUG - + echo '"/etc/nginx/conf.d/glances.lucmartinon.com.d/glances.conf","apps/glances/backup/etc/nginx/conf.d/glances.lucmartinon.com.d/glances.conf"'
2025-09-12 12:17:20,051: DEBUG - ++ dirname /home/yunohost.backup/tmp/test/apps/glances/backup/etc/nginx/conf.d/glances.lucmartinon.com.d/glances.conf
2025-09-12 12:17:20,053: DEBUG - + mkdir --parents /home/yunohost.backup/tmp/test/apps/glances/backup/etc/nginx/conf.d/glances.lucmartinon.com.d
2025-09-12 12:17:20,055: DEBUG - + ynh_backup /etc/systemd/system/glances.service
2025-09-12 12:17:20,055: DEBUG - + local target=/etc/systemd/system/glances.service
2025-09-12 12:17:20,056: DEBUG - + local is_data=false
2025-09-12 12:17:20,056: DEBUG - + [[ -n glances ]]
2025-09-12 12:17:20,056: DEBUG - + [[ /etc/systemd/system/glances.service =~ ^/var/log/glances/?*?$ ]]
2025-09-12 12:17:20,056: DEBUG - + [[ -n /home/yunohost.app/glances ]]
2025-09-12 12:17:20,056: DEBUG - + [[ /etc/systemd/system/glances.service =~ ^/home/yunohost.app/glances ]]
2025-09-12 12:17:20,056: DEBUG - + [[ -n glances ]]
2025-09-12 12:17:20,056: DEBUG - ++ ynh_app_setting_get --key=do_not_backup_data
2025-09-12 12:17:20,057: DEBUG - ++ local _globalapp=glances
2025-09-12 12:17:20,057: DEBUG - ++ args_array=(['a']='app=' ['k']='key=')
2025-09-12 12:17:20,057: DEBUG - ++ local -A args_array
2025-09-12 12:17:20,057: DEBUG - ++ local app
2025-09-12 12:17:20,057: DEBUG - ++ local key
2025-09-12 12:17:20,057: DEBUG - ++ ynh_handle_getopts_args --key=do_not_backup_data
2025-09-12 12:17:20,058: DEBUG - +++ set +o
2025-09-12 12:17:20,058: DEBUG - +++ grep xtrace
2025-09-12 12:17:20,061: DEBUG - ++ local 'xtrace_enable=set -o xtrace'
2025-09-12 12:17:20,061: DEBUG - ++ set +o xtrace
2025-09-12 12:17:20,083: DEBUG - ++ app=glances
2025-09-12 12:17:20,084: DEBUG - ++ ynh_app_setting get glances do_not_backup_data
2025-09-12 12:17:20,085: DEBUG - +++ grep xtrace
2025-09-12 12:17:20,086: DEBUG - +++ set +o
2025-09-12 12:17:20,088: DEBUG - ++ local 'xtrace_enable=set -o xtrace'
2025-09-12 12:17:20,088: DEBUG - ++ set +o xtrace
2025-09-12 12:17:20,169: DEBUG - + local do_not_backup_data=
2025-09-12 12:17:20,169: DEBUG - + [[ false == true ]]
2025-09-12 12:17:20,169: DEBUG - + '[' '!' -e /etc/systemd/system/glances.service ']'
2025-09-12 12:17:20,170: DEBUG - ++ realpath /etc/systemd/system/glances.service
2025-09-12 12:17:20,172: DEBUG - + src_path=/etc/systemd/system/glances.service
2025-09-12 12:17:20,172: DEBUG - + dest_path=etc/systemd/system/glances.service
2025-09-12 12:17:20,172: DEBUG - + [[ -e etc/systemd/system/glances.service ]]
2025-09-12 12:17:20,172: DEBUG - + local rel_dir=/apps/glances/backup
2025-09-12 12:17:20,172: DEBUG - + rel_dir=/apps/glances/backup/
2025-09-12 12:17:20,172: DEBUG - + dest_path=/apps/glances/backup/etc/systemd/system/glances.service
2025-09-12 12:17:20,172: DEBUG - + dest_path=apps/glances/backup/etc/systemd/system/glances.service
2025-09-12 12:17:20,173: DEBUG - ++ echo /etc/systemd/system/glances.service
2025-09-12 12:17:20,174: DEBUG - ++ sed --regexp-extended 's/"/\"\"/g'
2025-09-12 12:17:20,176: DEBUG - + local src=/etc/systemd/system/glances.service
2025-09-12 12:17:20,177: DEBUG - ++ echo apps/glances/backup/etc/systemd/system/glances.service
2025-09-12 12:17:20,178: DEBUG - ++ sed --regexp-extended 's/"/\"\"/g'
2025-09-12 12:17:20,180: DEBUG - + local dest=apps/glances/backup/etc/systemd/system/glances.service
2025-09-12 12:17:20,180: DEBUG - + echo '"/etc/systemd/system/glances.service","apps/glances/backup/etc/systemd/system/glances.service"'
2025-09-12 12:17:20,182: DEBUG - ++ dirname /home/yunohost.backup/tmp/test/apps/glances/backup/etc/systemd/system/glances.service
2025-09-12 12:17:20,183: DEBUG - + mkdir --parents /home/yunohost.backup/tmp/test/apps/glances/backup/etc/systemd/system
2025-09-12 12:17:20,186: DEBUG - + ynh_print_info 'Backup script completed for glances. (YunoHost will then actually copy those files to the archive).'
2025-09-12 12:17:20,186: DEBUG - + echo 'Backup script completed for glances. (YunoHost will then actually copy those files to the archive).'
2025-09-12 12:17:20,186: DEBUG - + ynh_exit_properly
2025-09-12 12:17:20,186: INFO - Backup script completed for glances. (YunoHost will then actually copy those files to the archive).
2025-09-12 12:17:20,187: DEBUG - + local exit_code=0
2025-09-12 12:17:20,187: DEBUG - + [[ backup =~ ^install$|^upgrade$|^restore$ ]]
2025-09-12 12:17:20,187: DEBUG - + '[' 0 -eq 0 ']'
2025-09-12 12:17:20,187: DEBUG - + exit 0
2025-09-12 12:17:20,523: INFO - Creating a backup archive from the collected files…
2025-09-12 12:17:20,523: INFO - The archive will contain about 141MB of data.
2025-09-12 12:17:20,525: DEBUG - Calling the custom backup method 'borg'…
2025-09-12 12:17:20,526: DEBUG - Executing command '['sh', '-c', '/bin/bash -x "./05-borg_app" need_mount /home/yunohost.backup/tmp/test test /home/yunohost.backup/archives 148309784 \'\' 7>&1']'
2025-09-12 12:17:20,530: DEBUG - + set -Eeuo pipefail
2025-09-12 12:17:20,530: DEBUG - + borg=/var/www/borg/venv/bin/borg
2025-09-12 12:17:20,531: DEBUG - + app=borg
2025-09-12 12:17:20,531: DEBUG - ++ yunohost app setting borg passphrase
2025-09-12 12:17:20,835: DEBUG - + BORG_PASSPHRASE=lalalalalal
2025-09-12 12:17:20,836: DEBUG - ++ yunohost app setting borg repository
2025-09-12 12:17:21,140: DEBUG - + BORG_REPO=MYURL/backups
2025-09-12 12:17:21,140: DEBUG - + BORG_LOGGING_CONF=/var/www/borg/logging.conf
2025-09-12 12:17:21,141: DEBUG - + ssh-keygen -F 'MYURL'
2025-09-12 12:17:21,148: DEBUG - + BORG_RSH='ssh -i /root/.ssh/id_borg_ed25519 -oStrictHostKeyChecking=yes '
2025-09-12 12:17:21,149: DEBUG - + work_dir=/home/yunohost.backup/tmp/test
2025-09-12 12:17:21,149: DEBUG - + name=test
2025-09-12 12:17:21,149: DEBUG - + size=148309784
2025-09-12 12:17:21,150: DEBUG - + description=
2025-09-12 12:17:21,150: DEBUG - + case "$1" in
2025-09-12 12:17:21,150: DEBUG - + do_need_mount /home/yunohost.backup/tmp/test test 148309784 ''
2025-09-12 12:17:21,150: DEBUG - + true
2025-09-12 12:17:21,150: DEBUG - + exit 0
2025-09-12 12:17:21,284: DEBUG - Executing command '['sh', '-c', '/bin/bash -x "./05-borg_app" backup /home/yunohost.backup/tmp/test test /home/yunohost.backup/archives 148309784 \'\' 7>&1']'
2025-09-12 12:17:21,288: DEBUG - + set -Eeuo pipefail
2025-09-12 12:17:21,288: DEBUG - + borg=/var/www/borg/venv/bin/borg
2025-09-12 12:17:21,289: DEBUG - + app=borg
2025-09-12 12:17:21,289: DEBUG - ++ yunohost app setting borg passphrase
2025-09-12 12:17:21,593: DEBUG - + BORG_PASSPHRASE=
2025-09-12 12:17:21,594: DEBUG - ++ yunohost app setting borg repository
2025-09-12 12:17:21,894: DEBUG - + BORG_REPO=MYURL/backups
2025-09-12 12:17:21,894: DEBUG - + BORG_LOGGING_CONF=/var/www/borg/logging.conf
2025-09-12 12:17:21,894: DEBUG - + ssh-keygen -F 'MYURL'
2025-09-12 12:17:21,902: DEBUG - + BORG_RSH='ssh -i /root/.ssh/id_borg_ed25519 -oStrictHostKeyChecking=yes '
2025-09-12 12:17:21,902: DEBUG - + work_dir=/home/yunohost.backup/tmp/test
2025-09-12 12:17:21,902: DEBUG - + name=test
2025-09-12 12:17:21,903: DEBUG - + size=148309784
2025-09-12 12:17:21,903: DEBUG - + description=
2025-09-12 12:17:21,903: DEBUG - + case "$1" in
2025-09-12 12:17:21,903: DEBUG - + do_backup /home/yunohost.backup/tmp/test test 148309784 ''
2025-09-12 12:17:21,903: DEBUG - + export BORG_PASSPHRASE
2025-09-12 12:17:21,903: DEBUG - + export BORG_REPO
2025-09-12 12:17:21,903: DEBUG - + export BORG_RSH
2025-09-12 12:17:21,903: DEBUG - + export BORG_LOGGING_CONF
2025-09-12 12:17:21,903: DEBUG - + export BORG_RELOCATED_REPO_ACCESS_IS_OK=yes
2025-09-12 12:17:21,904: DEBUG - + BORG_RELOCATED_REPO_ACCESS_IS_OK=yes
2025-09-12 12:17:21,904: DEBUG - + work_dir=/home/yunohost.backup/tmp/test
2025-09-12 12:17:21,904: DEBUG - + name=test
2025-09-12 12:17:21,904: DEBUG - + size=148309784
2025-09-12 12:17:21,904: DEBUG - + description=
2025-09-12 12:17:21,904: DEBUG - + set +e
2025-09-12 12:17:21,904: DEBUG - + /var/www/borg/venv/bin/borg list
2025-09-12 12:17:24,581: DEBUG - + /var/www/borg/venv/bin/borg init -e repokey
2025-09-12 12:17:27,120: DEBUG - + echo 'Hello,
2025-09-12 12:17:27,121: DEBUG -
2025-09-12 12:17:27,121: DEBUG - Your first backup on MYURL/backups is starting.
2025-09-12 12:17:27,121: DEBUG -
2025-09-12 12:17:27,121: DEBUG - This is an automated message from your beloved YunoHost server.'
2025-09-12 12:17:27,121: DEBUG - + /usr/bin/mail.mailutils -a 'Content-Type: text/plain; charset=UTF-8' -s '[YNH] First backup is starting' root
2025-09-12 12:17:27,170: DEBUG - + set -e
2025-09-12 12:17:27,170: DEBUG - + pushd /home/yunohost.backup/tmp/test
2025-09-12 12:17:27,170: DEBUG - /home/yunohost.backup/tmp/test /etc/yunohost/hooks.d/backup_method
2025-09-12 12:17:27,170: DEBUG - + /var/www/borg/venv/bin/borg create --exclude-if-present .nobackup --stats '::test-{now}' .
2025-09-12 12:17:29,790: DEBUG - + retcode=2
2025-09-12 12:17:29,791: DEBUG - + popd
2025-09-12 12:17:29,791: DEBUG - /etc/yunohost/hooks.d/backup_method
2025-09-12 12:17:29,791: DEBUG - + [[ 2 == 1 ]]
2025-09-12 12:17:29,791: DEBUG - + [[ 2 != 0 ]]
2025-09-12 12:17:29,791: DEBUG - + exit 2
2025-09-12 12:17:29,893: ERROR - Could not run script: /etc/yunohost/hooks.d/backup_method/05-borg_app
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/yunohost/hook.py", line 302, in hook_callback
hook_return = hook_exec(
^^^^^^^^^^
File "/usr/lib/python3/dist-packages/yunohost/hook.py", line 428, in hook_exec
raise YunohostError("hook_exec_failed", path=path)
yunohost.utils.error.YunohostError: Could not run script: /etc/yunohost/hooks.d/backup_method/05-borg_app
[10:36:10] <Aleks (he/him/il/lui)> Still need the bit from /var/log/borg i think
[10:42:08] <Luc (he/him)> aaah, the answer was in /var/log/borg/borg.log
[10:42:36] <Luc (he/him)> it tells me the borg repo doens't exist, but I think it makes sense, I have not created it yet, I just setup the connection to the ssh host
[10:45:34] <Luc (he/him)> ah no, it tries to create it but there is a permission problem
[10:49:48] <Cippr> Aleks (he/him/il/lui): Bonjour, je n'ai reçu ni invitation ni notification ... ce n'est pas grave ;-)
J'essaie ce soir ou demain de mettre à disposition les logs de l'upgrade raté de Nextcloud.
[10:52:48] <Luc (he/him)> ah ben ya un autre truc bizarre: maintenant que vois le probleme je veux changer la config de Borg sur
https://lucmartinon.com/yunohost/admin/#/apps/borg/_core/main
mais les changements que je fais la ne sont pas pris en compte
[10:53:16] <Luc (he/him)> meme si je raffraichis la page ca revient a la config que j'avais mis lors de l'install
[10:53:34] <Luc (he/him)> je suppose uqe je peux le changer via la ligne de commande?
[11:01:41] <Luc (he/him)> ou sinon je desinstalle / réinstalle mais c'est un peu bourrin, et ca va peut etre changer la clé ssh?
[11:29:40] <lautre> > <@lucberlin:matrix.org> ah ben ya un autre truc bizarre: maintenant que vois le probleme je veux changer la config de Borg sur
> https://lucmartinon.com/yunohost/admin/#/apps/borg/_core/main
> mais les changements que je fais la ne sont pas pris en compte

Il y a des services à relancer alors?
[11:30:29] <Luc (he/him)> ben je vois rien d'arreter dans tools > services
[11:31:40] <Aleks (he/him/il/lui)> can you share the actual error message
[11:34:00] <Luc (he/him)> OK, j'ai juste reessayé et la la config a bien sauvegardé, j'ai relancé manuellement
yunohost backup create -n test --apps glances --method borg
[11:34:04] <Luc (he/him)> et ca a marché!
[11:38:03] <Luc (he/him)> Je relance la vrai backup maintenant mais je pense que ca va marcher. Par contre il reste un truc bizarre: j'arrive pas à changer le parametre de la regularité des backup via l'interface. Je mets "Daily" qui est une des valeurs suggérées, je sauve, et quand ca rafraichit la case est toujours vide
[12:43:59] <rodinux> Chez moi aussi mais c'est pris en compte, si ça peux te rassurer
[12:46:26] <rodinux> j'ai une question avec borg aussi... dans le cas où on installe borg backup sur une yunohost et un serveur borg sur une machine sans yunohost... qu'est-ce qui est juducieux de mettre dans le fichier `authorized_keys` ? juste la clé ssh ?
[12:47:15] <rodinux> sachant que du côté serveur il est installé juste avec les paquets debian je crois bien
[12:50:23] <rodinux> On a tester tout à l'heure et la sauvegarde s'est effectuée, déjà c'est positif, par contre j'ai pu vérifier depuis le yunohost les sauvegardes avec des commandes borg et les bonnes variables les fichiers, cool aussi. Puis maintenant je n'arrive plus à le refaire avec un `Remote: borg@xx.xxx.xxx.xxx: Permission denied (publickey).
Connection closed by remote host. Is borg working on the server?`
[12:56:17] <rodinux> Est-ce que l'on ne devrait pas mettre une chose du style `command="borg serve --storage-quota 40G --restrict-to-repository /home/user/backup",no-pty,no-agent-forwarding,no-port-forwarding,no-X11-forwarding,no-user-rc ssh-ed25519 mypublickeyyyyyyyyyyyyyyyyyyyyyy root@mydomain.fr`
[13:02:12] <florent> Oui, c'est ça
(tu peux sécuriser un peu plus si tu le souhaites)
[13:02:49] <rodinux> Pourtant je peux bien me connecter à l'user borg avec cette commande `ssh -i /root/.ssh/id_borg_ed25519 -pxxxx borg@xx.xxx.xxx.xxx` depuis yunohost...
[13:03:14] <florent> C'est justement la sécurisation dont je parle plus haut, mais c'est optionnel. Tu peux juste te contenter de la clé publique.
[13:04:10] <florent> Tu peux jeter un œil à ce que fait borgserver_ynh :
https://github.com/YunoHost-Apps/borgserver_ynh/blob/ee909667176f871262a7a49e11858fe09a9c277f/scripts/_common.sh#L28-L33
[13:07:25] <florent> Tu es certain d'essayer de joindre borg avec le bon port (l'option `-p`) quand tu lances borg côté client ?
[13:08:15] <rodinux> Ma question est: est-ce que le fait que sur le borgserver il n'y a pas ces venv python ne pose pas de problème ? je peux tout de même mettre la même commande ? oui je dois passer par ce port...
[13:09:05] <rodinux> à je dois l'ajouter aussi dans les variables pour borg list... c'est ça ?
[13:09:41] <florent> Si tu n'installes pas borg via `pip`, ce n'est absolument pas nécessaire
[13:10:04] <rodinux> `export BORG_RSH="ssh -i /root/.ssh/id_${app}_ed25519 -pxxxx -oStrictHostKeyChecking=yes"` dans la variable...
[13:34:44] <Luc (he/him)> oui moi c'est exactement ma config du coup, et ca marche!
[13:44:03] <rodinux> j'ai un truc qui ne va pas
```
PermissionError: [Errno 13] Permission denied: '/home/borg/backup/config'
[13:45:21] <florent> Tu as vérifier les droits du dossier `config` et de ses parents ? il faut qu'il y ait les droits `rwx` à chaque fois
[13:47:46] <florent> Je précise, ces droits doivent être pour le owner et vérifie aussi que c'est bien `borg` le propriétaire de `borg/`, de `backup/` et de `config/`
[13:50:32] <rodinux> Ben, tout à l'heure je pouvais, mais là je suis coincé et dépendant de quelqu'un qui peut accéder au serveur... Curieux car au début il y a eu une première sauvegarde et j'ai pu depuis le yunohost checker les dossiers avec des commandes borg...
[13:53:56] <rodinux> J'ai eu cela comme erreur
```
borg list "$repository"
Traceback (most recent call last):

File "/usr/lib/python3/dist-packages/borg/remote.py", line 252, in serve
res = f(**args)

File "/usr/lib/python3/dist-packages/borg/remote.py", line 380, in open
self.repository.__enter__() # clean exit handled by serve() method
~~~~~~~~~~~~~~~~~~~~~~~~~^^

File "/usr/lib/python3/dist-packages/borg/repository.py", line 217, in __enter__
self.open(self.path, bool(self.exclusive), lock_wait=self.lock_wait, lock=self.do_lock)
~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/usr/lib/python3/dist-packages/borg/repository.py", line 470, in open
with open(os.path.join(self.path, 'config')) as fd:
~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

PermissionError: [Errno 13] Permission denied: '/home/borg/backup/config'

Borg server: Platform: Linux localhost 6.12.45-current-bcm2711 #1 SMP PREEMPT Thu Sep 11 16:45:21 UTC 2025 aarch64
Borg server: Linux: Unknown Linux
Borg server: Borg: 1.4.0 Python: CPython 3.13.5 msgpack: 1.0.3 fuse: None [pyfuse3,llfuse]
Borg server: PID: 31336 CWD: /home/borg
Borg server: sys.argv: ['/usr/bin/borg', 'serve', '--storage-quota', '40G', '--restrict-to-repository', '/home/borg/backup']
Borg server: SSH_ORIGINAL_COMMAND: 'borg serve'
Platform: Linux domainyuno.tld 6.1.11-meson64 #23.02.2 SMP PREEMPT Sat Feb 18 00:07:55 UTC 2023 aarch64
[13:55:01] <florent> rodinux: Tu as toujours `command=` dans le `authorized_keys` ?
[13:55:24] <florent> En particulier :
```
command="borg serve --storage-quota 40G --restrict-to-repository /home/user/backup"
```
[13:56:34] <florent> Parce que le souci, c'est que tu contrains ton client à accéder à `/home/`**user**`/backup`, et pas `/home/`**borg**`/backup`.
[13:56:42] <rodinux> C'est depuis que en me connectant sur le serveur j'ai du mettre une ligne `command=` que je me suis fait bannir je pense
[13:57:13] <florent> Ça doit être lié. En tout cas, cette correction est une étape nécessaire pour avancer
[13:57:21] <rodinux> pour le coup dans cette config le user s'appelle borg..⋅
[14:08:00] <rodinux> pourtant je vois bien dans le message d'erreur `Borg server: sys.argv: ['/usr/bin/borg', 'serve', '--storage-quota', '40G', '--restrict-to-repository', '/home/borg/backup']`
[14:09:38] <florent> Je t'invite quand même à regarder avec la personne qui a accès au serveur
[14:10:22] <rodinux> Donc il lit bien la commande qui se trouve dans le serveur... Mais oui je dois voir avec elle, obligé merci beaucoup en tous les cas
[14:12:01] <florent> Oui, car `command=` c'est pour contraindre la commande qui est permise d'être jouée par le client. Or ton client envoies une autre commande (cf ce que tu montres dans ta log ci-dessus avec `sys.argv`)
[14:12:02] <florent> De rien :)
[14:14:03] <rodinux> Ahhaaa alors je comprends mieux, du coup la bonne commande serait avec `command="PATH=/var/www/borgserver/venv/bin/:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin borg serve` au début...
[14:26:03] <florent> Je ne suis pas certain que tu es besoin de spécifier le `PATH`
[14:26:44] <florent> Et ensuite, tu peux toujours spécifier les options, mais les valeurs doivent correspondre à ce que le client lance
[14:35:45] <rodinux> dans l'erreur au-dessus j'ai cru comprendre que la commande a essayé de lancer `/usr/bin/borg` ce qui induit en erreur par rapport à la commande `/var/www/borgserver/venv/bin/ borg` ???
[14:38:32] <rodinux> J'ai du me tromper surtout quelque part, je crois avoir mis `command="borg serve --storage-quota 40G --restrict-to-repository /home/borg/backup",no-pty,no-agent-forwarding,no-port-forwarding,no-X11-forwarding,no-user-rc ssh-ed25519 mypublickeyyyyyyyyyyyyyyyyyyyyyy root@mydomain.fr` dans le fichier authorized_keys, mais il faudra que je vérifie... à suivre
[15:52:12] <rodinux> c'était bien le fichier `config` qui avait pas la bonne permission de l'user... merci
[17:46:22] <Cippr> Aleks (he/him/il/lui): Bonsoir, le simple fait d'avoir passé le timeout de 60 à 300 dans ce fichier `/usr/share/yunohost/helpers.v2.1.d/systemd` m'a permis de faire l'upgrade de Nextcloud 31.0.8-ynh2 à la version 31.0.9-ynh1 sans faire aucun autre changement d'aucune sorte.
Du coup, comme tu travailles a priori sur un fix de ce genre, est-ce que je repasse en 60 ou bien je peux le laisser à 300 ?
[17:59:21] <Aleks (he/him/il/lui)> Laisse le à 300, anyway le fichier sera écrasé à la prochaine maj de yunohost
[17:59:49] <Aleks (he/him/il/lui)> Jvais tâcher de push et release le fix dans le train tout à l'heure
[18:18:03] <Cippr> eric_G: Bonsoir, j'ai eu un souci lors de l'upgrade de Nextcloud 31.0.8-ynh2 vers 31.0.9-ynh1 ce matin. En revanche l'upgrade est passée ce soir en ayant simplement changé la valeur du timeout du helper v2.1 de 60 à 300.
Je ne sais pas si ça a du sens vis-à-vis de ton travail sur le `watcher.service` que j'ai vu passer sur le forum mais je souhaitais que tu aies cette information.