lister/core: Fix missing use case about no response from api server
UnboundLocalError could happen otherwise
This commit is contained in:
parent
bbef4bdeae
commit
ff3afe391c
3 changed files with 10 additions and 1 deletions
|
@ -174,6 +174,9 @@ class SWHIndexingLister(SWHListerBase):
|
|||
logging.info('listing repos starting at %s' % index)
|
||||
|
||||
response, injected_repos = self.ingest_data(index)
|
||||
if not response and not injected_repos:
|
||||
logging.info('No response from api server, stopping')
|
||||
break
|
||||
|
||||
next_index = self.get_next_target_from_response(response)
|
||||
|
||||
|
|
|
@ -285,6 +285,7 @@ class SWHListerBase(abc.ABC, config.SWHConfig):
|
|||
"""
|
||||
retries_left = self.MAX_RETRIES
|
||||
do_cache = self.config['cache_responses']
|
||||
r = None
|
||||
while retries_left > 0:
|
||||
try:
|
||||
r = self.transport_request(identifier)
|
||||
|
@ -486,6 +487,8 @@ class SWHListerBase(abc.ABC, config.SWHConfig):
|
|||
"""
|
||||
# Request (partial?) list of repositories info
|
||||
response = self.safely_issue_request(identifier)
|
||||
if not response:
|
||||
return response, []
|
||||
models_list = self.transport_response_simplified(response)
|
||||
models_list = self.filter_before_inject(models_list)
|
||||
if checks:
|
||||
|
|
|
@ -121,7 +121,10 @@ class PageByPageLister(SWHListerBase):
|
|||
|
||||
response, injected_repos = self.ingest_data(page,
|
||||
checks=check_existence)
|
||||
if not injected_repos:
|
||||
if not response and not injected_repos:
|
||||
logging.info('No response from api server, stopping')
|
||||
break
|
||||
elif not injected_repos:
|
||||
logging.info('Repositories already seen, stopping')
|
||||
break
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue