20260429_9001_remove_team_versioning.py 1.4 KB

12345678910111213141516171819202122
  1. """Remove business version schema artifacts.
  2. Revision ID: 20260429_9001_team
  3. Revises: 20260425_0001
  4. Create Date: 2026-04-29 00:00:00.000000
  5. """
  6. from alembic import op
  7. revision: str = "20260429_9001_team"
  8. down_revision: str | None = "20260425_0001"
  9. branch_labels = None
  10. depends_on = None
  11. def upgrade() -> None:
  12. op.execute("DO $$\nBEGIN\n IF to_regclass('team_version') IS NOT NULL AND to_regclass('team_config') IS NULL THEN\n ALTER TABLE team_version RENAME TO team_config;\n END IF;\n IF EXISTS (SELECT 1 FROM information_schema.columns WHERE table_name = 'team_run' AND column_name = 'team_version_id') THEN\n ALTER TABLE team_run RENAME COLUMN team_version_id TO team_config_id;\n END IF;\nEND $$;\nALTER TABLE IF EXISTS team_config DROP COLUMN IF EXISTS version_no;\nALTER TABLE IF EXISTS team_config DROP COLUMN IF EXISTS status;\nALTER TABLE IF EXISTS team_config DROP COLUMN IF EXISTS published_time;\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