osint-dashboard/alembic/versions/004_camera_enum.py

37 lines
877 B
Python
Raw Permalink Normal View History

"""events.camera source type
Revision ID: 004_camera_enum
Revises: 003_news
Create Date: 2026-08-25
"""
from alembic import op
revision = '004_camera_enum'
down_revision = '003_news'
branch_labels = None
depends_on = None
def upgrade() -> None:
# Postgres enums have no IF NOT EXISTS for values — guard manually so the
# migration stays idempotent across restarts.
op.execute("""
DO $$
BEGIN
IF NOT EXISTS (
SELECT 1 FROM pg_enum e
JOIN pg_type t ON t.oid = e.enumtypid
WHERE t.typname = 'event_source_type' AND e.enumlabel = 'camera'
) THEN
ALTER TYPE event_source_type ADD VALUE 'camera';
END IF;
END
$$;
""")
def downgrade() -> None:
# Enum value removal is not supported by Postgres; leave it in place.
pass