From c8034deab4216543e1f57e20eb4ae2c00a1f358a Mon Sep 17 00:00:00 2001 From: Jimmy Zelinskie Date: Thu, 23 Feb 2017 15:01:32 -0500 Subject: [PATCH] util.secscan.api: failover connection failures --- util/secscan/api.py | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/util/secscan/api.py b/util/secscan/api.py index 84a16ad8b..efcd79571 100644 --- a/util/secscan/api.py +++ b/util/secscan/api.py @@ -371,7 +371,10 @@ def _join_api_url(endpoint, api_version, path): @failover def _failover_read_request(request_fn, endpoint, path, body, params, timeout): """ This function auto-retries read-only requests until they return a 2xx status code. """ - resp = request_fn('GET', endpoint, path, body, params, timeout) - if resp.status_code / 100 != 2: - raise FailoverException(resp, 'status code was not 2xx') - return resp + try: + resp = request_fn('GET', endpoint, path, body, params, timeout) + if resp.status_code / 100 != 2: + raise FailoverException(resp, 'status code was not 2xx') + return resp + except requests.exceptions.RequestException: + raise FailoverException(None, 'connection failure')