From 13457ceb5a74686cd7a5e4180a87f130d1e2f73d Mon Sep 17 00:00:00 2001 From: kevin Date: Tue, 17 Mar 2026 14:26:49 +0100 Subject: [PATCH] fix: readme --- .env.example | 20 +++++++++++--------- server/api/disk.get.ts | 30 ++++++++++++++++++++---------- server/utils/backup-scripts.ts | 16 +++++++++++++++- 3 files changed, 46 insertions(+), 20 deletions(-) diff --git a/.env.example b/.env.example index fb07bd1..21ea0cf 100644 --- a/.env.example +++ b/.env.example @@ -10,14 +10,16 @@ BACKUPS_REMOTE_HOST= BACKUPS_REMOTE_ROOT= BACKUPS_MAX_FILES= -# DISK_COMMAND_REMOTE et DISK_COMMAND_LOCAL pour les commandes de vérification de l'espace disque -DISK_COMMAND_REMOTE= -DISK_COMMAND_LOCAL= - -# BACKUP_SCRIPT_COMMAND_BACKUP_BDD_RECETTE, BACKUP_SCRIPT_COMMAND_CHECK_STATUT_RECETTE et BACKUP_SCRIPT_COMMAND_BACKUP_VAULTWARDEN pour les commandes de backup et de vérification des statuts -BACKUP_SCRIPT_COMMAND_BACKUP_BDD_RECETTE= -BACKUP_SCRIPT_COMMAND_CHECK_STATUT_RECETTE= -BACKUP_SCRIPT_COMMAND_BACKUP_VAULTWARDEN= +# Paramètres utilisés pour construire les commandes disque et backup +DISK_REMOTE_HOST=malio-b +DISK_LOCAL_SCRIPT_DIR=/home/malio/Malio-ops/CheckStorage +DISK_REMOTE_SCRIPT_DIR=/home/malio-b/Malio-ops/CheckStorage +RECETTE_SCRIPTS_DIR=/home/malio/Malio-ops/RecetteScripts +VAULTWARDEN_SSH_HOST=bitwarden +VAULTWARDEN_SCRIPTS_DIR=/home/matt/vaultwarden/Malio-ops/BackupVaultWarden # A quelle heure les backups doivent être effectués (format 24h) -BACKUPS_HOUR=19 \ No newline at end of file +BACKUPS_HOUR=19 + +#Mettre à true pour que les cookies d'authentification soient sécurisés (HTTPS uniquement) +AUTH_COOKIE_SECURE= diff --git a/server/api/disk.get.ts b/server/api/disk.get.ts index dc11a36..54554f6 100644 --- a/server/api/disk.get.ts +++ b/server/api/disk.get.ts @@ -1,33 +1,43 @@ import { exec } from "child_process" type DiskSource = { - key: string + key: "remote" | "local" label: string - command: string - args?: string[] } const diskSources: DiskSource[] = [ { key: "remote", - label: "Serveur distant", - command: "ssh", - args: [] + label: "Serveur distant" }, { key: "local", - label: "Machine locale", - command: "bash", - args: [] + label: "Machine locale" } ] +function getDefaultCommand(source: DiskSource) { + const localScriptDir = process.env.DISK_LOCAL_SCRIPT_DIR || "/home/malio/Malio-ops/CheckStorage" + const remoteHost = process.env.DISK_REMOTE_HOST || "malio-b" + const remoteScriptDir = process.env.DISK_REMOTE_SCRIPT_DIR || "/home/malio-b/Malio-ops/CheckStorage" + + if (source.key === "local") { + return `cd ${localScriptDir} && bash check-storage.sh` + } + + return `ssh ${remoteHost} "cd ${remoteScriptDir} && ./check-storage.sh"` +} + function getEnvCommand(source: DiskSource) { const envKey = `DISK_COMMAND_${source.key.toUpperCase()}` const legacyEnvKey = source.key === "remote" ? "DISK_REMOTE_COMMAND" : source.key === "local" ? "DISK_LOCAL_COMMAND" : "" - return process.env[envKey] || (legacyEnvKey ? process.env[legacyEnvKey] : undefined) || null + return ( + process.env[envKey] || + (legacyEnvKey ? process.env[legacyEnvKey] : undefined) || + getDefaultCommand(source) + ) } function runShellCommand(command: string): Promise { diff --git a/server/utils/backup-scripts.ts b/server/utils/backup-scripts.ts index 12b026d..199728a 100644 --- a/server/utils/backup-scripts.ts +++ b/server/utils/backup-scripts.ts @@ -25,7 +25,21 @@ export const backupScripts: BackupScript[] = [ } ] +const getDefaultBackupScriptCommands = (): Record => { + const recetteScriptsDir = process.env.RECETTE_SCRIPTS_DIR || "/home/malio/Malio-ops/RecetteScripts" + const vaultwardenHost = process.env.VAULTWARDEN_SSH_HOST || "bitwarden" + const vaultwardenScriptsDir = + process.env.VAULTWARDEN_SCRIPTS_DIR || "/home/matt/vaultwarden/Malio-ops/BackupVaultWarden" + + return { + "backup-bdd-recette": `cd ${recetteScriptsDir} && bash backup-bdd-recette.sh`, + "check-statut-recette": `cd ${recetteScriptsDir} && bash check-statut-recette.sh`, + "backup-vaultwarden": + `ssh ${vaultwardenHost} "cd ${vaultwardenScriptsDir} && bash backup-vaultwarden.sh"` + } +} + export function getBackupScriptCommand(key: string) { const envKey = `BACKUP_SCRIPT_COMMAND_${key.toUpperCase().replace(/-/g, "_")}` - return process.env[envKey] || null + return process.env[envKey] || getDefaultBackupScriptCommands()[key] || null }