From 641a85ea5bccbb92190a90686f8520dc0e9206d4 Mon Sep 17 00:00:00 2001 From: Nick Sharp Date: Thu, 15 Mar 2018 13:48:58 +0000 Subject: [PATCH] Making the db location dynamic so that it can be run inside a docker container --- Dockerfile | 9 +++++++++ modules/core/db.py | 6 ++++-- modules/core/db_mirgrate.py | 4 ++-- 3 files changed, 15 insertions(+), 4 deletions(-) create mode 100644 Dockerfile diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..f764ecd --- /dev/null +++ b/Dockerfile @@ -0,0 +1,9 @@ +FROM python:2.7 + +COPY . /app + +WORKDIR app + +RUN pip install -r requirements.txt + +ENTRYPOINT [ "python", "run.py" ] \ No newline at end of file diff --git a/modules/core/db.py b/modules/core/db.py index ef111ba..3289b7f 100644 --- a/modules/core/db.py +++ b/modules/core/db.py @@ -1,7 +1,9 @@ import sqlite3 - +import os from flask import json, g +db_root=os.getenv("DB_ROOT", "") +db_location=db_root + '/craftbeerpi.db' def get_db(): db = getattr(g, '_database', None) @@ -11,7 +13,7 @@ def get_db(): for idx, col in enumerate(cursor.description): d[col[0]] = row[idx] return d - db = g._database = sqlite3.connect('craftbeerpi.db') + db = g._database = sqlite3.connect(db_location) db.row_factory = dict_factory return db diff --git a/modules/core/db_mirgrate.py b/modules/core/db_mirgrate.py index bdb850e..b08ec0f 100644 --- a/modules/core/db_mirgrate.py +++ b/modules/core/db_mirgrate.py @@ -1,14 +1,14 @@ import sqlite3 import os from modules import cbpi -from db import get_db +from db import get_db, db_location def execute_file(curernt_version, data): if curernt_version >= data["version"]: cbpi.app.logger.info("SKIP DB FILE: %s" % data["file"]) return try: - with sqlite3.connect("craftbeerpi.db") as conn: + with sqlite3.connect(db_location) as conn: with open('./update/%s' % data["file"], 'r') as f: d = f.read() sqlCommands = d.split(";")