33 lines
893 B
Python
33 lines
893 B
Python
"""add saas_plan_id to plans
|
|
|
|
Revision ID: e1_0_add_saas_plan_id
|
|
Revises: 9c4a95ac6726
|
|
Create Date: 2026-09-01
|
|
|
|
Adds a nullable `saas_plan_id` column to the `plans` table so that DocQube
|
|
can trace each plan back to the SaaS SubscriptionPlan that originated it via
|
|
the provision webhook. Plans created directly inside DocQube will have NULL.
|
|
"""
|
|
|
|
from alembic import op
|
|
import sqlalchemy as sa
|
|
|
|
# revision identifiers, used by Alembic.
|
|
revision = "e1_0_add_saas_plan_id"
|
|
down_revision = "9c4a95ac6726"
|
|
branch_labels = None
|
|
depends_on = None
|
|
|
|
|
|
def upgrade() -> None:
|
|
op.add_column(
|
|
"plans",
|
|
sa.Column("saas_plan_id", sa.String(255), nullable=True),
|
|
)
|
|
op.create_index("ix_plans_saas_plan_id", "plans", ["saas_plan_id"], unique=True)
|
|
|
|
|
|
def downgrade() -> None:
|
|
op.drop_index("ix_plans_saas_plan_id", table_name="plans")
|
|
op.drop_column("plans", "saas_plan_id")
|