Files

34 lines
969 B
Python
Raw Permalink Normal View History

"""Per-project sandbox DB/Redis opt-in column.
The sandboxed-DB provisioner (orchestrator-side sibling containers) only
participates for a project when ``sandbox_services`` is set — e.g.
``["postgres", "redis"]``. Additive and nullable, so existing projects keep
today's behavior (no sandbox, the legacy ``_append_gate_env`` prod-creds
injection stays byte-for-byte unchanged for them).
Revision ID: 057_project_sandbox_services
Revises: 056_member_perf_daily
Create Date: 2026-07-03
"""
from __future__ import annotations
import sqlalchemy as sa
from alembic import op
revision = "057_project_sandbox_services"
down_revision = "056_member_perf_daily"
branch_labels: dict[str, str] | None = None
depends_on: dict[str, str] | None = None
def upgrade() -> None:
op.add_column(
"projects",
sa.Column("sandbox_services", sa.ARRAY(sa.String()), nullable=True),
)
def downgrade() -> None:
op.drop_column("projects", "sandbox_services")