Files
shopdb-flask/migrations/versions/7d29_supportteam_webhookurl.py

42 lines
1.1 KiB
Python

"""Add supportteams.webhookurl (per-team alert webhook)
A support team can carry a Teams (or other) webhook; alerting plugins route
alerts to a team by selecting it. Nullable. Idempotent guard.
Revision ID: 7d29_supportteam_webhookurl
Revises: 7d28_dashboarddefault_displayrole
Create Date: 2026-07-22
"""
from alembic import op
import sqlalchemy as sa
revision = '7d29_supportteam_webhookurl'
down_revision = '7d28_dashboarddefault_displayrole'
branch_labels = None
depends_on = None
def _has_col(insp):
return any(c['name'] == 'webhookurl'
for c in insp.get_columns('supportteams'))
def upgrade():
bind = op.get_bind()
insp = sa.inspect(bind)
if 'supportteams' not in insp.get_table_names():
return
if not _has_col(insp):
op.add_column('supportteams', sa.Column('webhookurl', sa.Text(), nullable=True))
def downgrade():
bind = op.get_bind()
insp = sa.inspect(bind)
if 'supportteams' not in insp.get_table_names():
return
if _has_col(insp):
op.drop_column('supportteams', 'webhookurl')