diff --git a/lifecycle/migrate.py b/lifecycle/migrate.py index 1bbd106795..fe29e16e76 100755 --- a/lifecycle/migrate.py +++ b/lifecycle/migrate.py @@ -47,7 +47,9 @@ if __name__ == "__main__": # pyright: reportGeneralTypeIssues=false spec.loader.exec_module(mod) - for _, sub in getmembers(mod, isclass): + for name, sub in getmembers(mod, isclass): + if name != "Migration": + continue migration = sub(curr, conn) if migration.needs_migration(): LOGGER.info("Migration needs to be applied", migration=sub) diff --git a/lifecycle/system_migrations/to_0_10.py b/lifecycle/system_migrations/to_0_10.py index 5bdbe264bf..58d0e6b7e8 100644 --- a/lifecycle/system_migrations/to_0_10.py +++ b/lifecycle/system_migrations/to_0_10.py @@ -25,7 +25,8 @@ delete from django_migrations where app = 'passbook_stages_password' and name = '0002_passwordstage_change_flow';""" -class To010Migration(BaseMigration): +class Migration(BaseMigration): + def needs_migration(self) -> bool: self.cur.execute( "select * from information_schema.tables where table_name='oidc_provider_client'" diff --git a/lifecycle/system_migrations/to_0_12.py b/lifecycle/system_migrations/to_0_12.py index 64b69d9b42..683c47fa2d 100644 --- a/lifecycle/system_migrations/to_0_12.py +++ b/lifecycle/system_migrations/to_0_12.py @@ -1,4 +1,5 @@ -from pickle import loads # nosec +from pickle import loads +from typing import Any # nosec from redis import Redis @@ -6,8 +7,10 @@ from lifecycle.migrate import BaseMigration from passbook.lib.config import CONFIG -class To012Migration(BaseMigration): - def __init__(self) -> None: +class Migration(BaseMigration): + + def __init__(self, cur: Any, con: Any): + super().__init__(cur, con) self.redis = Redis( host=CONFIG.y("redis.host"), port=6379,