From d078392bbc7cf98b4a499bf2ff733680c3954a17 Mon Sep 17 00:00:00 2001 From: Phelps Williams Date: Mon, 13 Jul 2020 17:46:24 -0700 Subject: [PATCH] UltraDNS adding configurable HTTP request timeout --- octodns/provider/ultra.py | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/octodns/provider/ultra.py b/octodns/provider/ultra.py index a501425..eb10e0d 100644 --- a/octodns/provider/ultra.py +++ b/octodns/provider/ultra.py @@ -77,13 +77,13 @@ class UltraProvider(BaseProvider): data=None, json=None, json_response=True): self.log.debug('_request: method=%s, path=%s', method, path) - url = '{}{}'.format(self.base_uri, path) + url = '{}{}'.format(self._base_uri, path) resp = self._sess.request(method, url, params=params, data=data, json=json, - timeout=self.TIMEOUT) + timeout=self._timeout) self.log.debug('_request: status=%d', resp.status_code) if resp.status_code == 401: @@ -129,16 +129,21 @@ class UltraProvider(BaseProvider): 'Authorization': 'Bearer {}'.format(resp['access_token']), }) - def __init__(self, id, account, username, password, *args, **kwargs): + def __init__(self, id, account, username, password, timeout=TIMEOUT, + *args, **kwargs): self.log = getLogger('UltraProvider[{}]'.format(id)) self.log.debug('__init__: id=%s, account=%s, username=%s, ' 'password=***', id, account, username) super(UltraProvider, self).__init__(id, *args, **kwargs) - self.base_uri = 'https://restapi.ultradns.com' + + self._base_uri = 'https://restapi.ultradns.com' self._sess = Session() - self._login(username, password) self._account = account + self._timeout = timeout + + self._login(username, password) + self._zones = None self._zone_records = {}