From 48e191a70511a071f9d8b6e373a14a904e84f8a7 Mon Sep 17 00:00:00 2001 From: L0m1g Date: Mon, 3 Mar 2025 11:25:08 +0100 Subject: [PATCH] feat(db) database connection --- src/erminig/common/db.py | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 src/erminig/common/db.py diff --git a/src/erminig/common/db.py b/src/erminig/common/db.py new file mode 100644 index 0000000..e0a2ef1 --- /dev/null +++ b/src/erminig/common/db.py @@ -0,0 +1,25 @@ +# +# Erminig - Interface SQLite +# Copyright (C) 2025 L0m1g +# Sous licence DOUARN - Voir le fichier LICENCE pour les détails +# +# Ce fichier fait partie du projet Erminig. +# Libre comme l’air, stable comme un menhir, et salé comme le beurre. +# + +import sqlite3 +import os + +DB_PATH = "/var/lib/erminig/erminig.db" + +def get_db_connection(): + """ + Ouvre une connexion à la base SQLite d'Erminig. + Si la base n'existe pas, déclenche une exception et laisse Make gérer sa création. + """ + if not os.path.exists(DB_PATH): + raise FileNotFoundError(f"La base de données Erminig est introuvable. Exécutez 'make init-db' avant de continuer.") + + conn = sqlite3.connect(DB_PATH) + conn.row_factory = sqlite3.Row + return conn