fix : changelog plus readme a jour

This commit is contained in:
2026-03-18 12:02:30 +01:00
parent f3ebb4c011
commit fac2a5b47f
2 changed files with 172 additions and 37 deletions

View File

@@ -35,9 +35,11 @@ SSH_KEY
* [#378] Script Backup BDD Vaultwarden
* [#381] Variabiliser tous les scripts
* [#384] Fix Correctif
* [#390] Rotation des script
* [#390] Rotation des scripts
* [#392] Scripts de reconstruction des bases de données
* [#427] Correctifs
* [#433] Ajout du dossier RebuildBdd et creation de la theorique du script de rebuild de base de données
* [#002-19] correctif generaliser sur l'application suite aux nombreuses modifications et ajout de script
### Changed
### Fixed

205
README.md
View File

@@ -1,56 +1,189 @@
# Malio-Ops
Voici une version **corrigée, structurée et professionnalisée**, adaptée à votre contexte actuel (scripts rebuild + infra + exploitation).
Format directement exploitable pour README.md / BookStack.
Ce depot centralise les scripts d'exploitation et de maintenance utilises pour l'infrastructure MALIO. Il sert de base de versionnement pour les sauvegardes, la supervision, les operations PostgreSQL et la reconstruction de bases.
---
## Objectif
# MALIO-OPS
Le depot permet de :
Ce dépôt centralise lensemble des **scripts dexploitation, de maintenance et dautomatisation** utilisés dans linfrastructure MALIO.
Il constitue une base unique de **versionnement, standardisation et industrialisation** des opérations techniques (backup, supervision, PostgreSQL, reconstruction de bases).
* suivre les modifications des scripts dans le temps
* conserver des versions stables et reproductibles
* mutualiser la configuration et les bonnes pratiques d'exploitation
* centraliser la documentation technique associee
---
## Structure du depot
# Objectif
Le depot est organise par dossier fonctionnel :
Le dépôt permet de :
* [CheckStorage](CheckStorage) : surveillance de l'espace disque et alertes Discord
* [BackupVaultWarden](BackupVaultWarden) : sauvegarde et transfert distant des donnees Vaultwarden
* [RecetteScripts](RecetteScripts) : scripts historiques de backup, monitoring et rebuild pour l'environnement de recette
* [RebuildBdd](RebuildBdd) : orchestration de reconstruction de bases PostgreSQL, bootstrap de cibles et checks de preparation
* assurer le **versionnement et la traçabilité** des scripts
* garantir des **exécutions reproductibles et fiables**
* mutualiser les **bonnes pratiques dexploitation**
* centraliser la **configuration et la documentation technique**
* faciliter le **déploiement automatisé des environnements**
## Focus RebuildBdd
---
Le dossier [RebuildBdd](RebuildBdd) regroupe la nouvelle chaine de reconstruction de base. Il contient notamment :
# Structure du dépôt
* [run-rebuild-bdd.sh](/home/matte/Malio-ops/RebuildBdd/run-rebuild-bdd.sh) : point d'entree principal
* [rebuild-bdd-core.sh](/home/matte/Malio-ops/RebuildBdd/rebuild-bdd-core.sh) : logique de restauration
* [bootstrap-target-host.sh](/home/matte/Malio-ops/RebuildBdd/bootstrap-target-host.sh) : preparation de la machine cible
* [create-target-config.sh](/home/matte/Malio-ops/RebuildBdd/create-target-config.sh) : generation de configuration cible
* [Checkup](RebuildBdd/Checkup) : scripts de verification prealable
* [Config](RebuildBdd/Config) : fichiers d'exemple de configuration globale et par cible
Organisation par domaine fonctionnel :
La documentation detaillee est disponible dans [RebuildBdd/README.md](/home/matte/Malio-ops/RebuildBdd/README.md).
## CheckStorage
## Prerequis
* Surveillance de lespace disque
* Alerting via Discord
* Vérification proactive des capacités
Les scripts du depot reposent principalement sur :
## BackupVaultWarden
* `bash`
* `jq`
* `curl`
* `ssh`
* `scp`
* Sauvegarde des données Vaultwarden
* Archivage et transfert distant sécurisé
* Gestion des logs et rétention
Selon les scripts, d'autres outils peuvent etre necessaires, notamment PostgreSQL (`psql`, `pg_dump`, `pg_restore`) ou `tar`.
## RecetteScripts
## Configuration
* Scripts legacy pour environnement de recette
* Backup PostgreSQL
* Monitoring applicatif
* Rebuild simplifié
Un modele commun est disponible dans [global.env.exemple](global.env.exemple). Il sert de base pour les variables partagees entre plusieurs scripts.
⚠️ Dossier en cours de transition vers `RebuildBdd`
Chaque dossier peut aussi contenir son propre fichier `.env.exemple` ou ses propres fichiers de configuration. Les secrets et webhooks ne doivent jamais etre versionnes dans git et doivent rester dans des fichiers locaux ignores.
## RebuildBdd
## Documentation
* Nouvelle architecture standardisée de reconstruction PostgreSQL
* Gestion multi-cibles
* Exécution non interactive (compatible web/API)
* Retour structuré (JSON + logs)
Les evolutions importantes sont suivies dans [CHANGELOG.md](CHANGELOG.md).
---
# Focus : RebuildBdd
Ce module constitue le **socle principal de reconstruction de bases PostgreSQL**.
## Scripts principaux
* `run-rebuild-bdd.sh`
→ Point dentrée (local / IA / interface web)
* `rebuild-bdd-core.sh`
→ Logique métier de restauration (dump + rôles + base)
* `bootstrap-target-host.sh`
→ Préparation automatique de la machine cible
* `create-target-config.sh`
→ Génération des configurations par environnement
## Sous-dossiers
* `Checkup/`
→ Vérification des prérequis (PostgreSQL, accès, rôles)
* `Config/`
→ Fichiers de configuration globaux et par cible
## Fonctionnalités clés
* Installation automatique PostgreSQL si absent
* Vérification et création des rôles
* Restauration complète (rôles + base)
* Gestion des dumps distants
* Mode sécurisé (validation des paramètres)
* Logs exploitables + sortie JSON (intégration web)
👉 Documentation détaillée : `RebuildBdd/README.md`
---
# Prérequis
Les scripts nécessitent :
## Outils de base
* bash
* jq
* curl
* ssh
* scp
## Outils optionnels (selon usage)
* PostgreSQL (`psql`, `pg_dump`, `pg_restore`)
* tar
* systemd (gestion services)
---
# Configuration
## Configuration globale
Un modèle est fourni :
```bash
global.env.exemple
```
Utilisation :
```bash
cp global.env.exemple global.env
```
## Configuration locale
* Chaque module peut contenir son propre `.env`
* Les variables sensibles doivent être définies localement
⚠️ Règles strictes :
* **Aucun secret en versionné**
* Utiliser `.gitignore`
* Cloisonner les accès (SSH, DB, webhooks)
---
# Sécurité
* Authentification SSH par clé obligatoire
* Validation des paramètres en entrée (scripts rebuild)
* Isolation des environnements (cibles distinctes)
* Logs sans données sensibles
---
# Bonnes pratiques
* Scripts **idempotents** (relançables sans effet de bord)
* Logs systématiques
* Gestion des erreurs (`set -euo pipefail`)
* Centralisation des configurations
* Utilisation de formats structurés (JSON)
---
# Documentation
* Documentation détaillée par module (README locaux)
* Historique des évolutions :
```bash
CHANGELOG.md
```
---
# Positionnement actuel
* `RebuildBdd` = **standard cible**
* `RecetteScripts` = **legacy en cours de migration**
* Objectif : convergence vers une **chaîne unique, robuste et automatisable (web/API)**
---
Si vous le souhaitez, je peux :
* restructurer votre README `RebuildBdd` pour quil soit au même niveau
* ajouter un schéma darchitecture (flux SSH / dump / restore)
* ou intégrer directement votre workflow réel (IA machine + backup server + cible) dans la doc