From adc4052e1fffb22c51cc5a970b3706501f300886 Mon Sep 17 00:00:00 2001 From: Jess MacQueen Date: Tue, 29 Nov 2016 12:08:47 -0800 Subject: [PATCH] improve error handling when adding repos --- src/sentry/plugins/providers/repository.py | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/src/sentry/plugins/providers/repository.py b/src/sentry/plugins/providers/repository.py index 435861b93d7755..e64938fe02edee 100644 --- a/src/sentry/plugins/providers/repository.py +++ b/src/sentry/plugins/providers/repository.py @@ -4,6 +4,7 @@ from rest_framework.response import Response from sentry.api.serializers import serialize +from sentry.exceptions import PluginError from sentry.models import Repository from sentry.plugins.config import ConfigValidator @@ -46,11 +47,16 @@ def dispatch(self, request, organization, **kwargs): except Exception as e: return self.handle_api_error(e) - result = self.create_repository( - organization=organization, - data=config, - actor=request.user, - ) + try: + result = self.create_repository( + organization=organization, + data=config, + actor=request.user, + ) + except PluginError as e: + return Response({ + 'errors': {'__all__': e.message}, + }, status=400) repo = Repository.objects.create( organization_id=organization.id,