Compare commits

..
2 Commits
Author SHA1 Message Date
Ian Roddis c414708b32 Fixing migrations for postgres 2026-08-18 21:28:39 -03:00
Ian Roddis 443a128ad7 Adding migrations to entrypoint 2026-08-18 21:12:20 -03:00
2 changed files with 11 additions and 1 deletions

No files matched your search

@@ -28,12 +28,19 @@ def upgrade() -> None:
sa.Column("logo_url", sa.String(), nullable=True), sa.Column("logo_url", sa.String(), nullable=True),
sa.PrimaryKeyConstraint("id"), sa.PrimaryKeyConstraint("id"),
) )
# batch_alter_table's alter_column doesn't emit CREATE TYPE for the new
# Enum on its own (unlike create_table, which ties enum creation to the
# table-create DDL event) - create it explicitly first, or Postgres fails
# with `type "uncseries" does not exist`. checkfirst / no-op on SQLite.
uncseries = sa.Enum("UNC", "UNF", "UNEF", "UN", "UNS", name="uncseries")
uncseries.create(op.get_bind(), checkfirst=True)
with op.batch_alter_table("unc_threads", schema=None) as batch_op: with op.batch_alter_table("unc_threads", schema=None) as batch_op:
batch_op.alter_column( batch_op.alter_column(
"series", "series",
existing_type=sa.VARCHAR(length=8), existing_type=sa.VARCHAR(length=8),
type_=sa.Enum("UNC", "UNF", "UNEF", "UN", "UNS", name="uncseries"), type_=uncseries,
existing_nullable=False, existing_nullable=False,
postgresql_using="series::uncseries",
) )
# ### end Alembic commands ### # ### end Alembic commands ###
@@ -47,7 +54,9 @@ def downgrade() -> None:
existing_type=sa.Enum("UNC", "UNF", "UNEF", "UN", "UNS", name="uncseries"), existing_type=sa.Enum("UNC", "UNF", "UNEF", "UN", "UNS", name="uncseries"),
type_=sa.VARCHAR(length=8), type_=sa.VARCHAR(length=8),
existing_nullable=False, existing_nullable=False,
postgresql_using="series::varchar(8)",
) )
sa.Enum(name="uncseries").drop(op.get_bind(), checkfirst=True)
op.drop_table("manufacturers") op.drop_table("manufacturers")
# ### end Alembic commands ### # ### end Alembic commands ###
+1
View File
@@ -2,6 +2,7 @@
set -e set -e
# Idempotent: creates perms/roles/superuser only if missing. # Idempotent: creates perms/roles/superuser only if missing.
uv run alembic upgrade head
uv run python -m scripts.seed uv run python -m scripts.seed
exec uv run uvicorn app.main:app --host 0.0.0.0 --port 8000 exec uv run uvicorn app.main:app --host 0.0.0.0 --port 8000