from patch.include import *
from tqdm import tqdm


@app_context(commit=True)
def notify_rule():
    """
    Для тестирования патча: ( cd /opt/eva-app; python3 -m patch.fix_notify_rule )
    Здесь можно работать с моделями через models.CmfTask и т.д.
    Для прогрессбара используйте:
    for task in tqdm(models.CmfTask.list()):
        ...
    """
    print('Запуск патча notify_rule')
    from sqlalchemy import text
    session = models.CmfTask.dp.data_driver.Session()
    session.execute(text("""
        ALTER TABLE cmf_project_notify_scheme_rule
        ALTER COLUMN notify_email TYPE VARCHAR;
    """))
    session.commit()


if __name__ == "__main__":
    notify_rule()
