Installe l'archive self-contained publiée en release du dépôt du code, amd64 ou arm64 selon la machine. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
45 lines
1.8 KiB
Bash
Executable File
45 lines
1.8 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# Chemin imposé : dans le contexte d'exécution de backup/restore, `_common.sh` n'est
|
|
# pas dans le répertoire courant.
|
|
source ../settings/scripts/_common.sh
|
|
source /usr/share/yunohost/helpers
|
|
|
|
#=================================================
|
|
# INSTANTANÉ COHÉRENT DE LA BASE
|
|
#=================================================
|
|
ynh_print_info "Capture d'une copie cohérente de la base SQLite..."
|
|
|
|
# Voir `_common.sh` pour le détail : la base est en WAL, un `cp` du seul fichier
|
|
# `.db` sauvegarderait une base tronquée. `.backup` produit un fichier unique et
|
|
# cohérent sans arrêter le service.
|
|
#
|
|
# Le service continue de tourner pendant la sauvegarde. C'est un choix assumé :
|
|
# l'API de sauvegarde en ligne de SQLite garantit la cohérence du fichier produit, et
|
|
# l'alternative — couper le service à chaque sauvegarde nocturne — coûterait une
|
|
# indisponibilité pour un gain nul.
|
|
mabibli_instantane_base "$data_dir"
|
|
|
|
#=================================================
|
|
# DÉCLARATION DES CHEMINS À SAUVEGARDER
|
|
#=================================================
|
|
|
|
ynh_backup "$install_dir"
|
|
|
|
# Emporte l'instantané cohérent. Les `mabibli.db`, `-wal` et `-shm` vivants s'y
|
|
# trouvent aussi : la restauration les ignore au profit de l'instantané.
|
|
#
|
|
# À noter : le cœur de YunoHost saute `data_dir` lors de la sauvegarde de sécurité
|
|
# qui précède une mise à jour (`BACKUP_CORE_ONLY`). Ce n'est pas gênant, une mise à
|
|
# jour ne touchant pas au répertoire de données.
|
|
ynh_backup "$data_dir"
|
|
|
|
ynh_backup "/etc/nginx/conf.d/$domain.d/$app.conf"
|
|
ynh_backup "/etc/systemd/system/$app.service"
|
|
|
|
#=================================================
|
|
# FIN DU SCRIPT
|
|
#=================================================
|
|
|
|
ynh_print_info "Sauvegarde de $app préparée. (YunoHost copie maintenant ces fichiers dans l'archive.)"
|