4     '''Download URL using proxy setup from environment (ATLAS_PROXIES, fallback to FRONTIER_SERVER)''' 
    7         filename = os.path.basename(url)
 
    9     if 'http_proxy' in os.environ:
 
   10         proxyList.append( os.environ[
'http_proxy'] )
 
   11     elif 'ATLAS_PROXIES' in os.environ:
 
   12         proxyList.extend( os.environ[
'ATLAS_PROXIES'].
split(
',') )
 
   13     elif 'FRONTIER_SERVER' in os.environ:
 
   14         frontierConfig = [ conf.lstrip(
'(') 
for conf 
in os.environ[
'FRONTIER_SERVER'].
split(
')') ]
 
   15         for conf 
in frontierConfig:
 
   16             if conf.startswith(
'proxyurl=http://'):
 
   17                 proxyList.append(conf.split(
'proxyurl=http://')[1])
 
   18     proxyList.append(
None) 
 
   19     msg = 
"Found proxy list %s\n" % proxyList
 
   20     for proxy 
in proxyList:
 
   22             os.environ[
'http_proxy'] = proxy
 
   23         elif 'http_proxy' in os.environ:
 
   24             del os.environ[
'http_proxy']
 
   25         cmd = 
"wget --waitretry=5 --tries=3 --connect-timeout=20 --read-timeout=120 -O %s %s" % (filename, url)
 
   26         msg += 
"Trying to retrieve '%s' using proxy '%s' via: %s\n" % (url, proxy, cmd)
 
   28         status, output = subprocess.getstatusoutput(cmd)
 
   30             msg += 
"Downloaded %s using proxy '%s'\n" % (url, proxy)
 
   33             msg += 
"Failed to get '%s' via proxy '%s'. exit status=%d, output='%s'\n" % (url, proxy, status, output)
 
   35                 msg += 
"All download attempts failed"