From 5e60ca441a5dd4b115ee0de3e1d6e172eba5f2fb Mon Sep 17 00:00:00 2001 From: Pavan Kumar Date: Wed, 16 Jul 2025 21:29:53 +0100 Subject: [PATCH] Fix FAB provider in unreachable code --- .../fab/auth_manager/security_manager/override.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/providers/fab/src/airflow/providers/fab/auth_manager/security_manager/override.py b/providers/fab/src/airflow/providers/fab/auth_manager/security_manager/override.py index 1c6293bd441fc..978bf8b5202fc 100644 --- a/providers/fab/src/airflow/providers/fab/auth_manager/security_manager/override.py +++ b/providers/fab/src/airflow/providers/fab/auth_manager/security_manager/override.py @@ -1551,7 +1551,7 @@ def delete_action(self, name: str) -> bool: --------------- """ - def get_resource(self, name: str) -> Resource: + def get_resource(self, name: str) -> Resource | None: """ Return a resource record by name, if it exists. @@ -1559,7 +1559,7 @@ def get_resource(self, name: str) -> Resource: """ return self.get_session.query(self.resource_model).filter_by(name=name).one_or_none() - def create_resource(self, name) -> Resource: + def create_resource(self, name) -> Resource | None: """ Create a resource with the given name. @@ -1628,6 +1628,9 @@ def create_permission(self, action_name, resource_name) -> Permission | None: if perm: return perm resource = self.create_resource(resource_name) + if resource is None: + log.error(const.LOGMSG_ERR_SEC_ADD_PERMVIEW, f"Resource creation failed {resource_name}") + return None action = self.create_action(action_name) perm = self.permission_model() perm.resource_id, perm.action_id = resource.id, action.id