mirror of
https://github.com/th3r00t/pyShelf.git
synced 2026-04-28 01:59:35 -04:00
Updating config file to look for env. variable, if not available use it from the JSON
This commit is contained in:
2
config.json
vendored
2
config.json
vendored
@@ -1 +1 @@
|
||||
{"TITLE": "pyShelf E-Book Server", "VERSION": "0.7.0", "BOOKPATH": "", "DB_HOST": "localhost", "DB_PORT": "5432", "DATABASE": "pyshelf", "USER": "pyshelf", "PASSWORD": "pyshelf", "BOOKSHELF": "data/shelf.json", "ALLOWED_HOSTS": "*", "SECRET": "", "BUILD_MODE": "production"}
|
||||
{"TITLE": "pyShelf E-Book Server", "VERSION": "0.7.0", "BOOKPATH": "/books", "DB_HOST": "localhost", "DB_PORT": "5432", "DATABASE": "pyshelf", "USER": "pyshelf", "PASSWORD": "pyshelf", "BOOKSHELF": "data/shelf.json", "ALLOWED_HOSTS": ["localhost", "127.0.0.1", "[::1]", "0.0.0.0"], "SECRET": "", "BUILD_MODE": "production"}
|
||||
|
||||
4
docker-compose.yml
vendored
4
docker-compose.yml
vendored
@@ -3,15 +3,16 @@ version: "3.7"
|
||||
services:
|
||||
db:
|
||||
image: "postgres"
|
||||
restart: always
|
||||
environment:
|
||||
- "POSTGRES_PASSWORD=pyshelf"
|
||||
- "POSTGRES_USER=pyshelf"
|
||||
- "POSTGRES_DB=pyshelf"
|
||||
volumes:
|
||||
- "db_data:/var/lib/postgresql/data/"
|
||||
|
||||
pyshelf:
|
||||
image: "pyshelf/pyshelf"
|
||||
restart: always
|
||||
ports:
|
||||
- "8000:8000"
|
||||
- "1337:1337"
|
||||
@@ -19,6 +20,5 @@ services:
|
||||
- "${LOCAL_BOOK_DIR}:/books"
|
||||
depends_on:
|
||||
- db
|
||||
|
||||
volumes:
|
||||
db_data:
|
||||
|
||||
15
docker/config.json
vendored
15
docker/config.json
vendored
@@ -1,14 +1 @@
|
||||
{
|
||||
"TITLE": "pyShelf E-Book Server",
|
||||
"VERSION": "0.6.0 Docker",
|
||||
"BOOKPATH": "/books",
|
||||
"DB_HOST": "db",
|
||||
"DB_PORT": "5432",
|
||||
"DATABASE": "pyshelf",
|
||||
"USER": "pyshelf",
|
||||
"PASSWORD": "pyshelf",
|
||||
"BOOKSHELF": "data/shelf.json",
|
||||
"ALLOWED_HOSTS": "*",
|
||||
"SECRET": "",
|
||||
"BUILD_MODE": "production"
|
||||
}
|
||||
{"TITLE": "pyShelf E-Book Server", "VERSION": "0.7.0", "BOOKPATH": "/books", "DB_HOST": "localhost", "DB_PORT": "5432", "DATABASE": "pyshelf", "USER": "pyshelf", "PASSWORD": "pyshelf", "BOOKSHELF": "data/shelf.json", "ALLOWED_HOSTS": ["localhost", "127.0.0.1", "[::1]", "0.0.0.0"], "SECRET": "", "BUILD_MODE": "production"}
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import json
|
||||
import pathlib
|
||||
import re
|
||||
|
||||
import os
|
||||
from loguru import logger
|
||||
|
||||
|
||||
@@ -14,6 +14,7 @@ class Config:
|
||||
Initialize main configuration options
|
||||
"""
|
||||
self.root = root
|
||||
env = os.environ.copy()
|
||||
self._fp = "config.json"
|
||||
self._cp = pathlib.Path.joinpath(root, self._fp)
|
||||
self._data = self.open_file()
|
||||
@@ -21,23 +22,23 @@ class Config:
|
||||
self.logger
|
||||
except AttributeError:
|
||||
self.logger = self.get_logger()
|
||||
self.book_path = self._data["BOOKPATH"]
|
||||
self.TITLE = self._data["TITLE"]
|
||||
self.VERSION = self._data["VERSION"]
|
||||
self.book_path = env.get("BOOKPATH", self._data["BOOKPATH"])
|
||||
self.TITLE = env.get("TITLE", self._data["TITLE"])
|
||||
self.VERSION = env.get("VERSION", self._data["VERSION"])
|
||||
self.TITLE = self.TITLE + " ver " + self.VERSION
|
||||
self.book_shelf = self._data["BOOKSHELF"]
|
||||
self.catalogue_db = self._data["DATABASE"]
|
||||
self.book_shelf = env.get("BOOKSHELF", self._data["BOOKSHELF"])
|
||||
self.catalogue_db = env.get("DATABASE", self._data["DATABASE"])
|
||||
self.user = self._data["USER"]
|
||||
self.password = self._data["PASSWORD"]
|
||||
self.db_host = self._data["DB_HOST"]
|
||||
self.db_port = self._data["DB_PORT"]
|
||||
self.db_host = env.get("DB_HOST", self._data["DB_HOST"])
|
||||
self.db_port = env.get("DB_PORT", self._data["DB_PORT"])
|
||||
self.file_array = [self.book_shelf]
|
||||
self.auto_scan = True
|
||||
self.allowed_hosts = self._data["ALLOWED_HOSTS"]
|
||||
self.db_user = self._data["USER"]
|
||||
self.db_pass = self._data["PASSWORD"]
|
||||
self.SECRET = self._data["SECRET"]
|
||||
self.build_mode = self._data["BUILD_MODE"]
|
||||
self.allowed_hosts = env.get("ALLOWED_HOSTS", self._data["ALLOWED_HOSTS"])
|
||||
self.db_user = env.get("USER", self._data["USER"])
|
||||
self.db_pass = env.get("PASSWORD", self._data["PASSWORD"])
|
||||
self.SECRET = env.get("SECRET", self._data["SECRET"])
|
||||
self.build_mode = env.get("BUILD_MODE", self._data["BUILD_MODE"])
|
||||
|
||||
def get_logger(self):
|
||||
_logger = logger
|
||||
|
||||
Reference in New Issue
Block a user