20260429_9001_remove_runtime_versioning.py 1.3 KB

12345678910111213141516171819202122
  1. """Remove business version schema artifacts.
  2. Revision ID: 20260429_9001_runtime
  3. Revises: 20260425_0007
  4. Create Date: 2026-04-29 00:00:00.000000
  5. """
  6. from alembic import op
  7. revision: str = "20260429_9001_runtime"
  8. down_revision: str | None = "20260425_0007"
  9. branch_labels = None
  10. depends_on = None
  11. def upgrade() -> None:
  12. op.execute("DO $$\nBEGIN\n IF EXISTS (SELECT 1 FROM information_schema.columns WHERE table_name = 'workflow_run' AND column_name = 'app_version_id') THEN\n ALTER TABLE workflow_run RENAME COLUMN app_version_id TO app_config_id;\n END IF;\n IF EXISTS (SELECT 1 FROM information_schema.columns WHERE table_name = 'workflow_run' AND column_name = 'workflow_version_id') THEN\n ALTER TABLE workflow_run RENAME COLUMN workflow_version_id TO workflow_config_id;\n END IF;\nEND $$;\nDO $$\nDECLARE\n table_record record;\nBEGIN\n FOR table_record IN\n SELECT table_name\n FROM information_schema.columns\n WHERE table_schema = current_schema()\n AND column_name = 'version'\n LOOP\n EXECUTE format('ALTER TABLE %I DROP COLUMN IF EXISTS version', table_record.table_name);\n END LOOP;\nEND $$;")
  13. def downgrade() -> None:
  14. # Business version tables and columns were intentionally removed.
  15. pass