"""Migrate existing webhooks to notifications. Revision ID: 47670cbeced Revises: 325a4d7c79d9 Create Date: 2014-07-31 13:49:38.332807 Hand Edited By Joseph Schorr """ # revision identifiers, used by Alembic. revision = '47670cbeced' down_revision = '325a4d7c79d9' from alembic import op import sqlalchemy as sa from data.database import * from app import app def upgrade(): event_id = list(db.execute_sql('Select id From ExternalNotificationEvent Where name="repo_push" Limit 1', ()))[0][0] method_id = list(db.execute_sql('Select id From ExternalNotificationMethod Where name="webhook" Limit 1', ()))[0][0] db.execute_sql('Insert Into RepositoryNotification (uuid, repository_id, event_id, method_id, config_json) Select public_id, repository_id, %s, %s, parameters FROM Webhook' % (event_id, method_id)) def downgrade(): event_id = list(db.execute_sql('Select id From ExternalNotificationEvent Where name="repo_push" Limit 1', ()))[0][0] method_id = list(db.execute_sql('Select id From ExternalNotificationMethod Where name="webhook" Limit 1', ()))[0][0] db.execute_sql('Insert Into Webhook (public_id, repository_id, parameters) Select uuid, repository_id, config_json FROM RepositoryNotification Where event_id=%s And method_id=%s' % (event_id, method_id))