Adisri99 commited on
Commit
ba27b7a
·
verified ·
1 Parent(s): 093b3d8

Update backend/app/db.py

Browse files
Files changed (1) hide show
  1. backend/app/db.py +25 -5
backend/app/db.py CHANGED
@@ -1,16 +1,36 @@
 
1
  from sqlalchemy import create_engine
2
  from sqlalchemy.orm import declarative_base, sessionmaker
3
 
4
- from backend.app.config import DB_PATH
5
-
6
  DATABASE_URL = f"sqlite:///{DB_PATH}"
7
- engine = create_engine(DATABASE_URL, connect_args={"check_same_thread": False})
8
- SessionLocal = sessionmaker(bind=engine, autoflush=False, autocommit=False)
 
 
 
 
 
 
 
 
 
 
9
  Base = declarative_base()
10
 
 
 
 
 
 
 
 
 
 
 
11
  def get_db():
12
  db = SessionLocal()
13
  try:
14
  yield db
15
  finally:
16
- db.close()
 
1
+ import os
2
  from sqlalchemy import create_engine
3
  from sqlalchemy.orm import declarative_base, sessionmaker
4
 
5
+ DB_PATH = os.getenv("DB_PATH", "/data/clusterforge.db")
 
6
  DATABASE_URL = f"sqlite:///{DB_PATH}"
7
+
8
+ engine = create_engine(
9
+ DATABASE_URL,
10
+ connect_args={"check_same_thread": False},
11
+ )
12
+
13
+ SessionLocal = sessionmaker(
14
+ autocommit=False,
15
+ autoflush=False,
16
+ bind=engine,
17
+ )
18
+
19
  Base = declarative_base()
20
 
21
+
22
+ def init_db() -> None:
23
+ import backend.app.models.dataset
24
+ import backend.app.models.experiment
25
+ import backend.app.models.cluster_result
26
+ import backend.app.models.cluster_summary
27
+
28
+ Base.metadata.create_all(bind=engine)
29
+
30
+
31
  def get_db():
32
  db = SessionLocal()
33
  try:
34
  yield db
35
  finally:
36
+ db.close()