From 265d9ca6ed4e76fd52132dfd53a762872b6df777 Mon Sep 17 00:00:00 2001 From: Cloud Shell Date: Fri, 25 Feb 2022 11:07:29 +0000 Subject: [PATCH] wip(22w8c): add first-run sql config --- src/db/config.sql | 14 ++++++++++++++ src/db/sqlite.py | 10 +++++++--- 2 files changed, 21 insertions(+), 3 deletions(-) create mode 100644 src/db/config.sql diff --git a/src/db/config.sql b/src/db/config.sql new file mode 100644 index 0000000..8b71825 --- /dev/null +++ b/src/db/config.sql @@ -0,0 +1,14 @@ +CREATE TABLE flags ( + k text PRIMARY KEY, + v real +); + +CREATE TABLE fileindex ( + anchor text PRIMARY KEY, + chksum text +); + +INSERT INTO flags +VALUES + ("CALC_CHECKSUM", 1), + ("BUCKET_OK", 0); \ No newline at end of file diff --git a/src/db/sqlite.py b/src/db/sqlite.py index 7669091..9e1cc7f 100644 --- a/src/db/sqlite.py +++ b/src/db/sqlite.py @@ -1,4 +1,5 @@ import os +import pathlib import sqlite3 as sqlite from ..glob import file_exists @@ -31,12 +32,15 @@ class SQLite(): return path def configure_db(self): - metadata_sql = "CREATE TABLE metadata (key text, value text)" - metadata = self.query(metadata_sql) + cwd = str(pathlib.Path(__file__).parent.resolve()) + sql = open(cwd + "/config.sql") + sql_str = sql.read() + + return self.cursor.executescript(sql_str) def init(self): # Set up db if it's fresh - hasmeta_sql = "SELECT name FROM sqlite_master WHERE type='table' AND name='metadata'" + hasmeta_sql = "SELECT name FROM sqlite_master WHERE type='table' AND name='flags'" if not self.query(hasmeta_sql): self.configure_db()