mirror of
https://github.com/rommapp/romm.git
synced 2026-02-19 07:50:57 +01:00
sqlite compatibility added
This commit is contained in:
@@ -16,7 +16,6 @@ DEFAULT_PATH_COVER_L: str = f"/assets/library/resources/default/cover_l.png"
|
||||
DEFAULT_URL_COVER_S: str = "https://images.igdb.com/igdb/image/upload/t_cover_small/nocover.png"
|
||||
DEFAULT_PATH_COVER_S: str = f"/assets/library/resources/default/cover_s.png"
|
||||
|
||||
|
||||
# IGDB
|
||||
CLIENT_ID: str = os.getenv('CLIENT_ID')
|
||||
CLIENT_SECRET: str = os.getenv('CLIENT_SECRET')
|
||||
@@ -29,4 +28,15 @@ DB_PORT: int = int(os.getenv('DB_PORT'))
|
||||
DB_ROOT_PASSWD: str = os.getenv('DB_ROOT_PASSWD')
|
||||
DB_USER: str = os.getenv('DB_USER')
|
||||
DB_PASSWD: str = os.getenv('DB_PASSWD')
|
||||
DB_NAME: str = 'romm'
|
||||
DB_NAME: str = 'romm'
|
||||
|
||||
# DB DRIVERS
|
||||
SQLITE_PATH: str = f"{LIBRARY_BASE_PATH}/database"
|
||||
if not os.path.exists(SQLITE_PATH): os.makedirs(SQLITE_PATH)
|
||||
ROMM_DB_DRIVER: str = os.getenv('ROMM_DB_DRIVER', 'sqlite')
|
||||
DB_DRIVERS: dict = {
|
||||
'mariadb': f"mariadb+mariadbconnector://{DB_USER}:{DB_PASSWD}@{DB_HOST}:{DB_PORT}/{DB_NAME}",
|
||||
'sqlite': f"sqlite:////{SQLITE_PATH}/romm.db"
|
||||
}
|
||||
|
||||
RESERVED_FOLDERS: list = ['resources', 'database']
|
||||
|
||||
@@ -2,10 +2,9 @@ from sqlalchemy import create_engine
|
||||
from sqlalchemy.ext.declarative import declarative_base
|
||||
from sqlalchemy.orm import sessionmaker
|
||||
|
||||
from config.config import DB_HOST, DB_PORT, DB_USER, DB_PASSWD, DB_NAME
|
||||
|
||||
from config.config import ROMM_DB_DRIVER, DB_DRIVERS
|
||||
|
||||
BaseModel = declarative_base()
|
||||
|
||||
engine = create_engine(f"mariadb+mariadbconnector://{DB_USER}:{DB_PASSWD}@{DB_HOST}:{DB_PORT}/{DB_NAME}", pool_pre_ping=True)
|
||||
Session = sessionmaker(bind=engine, expire_on_commit=False)
|
||||
engine = create_engine(DB_DRIVERS[ROMM_DB_DRIVER], pool_pre_ping=True)
|
||||
Session = sessionmaker(bind=engine, expire_on_commit=False)
|
||||
|
||||
@@ -5,7 +5,7 @@ from pathlib import Path
|
||||
import requests
|
||||
from fastapi import HTTPException
|
||||
|
||||
from config.config import LIBRARY_BASE_PATH, DEFAULT_URL_LOGO, DEFAULT_URL_COVER_L, DEFAULT_PATH_COVER_L, DEFAULT_URL_COVER_S, DEFAULT_PATH_COVER_S
|
||||
from config.config import LIBRARY_BASE_PATH, RESERVED_FOLDERS, DEFAULT_URL_LOGO, DEFAULT_URL_COVER_L, DEFAULT_PATH_COVER_L, DEFAULT_URL_COVER_S, DEFAULT_PATH_COVER_S
|
||||
from logger.logger import log
|
||||
|
||||
|
||||
@@ -73,7 +73,7 @@ def get_platforms() -> list:
|
||||
"""
|
||||
try:
|
||||
platforms: list[str] = list(os.walk(LIBRARY_BASE_PATH))[0][1]
|
||||
if 'resources' in platforms: platforms.remove('resources')
|
||||
[platforms.remove(reserved) for reserved in RESERVED_FOLDERS]
|
||||
log.info(f"filesystem platforms found: {platforms}")
|
||||
return platforms
|
||||
except IndexError:
|
||||
|
||||
@@ -4,10 +4,11 @@ services:
|
||||
image: 'zurdi15/romm:latest'
|
||||
container_name: romm
|
||||
environment:
|
||||
- DB_HOST=romm_db
|
||||
- DB_PORT=3306
|
||||
- DB_USER=romm-user
|
||||
- DB_PASSWD=change-me
|
||||
- ROMM_DB_DRIVER="mariadb" # This variable can be set as: mariadb | sqlite. If it is not defined, sqlite will be the database by default
|
||||
- DB_HOST=romm_db # Only if ROMM_DB_DRIVER='mariadb'
|
||||
- DB_PORT=3306 # Only if ROMM_DB_DRIVER='mariadb'
|
||||
- DB_USER=romm-user # Only if ROMM_DB_DRIVER='mariadb'
|
||||
- DB_PASSWD=change-me # Only if ROMM_DB_DRIVER='mariadb'
|
||||
- CLIENT_ID=<IGDB client id>
|
||||
- CLIENT_SECRET=<IGDB client secret>
|
||||
- STEAMGRIDDB_API_KEY=WIP
|
||||
@@ -19,6 +20,7 @@ services:
|
||||
- romm_db
|
||||
restart: "unless-stopped"
|
||||
|
||||
# Only if ROMM_DB_DRIVER='mariadb'
|
||||
romm_db:
|
||||
image: lscr.io/linuxserver/mariadb:latest
|
||||
container_name: romm_db
|
||||
|
||||
Reference in New Issue
Block a user