26 lines
896 B
Python
26 lines
896 B
Python
|
# flake8: noqa
|
||
|
from lifecycle.migrate import BaseMigration
|
||
|
|
||
|
SQL_STATEMENT = """
|
||
|
BEGIN TRANSACTION;
|
||
|
ALTER TABLE authentik_tenants_tenant RENAME TO authentik_brands_brand;
|
||
|
UPDATE django_migrations SET app = replace(app, 'authentik_tenants', 'authentik_brands');
|
||
|
UPDATE django_content_type SET app_label = replace(app_label, 'authentik_tenants', 'authentik_brands');
|
||
|
COMMIT;
|
||
|
"""
|
||
|
|
||
|
|
||
|
class Migration(BaseMigration):
|
||
|
def needs_migration(self) -> bool:
|
||
|
self.cur.execute(
|
||
|
"select * from information_schema.tables where table_name =" " 'django_migrations';"
|
||
|
)
|
||
|
# No migration table, assume new installation
|
||
|
if not bool(self.cur.rowcount):
|
||
|
return False
|
||
|
self.cur.execute("select * from django_migrations where app = 'authentik_brands';")
|
||
|
return not bool(self.cur.rowcount)
|
||
|
|
||
|
def run(self):
|
||
|
self.cur.execute(SQL_STATEMENT)
|