Refine event types and update related models and logic

Standardized event types with stricter validation using `Literal`. Adjusted related data and logic to align with new types, including changes to PGROUP assignments, event timeline increments, and schema updates. Cleaned up unused code and clarified database initialization behavior.
This commit is contained in:
GotthardG
2025-03-14 13:11:05 +01:00
parent f41262575e
commit fbc32474ff
9 changed files with 267 additions and 165 deletions

View File

@ -134,17 +134,17 @@ def on_startup():
if environment == "prod":
from sqlalchemy.engine import reflection
# inspector = reflection.Inspector.from_engine(engine)
# tables_exist = inspector.get_table_names()
from app.models import ExperimentParameters # adjust the import as needed
inspector = reflection.Inspector.from_engine(engine)
tables_exist = inspector.get_table_names()
if ExperimentParameters.__tablename__ not in tables_exist:
print("Creating missing table: ExperimentParameters")
ExperimentParameters.__table__.create(bind=engine)
# from app.models import ExperimentParameters # adjust the import as needed
#
# inspector = reflection.Inspector.from_engine(engine)
# tables_exist = inspector.get_table_names()
#
# if ExperimentParameters.__tablename__ not in tables_exist:
# print("Creating missing table: ExperimentParameters")
# ExperimentParameters.__table__.create(bind=engine)
#
# Ensure the production database is initialized
if not tables_exist:
print("Production database is empty. Initializing...")
@ -156,8 +156,8 @@ def on_startup():
load_slots_data(db)
else: # dev or test environments
print(f"{environment.capitalize()} environment: Regenerating database.")
# Base.metadata.drop_all(bind=engine)
# Base.metadata.create_all(bind=engine)
Base.metadata.drop_all(bind=engine)
Base.metadata.create_all(bind=engine)
# from sqlalchemy.engine import reflection
# from app.models import ExperimentParameters # adjust the import as needed
# inspector = reflection.Inspector.from_engine(engine)