mirror of https://github.com/Aidaho12/haproxy-wi
69 lines
3.4 KiB
Python
69 lines
3.4 KiB
Python
from playhouse.migrate import *
|
|
from app.modules.db.db_model import connect
|
|
|
|
migrator = connect(get_migrator=1)
|
|
|
|
|
|
def up():
|
|
"""Apply the migration."""
|
|
# This migration renames multiple columns across different tables
|
|
try:
|
|
migrate(
|
|
migrator.rename_column('telegram', 'groups', 'group_id'),
|
|
migrator.rename_column('slack', 'groups', 'group_id'),
|
|
migrator.rename_column('mattermost', 'groups', 'group_id'),
|
|
migrator.rename_column('pd', 'groups', 'group_id'),
|
|
migrator.rename_column('servers', 'groups', 'group_id'),
|
|
migrator.rename_column('udp_balancers', 'desc', 'description'),
|
|
migrator.rename_column('ha_clusters', 'desc', 'description'),
|
|
migrator.rename_column('cred', 'enable', 'key_enabled'),
|
|
migrator.rename_column('cred', 'groups', 'group_id'),
|
|
migrator.rename_column('servers', 'desc', 'description'),
|
|
migrator.rename_column('servers', 'active', 'haproxy_active'),
|
|
migrator.rename_column('servers', 'metrics', 'haproxy_metrics'),
|
|
migrator.rename_column('servers', 'alert', 'haproxy_alert'),
|
|
migrator.rename_column('servers', 'cred', 'cred_id'),
|
|
migrator.rename_column('servers', 'enable', 'enabled'),
|
|
migrator.rename_column('servers', 'groups', 'group_id'),
|
|
migrator.rename_column('user', 'activeuser', 'enabled'),
|
|
migrator.rename_column('user', 'groups', 'group_id'),
|
|
migrator.rename_column('user', 'role', 'role_id'),
|
|
)
|
|
except Exception as e:
|
|
if e.args[0] == 'no such column: "groups"' or str(e) == '(1060, no such column: "groups")':
|
|
print("Columns already renamed")
|
|
elif e.args[0] == "'bool' object has no attribute 'sql'":
|
|
print("Columns already renamed")
|
|
else:
|
|
raise e
|
|
|
|
|
|
def down():
|
|
"""Roll back the migration."""
|
|
# This migration renames columns back to their original names
|
|
try:
|
|
migrate(
|
|
migrator.rename_column('telegram', 'group_id', 'groups'),
|
|
migrator.rename_column('slack', 'group_id', 'groups'),
|
|
migrator.rename_column('mattermost', 'group_id', 'groups'),
|
|
migrator.rename_column('pd', 'group_id', 'groups'),
|
|
migrator.rename_column('servers', 'group_id', 'groups'),
|
|
migrator.rename_column('udp_balancers', 'description', 'desc'),
|
|
migrator.rename_column('ha_clusters', 'description', 'desc'),
|
|
migrator.rename_column('cred', 'key_enabled', 'enable'),
|
|
migrator.rename_column('cred', 'group_id', 'groups'),
|
|
migrator.rename_column('servers', 'description', 'desc'),
|
|
migrator.rename_column('servers', 'haproxy_active', 'active'),
|
|
migrator.rename_column('servers', 'haproxy_metrics', 'metrics'),
|
|
migrator.rename_column('servers', 'haproxy_alert', 'alert'),
|
|
migrator.rename_column('servers', 'cred_id', 'cred'),
|
|
migrator.rename_column('servers', 'enabled', 'enable'),
|
|
migrator.rename_column('servers', 'group_id', 'groups'),
|
|
migrator.rename_column('user', 'enabled', 'activeuser'),
|
|
migrator.rename_column('user', 'group_id', 'groups'),
|
|
migrator.rename_column('user', 'role_id', 'role'),
|
|
)
|
|
except Exception as e:
|
|
print(f"Error rolling back migration: {str(e)}")
|
|
raise e
|