import re
import socket
from multiprocessing.dummy import Pool as ThreadPool
+from time import sleep
import docker
import requests
while retries < 20:
try:
r = _request_get(self._docker_base + "/" + combined_repo_name + "/tags")
+ sleep(0.5)
break
except requests.HTTPError as excinfo:
log.debug("Fetching Docker Hub tags. {}".format(excinfo))
return
log.debug("r.status_code = {}, ok={}".format(r.status_code, r.status_code == requests.codes.ok))
+ if r.status_code == 429:
+ # Speed throttling in effect. Cancel program
+ raise requests.HTTPError(
+ "Speed throttling in effect. To fast accessing dockerhub for tags.\n {}".format(r.text)
+ )
if r.status_code == requests.codes.ok:
raw_tags = r.text
raw_tags = raw_tags.replace("}]", "")