From f4613b5c6f9dce4910a0471d0aa3e55630c1ef90 Mon Sep 17 00:00:00 2001 From: "sentry[bot]" <39604003+sentry[bot]@users.noreply.github.com> Date: Fri, 31 Jul 2026 22:41:06 +0000 Subject: [PATCH] fix(bitbucket-server): Record 404 ApiError as halt in webhook --- src/sentry/integrations/bitbucket_server/webhook.py | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/src/sentry/integrations/bitbucket_server/webhook.py b/src/sentry/integrations/bitbucket_server/webhook.py index f9f0c81d97bf..666345497150 100644 --- a/src/sentry/integrations/bitbucket_server/webhook.py +++ b/src/sentry/integrations/bitbucket_server/webhook.py @@ -28,7 +28,12 @@ from sentry.models.organization import Organization from sentry.models.repository import Repository from sentry.plugins.providers import IntegrationRepositoryProvider -from sentry.shared_integrations.exceptions import ApiHostError, ApiUnauthorized, IntegrationError +from sentry.shared_integrations.exceptions import ( + ApiError, + ApiHostError, + ApiUnauthorized, + IntegrationError, +) from sentry.web.frontend.base import cell_silo_view logger = logging.getLogger("sentry.webhooks") @@ -110,6 +115,11 @@ def __call__(self, event: Mapping[str, Any], **kwargs) -> None: except ApiUnauthorized as e: lifecycle.record_halt(halt_reason=e) raise BadRequest() + except ApiError as e: + if e.code == 404: + lifecycle.record_halt(halt_reason=e) + continue + raise except Exception as e: sentry_sdk.capture_exception(e) raise