diff --git a/providers/fab/src/airflow/providers/fab/www/extensions/init_appbuilder.py b/providers/fab/src/airflow/providers/fab/www/extensions/init_appbuilder.py index 4662e50a439b4..7a6d8c6d8949d 100644 --- a/providers/fab/src/airflow/providers/fab/www/extensions/init_appbuilder.py +++ b/providers/fab/src/airflow/providers/fab/www/extensions/init_appbuilder.py @@ -165,6 +165,8 @@ def init_app(self, app, session): :param app: :param session: The SQLAlchemy session """ + from airflow.providers.fab.www.utils import get_fab_auth_manager + log.info("Initializing AppBuilder") app.config.setdefault("APP_NAME", "F.A.B.") app.config.setdefault("APP_THEME", "") @@ -193,10 +195,12 @@ def init_app(self, app, session): self.menu = dynamic_class_import(_menu) else: self.menu = self.menu or Menu() - self._addon_managers = app.config["ADDON_MANAGERS"] self.session = session - auth_manager = create_auth_manager() + try: + auth_manager = get_fab_auth_manager() + except RuntimeError: + auth_manager = create_auth_manager() with _init_app_lock: auth_manager.appbuilder = self # Invalidate cached security_manager so it binds to the current Flask app.