mirror of
https://github.com/GNS3/gns3-registry.git
synced 2025-06-20 00:03:55 +00:00
24
check.py
24
check.py
@ -23,6 +23,15 @@ import subprocess
|
||||
import urllib.request
|
||||
|
||||
|
||||
def check_url(url, appliance):
|
||||
try:
|
||||
req = urllib.request.Request(url, method='HEAD')
|
||||
urllib.request.urlopen(req)
|
||||
except (urllib.error.HTTPError, urllib.error.URLError):
|
||||
print('Error with url ' + url + ' in appliance ' + appliance)
|
||||
sys.exit(1)
|
||||
|
||||
|
||||
def check_appliance(appliance):
|
||||
global images
|
||||
images = set()
|
||||
@ -46,12 +55,15 @@ def check_appliance(appliance):
|
||||
images.add(image['filename'])
|
||||
md5sums.add(image['md5sum'])
|
||||
if 'direct_download_url' in image:
|
||||
try:
|
||||
req = urllib.request.Request(image['direct_download_url'], method='HEAD')
|
||||
urllib.request.urlopen(req)
|
||||
except (urllib.error.HTTPError, urllib.error.URLError):
|
||||
print('File error ' + image['direct_download_url'])
|
||||
sys.exit(1)
|
||||
check_url(image['direct_download_url'], appliance)
|
||||
if 'download_url' in image:
|
||||
check_url(image['download_url'], appliance)
|
||||
if 'vendor_url' in image:
|
||||
check_url(image['vendor_url'], appliance)
|
||||
if 'documentation_url' in image:
|
||||
check_url(image['documentation_url'], appliance)
|
||||
if 'product_url' in image:
|
||||
check_url(image['product_url'], appliance)
|
||||
|
||||
for version in appliance_json['versions']:
|
||||
for image in version['images'].values():
|
||||
|
Reference in New Issue
Block a user