# Scripts Recette Ce dossier contient les scripts utilisés pour l’environnement **RECETTE** du projet **Ferme**. Les scripts permettent principalement : * la **sauvegarde automatique des bases de données PostgreSQL** * la **vérification du statut des applications web** --- # Scripts disponibles ## backup-bdd-recette.sh Script permettant de réaliser une **sauvegarde des bases de données PostgreSQL**. Fonctionnement : * export des bases PostgreSQL définies dans la configuration * export des utilisateurs PostgreSQL * création de dumps au format PostgreSQL (`pg_dump -Fc`) * transfert des sauvegardes vers un serveur distant * génération de logs locaux * envoi de notifications Discord en cas de succès ou d’erreur --- ## check-statut-recette.sh Script permettant de **vérifier la disponibilité des applications web**. Le script effectue les vérifications suivantes : * résolution DNS du site * connexion HTTP au service * vérification du code HTTP retourné Une application est considérée : * **OK** si le code HTTP est entre **200 et 399** * **DOWN** si la résolution DNS échoue ou si une erreur HTTP est détectée Chaque vérification est enregistrée dans un **fichier de log** et une notification peut être envoyée sur **Discord**. --- # Installation 1. Clonez le dépôt Git : ```bash git clone https://gitea.malio.fr/MALIO-DEV/Scripts-Serveur.git ``` 2. Accédez au dossier des scripts : ```bash cd Scripts-Serveur/RecetteScripts ``` 3. Copiez le fichier d’environnement : ```bash cp .env.example .env ``` 4. Modifiez les variables du fichier `.env` selon votre configuration. --- # Utilisation Donnez les permissions d’exécution aux scripts : ```bash chmod +x backup-bdd-recette.sh chmod +x check-statut-recette.sh ``` Exécution manuelle : ```bash ./backup-bdd-recette.sh ./check-statut-recette.sh ``` --- # Exécution automatique avec Cron Ouvrez le crontab : ```bash crontab -e ``` Exemple de planification : Backup des bases tous les jours à 19h : ```bash 0 19 * * * /chemin/vers/le/script/backup-bdd-recette.sh ``` Vérification des applications tous les jours à 19h : ```bash 0 19 * * * /chemin/vers/le/script/check-statut-recette.sh ``` --- # Avertissement Assurez-vous que : * PostgreSQL est accessible depuis la machine exécutant le script * la clé SSH pour le transfert des sauvegardes est configurée * les variables du fichier `.env` sont correctement renseignées * les commandes `curl`, `psql` et `pg_dump` sont installées sur le système