feat: initial commit

This commit is contained in:
Maurice Debray 2025-12-10 20:32:34 +01:00 committed by sinavir
commit 2ec883ff80
12 changed files with 610 additions and 0 deletions

27
README.md Normal file
View file

@ -0,0 +1,27 @@
<!--
SPDX-FileCopyrightText: 2024 Maurice Debray <maurice.debray@dgnum.eu>
SPDX-License-Identifier: EUPL-1.2
-->
# Phoenix🔥❄
Phoenix automatically checks that in case everything burns, your infra will rise again from its ashes
## Thoughts (in french)
### Archi
Composants
1. Un service crée des données utiles sur la target et push sur un serveur les données oob (seed)
2. La backup est déclenchée automatiquement (ou manuellement)
3. On récupère la backup ainsi que des meta données de la backup (la date). Le serveur de coordination décide quels sont les seed à tester en fonction de ses retention policy (aussi les backup à tester)
4. On restore la backup via un 9p => vm avec la config du serveur + un startup script de restoration
5. On teste la backup avec les données oob => script de test à la nixos-test
Pk 3 scripts (retrieve, restore, test) => parce que chacun a une spécificité
### Test policy
- Time-based
- Number based
- Combinator (Either, Both)