libretime/api/libretime_api/legacy/migrations/0001_initial.py

31 lines
825 B
Python

# pylint: disable=invalid-name
from pathlib import Path
from django.db import connection, migrations
from . import LEGACY_SCHEMA_VERSION
from ._migrations import get_schema_version, set_schema_version
here = Path(__file__).resolve().parent
def create_schema(_apps, _schema_editor):
schema_version = get_schema_version()
# A schema already exists, don't overwrite !
if schema_version is not None:
return
with connection.cursor() as cursor:
for migration_filename in ("schema.sql", "data.sql"):
raw = (here / "sql" / migration_filename).read_text(encoding="utf-8")
cursor.execute(raw)
set_schema_version(cursor, LEGACY_SCHEMA_VERSION)
class Migration(migrations.Migration):
initial = True
operations = [migrations.RunPython(create_schema)]