aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLukasz Rajewski <lukasz.rajewski@t-mobile.pl>2024-03-04 20:14:02 +0100
committerLukasz Rajewski <lukasz.rajewski@t-mobile.pl>2024-03-07 10:09:40 +0100
commit7c3de7ac0ff93bae27f2a0a30198bb3d2e24cbf1 (patch)
tree5ef0ae6191357a05e4766fc95a6e29d517b4767c
parent04804c49eefd80efb0f31b27b56192ee4c77081b (diff)
Add retry option to onap_service
Add retry option to onap_service Issue-ID: TEST-404 Signed-off-by: Lukasz Rajewski <lukasz.rajewski@t-mobile.pl> Change-Id: Ib86ad8faed3a89786054ab49eeb58f4cc46471fb
-rw-r--r--src/onapsdk/configuration/global_settings.py2
-rw-r--r--src/onapsdk/onap_service.py5
-rw-r--r--tests/test_settings.py3
3 files changed, 7 insertions, 3 deletions
diff --git a/src/onapsdk/configuration/global_settings.py b/src/onapsdk/configuration/global_settings.py
index 7c09187..8bfea14 100644
--- a/src/onapsdk/configuration/global_settings.py
+++ b/src/onapsdk/configuration/global_settings.py
@@ -74,6 +74,8 @@ PLATFORM = "Onapsdk_platform"
DEFAULT_REQUEST_TIMEOUT = 60
+DEFAULT_REQUEST_RETRIES = 10
+
# SDC DISTRIBUTION
SDC_SERVICE_DISTRIBUTION_COMPONENTS = [
"SO-sdc-controller",
diff --git a/src/onapsdk/onap_service.py b/src/onapsdk/onap_service.py
index 566c9bc..fffc2b2 100644
--- a/src/onapsdk/onap_service.py
+++ b/src/onapsdk/onap_service.py
@@ -126,6 +126,7 @@ class OnapService(ABC):
basic_auth: Dict[str, str] = kwargs.pop('basic_auth', None)
exception = kwargs.pop('exception', None)
timeout = kwargs.pop('timeout', None)
+ retries = kwargs.pop('retries', settings.DEFAULT_REQUEST_RETRIES)
if method == "PATCH":
headers = kwargs.pop('headers', cls.patch_headers).copy()
else:
@@ -136,7 +137,7 @@ class OnapService(ABC):
data = kwargs.get('data', None)
try:
# build the request with the requested method
- session = cls.__requests_retry_session(timeout=timeout)
+ session = cls.__requests_retry_session(retries=retries, timeout=timeout)
if cert:
session.cert = cert
OnapService._set_basic_auth_if_needed(basic_auth, session)
@@ -257,7 +258,7 @@ class OnapService(ABC):
raise exception
@staticmethod
- def __requests_retry_session(retries: int = 10,
+ def __requests_retry_session(retries: int = settings.DEFAULT_REQUEST_RETRIES,
backoff_factor: float = 0.3,
session: requests.Session = None,
timeout: int = None
diff --git a/tests/test_settings.py b/tests/test_settings.py
index 4977e66..154eed0 100644
--- a/tests/test_settings.py
+++ b/tests/test_settings.py
@@ -24,7 +24,7 @@ from onapsdk.exceptions import ModuleError
def test_global_settings():
"""Test global settings."""
- assert len(settings._settings) == 48
+ assert len(settings._settings) == 49
assert settings.AAI_URL == "https://aai.api.sparky.simpledemo.onap.org:30233"
assert settings.CDS_URL == "http://portal.api.simpledemo.onap.org:30449"
assert settings.SDNC_URL == "https://sdnc.api.simpledemo.onap.org:30267"
@@ -57,6 +57,7 @@ def test_global_settings():
assert settings.LOB == "Onapsdk_lob"
assert settings.PLATFORM == "Onapsdk_platform"
assert settings.DEFAULT_REQUEST_TIMEOUT == 60
+ assert settings.DEFAULT_REQUEST_RETRIES == 10
assert hasattr(settings, "AAI_AUTH")
assert hasattr(settings, "CDS_AUTH")
assert hasattr(settings, "SDC_AUTH")