- Remove redundant variables: BACKUP_USER, BACKUP_STORAGE_PATH, BACKUP_REPO_NAME - Add common Docker variables: PUID, PGID, TZ for centralized management - Fix PROJECT_ROOT and SERVICES_BASE_DIR path calculations - Reorganize configuration sections for better clarity - Export common variables for use across services 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
65 lines
2.4 KiB
Bash
65 lines
2.4 KiB
Bash
#!/bin/bash
|
|
# Configuration centralisée pour le système de backup citadel
|
|
# Copiez ce fichier vers backup.env et adaptez les valeurs selon votre environnement
|
|
|
|
# === Configuration Essentielle ===
|
|
# Utilisateur système qui exécutera les backups
|
|
CITADEL_USER="${CITADEL_USER:-citadel}"
|
|
# Racine du projet citadel
|
|
PROJECT_ROOT="${PROJECT_ROOT:-/home/citadel}"
|
|
# Répertoire contenant les services à sauvegarder
|
|
SERVICES_BASE_DIR="${SERVICES_BASE_DIR:-$PROJECT_ROOT/services}"
|
|
|
|
# === Variables Communes ===
|
|
# User/Group IDs pour les containers Docker
|
|
PUID="${PUID:-1000}"
|
|
PGID="${PGID:-1000}"
|
|
# Timezone globale
|
|
TZ="${TZ:-Europe/Paris}"
|
|
|
|
# === Stockage Restic ===
|
|
# Chemin de base pour le stockage des backups
|
|
RESTIC_STORAGE="${RESTIC_STORAGE:-/mnt/data/backup}"
|
|
# Nom du repository Restic
|
|
RESTIC_REPO="${RESTIC_REPO:-citadel}"
|
|
|
|
# === Système ===
|
|
# Planning de sauvegarde par défaut (format systemd)
|
|
# Exemples: "*-*-* 03:00:00" (quotidien 3h), "Mon *-*-* 04:00:00" (lundi 4h)
|
|
DEFAULT_BACKUP_SCHEDULE="${DEFAULT_BACKUP_SCHEDULE:-*-*-* 03:00:00}"
|
|
# Répertoire des logs système
|
|
LOG_DIR="${LOG_DIR:-/var/log}"
|
|
# Répertoire temporaire
|
|
TEMP_DIR="${TEMP_DIR:-/tmp}"
|
|
# Fichier de configuration Restic (généré automatiquement)
|
|
RESTIC_CONFIG_FILE="${RESTIC_CONFIG_FILE:-$HOME/.config/citadel/restic.conf}"
|
|
|
|
# === Politique de Rétention ===
|
|
# Nombre de sauvegardes quotidiennes à conserver
|
|
RETENTION_DAILY="${RETENTION_DAILY:-7}"
|
|
# Nombre de sauvegardes hebdomadaires à conserver
|
|
RETENTION_WEEKLY="${RETENTION_WEEKLY:-4}"
|
|
# Nombre de sauvegardes mensuelles à conserver
|
|
RETENTION_MONTHLY="${RETENTION_MONTHLY:-12}"
|
|
# Nombre de sauvegardes annuelles à conserver
|
|
RETENTION_YEARLY="${RETENTION_YEARLY:-3}"
|
|
|
|
# === Variables Dérivées (automatiquement calculées) ===
|
|
BACKUP_HOME="${BACKUP_HOME:-/home/$CITADEL_USER}"
|
|
BACKUP_BASE_DIR="${BACKUP_BASE_DIR:-$BACKUP_HOME/backup}"
|
|
BACKUP_REPOSITORY="${BACKUP_REPOSITORY:-$RESTIC_STORAGE/$RESTIC_REPO}"
|
|
RESTIC_CACHE_DIR="${RESTIC_CACHE_DIR:-$TEMP_DIR/restic-cache}"
|
|
CONFIG_DIR="${CONFIG_DIR:-$HOME/.config/citadel}"
|
|
SYSTEMD_DIR="${SYSTEMD_DIR:-/etc/systemd/system}"
|
|
SERVICE_TEMPLATE="${SERVICE_TEMPLATE:-service-backup@.service}"
|
|
TIMER_TEMPLATE="${TIMER_TEMPLATE:-service-backup@.timer}"
|
|
|
|
# === Variables d'export pour Restic ===
|
|
export RESTIC_REPOSITORY="$BACKUP_REPOSITORY"
|
|
export RESTIC_CACHE_DIR
|
|
|
|
# === Variables d'export communes ===
|
|
export PUID
|
|
export PGID
|
|
export TZ
|