Skip to content

Commit

Permalink
Revert #864, #868 (#875)
Browse files Browse the repository at this point in the history
  • Loading branch information
hopkiw authored and illfelder committed Nov 20, 2019
1 parent 9d9a5f9 commit 8d4e994
Show file tree
Hide file tree
Showing 4 changed files with 20 additions and 18 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -97,7 +97,7 @@ def _DownloadAuthUrl(self, url, dest_dir):

if not self.token:
response = self.watcher.GetMetadata(
self.token_metadata_key, recursive=False, retries=1)
self.token_metadata_key, recursive=False, retry=False)

if not response:
self.logger.info(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -89,7 +89,7 @@ def testDownloadAuthUrlExceptionAndToken(
# GetMetadata includes a prefix, so remove it.
stripped_url = token_url.replace(metadata_prefix, '')
mock_get_metadata.assert_called_once_with(
stripped_url, recursive=False, retries=1)
stripped_url, recursive=False, retry=False)

self.assertEqual(self.retriever.token, 'foo bar')

Expand Down Expand Up @@ -119,7 +119,7 @@ def testDownloadAuthUrlFallback(
prefix = 'http://metadata.google.internal/computeMetadata/v1/'
stripped_url = token_url.replace(prefix, '')
mock_get_metadata.assert_called_once_with(
stripped_url, recursive=False, retries=1)
stripped_url, recursive=False, retry=False)
mock_download_url.assert_called_once_with(auth_url, self.dest_dir)

self.assertIsNone(self.retriever.token)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -154,31 +154,33 @@ def _GetMetadataUpdate(

def _HandleMetadataUpdate(
self, metadata_key='', recursive=True, wait=True, timeout=None,
retries=5):
retry=True):
"""Wait for a successful metadata response.
Args:
metadata_key: string, the metadata key to watch for changes.
recursive: bool, True if we should recursively watch for metadata changes.
wait: bool, True if we should wait for a metadata change.
timeout: int, timeout in seconds for returning metadata output.
retries: int, Number of times to retry obtaining metadata.
retry: bool, True if we should retry on failure.
Returns:
json, the deserialized contents of the metadata server.
"""
exception = None
while retries >= 0:
while True:
try:
return self._GetMetadataUpdate(
metadata_key=metadata_key, recursive=recursive, wait=wait,
timeout=timeout)
except (httpclient.HTTPException, socket.error, urlerror.URLError) as e:
retries -= 1
if not isinstance(e, type(exception)):
exception = e
self.logger.error('GET request error retrieving metadata. %s.', e)
time.sleep(1)
if retry:
continue
else:
break

def WatchMetadata(
self, handler, metadata_key='', recursive=True, timeout=None):
Expand All @@ -200,7 +202,7 @@ def WatchMetadata(
self.logger.exception('Exception calling the response handler. %s.', e)

def GetMetadata(
self, metadata_key='', recursive=True, timeout=None, retries=5):
self, metadata_key='', recursive=True, timeout=None, retry=True):
"""Retrieve the contents of metadata server for a metadata key.
Args:
Expand All @@ -214,4 +216,4 @@ def GetMetadata(
"""
return self._HandleMetadataUpdate(
metadata_key=metadata_key, recursive=recursive, wait=False,
timeout=timeout, retries=retries)
timeout=timeout, retry=retry)
Original file line number Diff line number Diff line change
Expand Up @@ -259,12 +259,12 @@ def testHandleMetadataUpdateException(self):
metadata_key = 'instance/id'
recursive = False
wait = False
retries = 5
retry = True

self.assertEqual(
self.mock_watcher._HandleMetadataUpdate(
metadata_key=metadata_key, recursive=recursive, wait=wait,
timeout=None, retries=retries),
timeout=None, retry=retry),
{})
expected_calls = [
mock.call(
Expand All @@ -282,12 +282,12 @@ def testHandleMetadataUpdateExceptionNoRetry(self):
metadata_key = 'instance/id'
recursive = False
wait = False
retries = 0
retry = False

self.assertIsNone(
self.mock_watcher._HandleMetadataUpdate(
metadata_key=metadata_key, recursive=recursive, wait=wait,
timeout=None, retries=retries))
timeout=None, retry=retry))
expected_calls = [
mock.call(
metadata_key=metadata_key, recursive=recursive, wait=wait,
Expand Down Expand Up @@ -333,7 +333,7 @@ def testGetMetadata(self):

self.assertEqual(self.mock_watcher.GetMetadata(), {})
mock_response.assert_called_once_with(
metadata_key='', recursive=True, wait=False, timeout=None, retries=5)
metadata_key='', recursive=True, wait=False, timeout=None, retry=True)
self.mock_watcher.logger.exception.assert_not_called()

def testGetMetadataArgs(self):
Expand All @@ -342,15 +342,15 @@ def testGetMetadataArgs(self):
self.mock_watcher._HandleMetadataUpdate = mock_response
metadata_key = 'instance/id'
recursive = False
retries = 5
retry = False

response = self.mock_watcher.GetMetadata(
metadata_key=metadata_key, recursive=recursive, timeout=60,
retries=retries)
retry=retry)
self.assertEqual(response, {})
mock_response.assert_called_once_with(
metadata_key=metadata_key, recursive=False, wait=False, timeout=60,
retries=5)
retry=False)
self.mock_watcher.logger.exception.assert_not_called()


Expand Down

0 comments on commit 8d4e994

Please sign in to comment.