Explain that you need to download some image from websites

This commit is contained in:
Julien Duponchelle 2015-05-22 12:25:29 +02:00
parent 68fcefdc38
commit 38cccb7928
4 changed files with 48 additions and 6 deletions

View File

@ -0,0 +1,37 @@
{
"name": "Arista vEOS",
"category": "router",
"emulator": "qemu",
"vendor_name": "Arista",
"vendor_url": "http://www.arista.com/",
"documentation_url": "http://www.arista.com/docs/Manuals/ConfigGuide.pdf",
"product_name": "Arista vEOS",
"product_url": "https://eos.arista.com/",
"repository_version": 1,
"status": "stable",
"maintainer": "GNS3 Team",
"maintainer_email": "developers@gns3.net",
"adapter_type": "e1000",
"adapters": 8,
"hda_disk_image": [
{
"filename": "Aboot-veos-2.1.0.iso",
"version": "2.1.0",
"sha1sum": "ea9dc1989764fc6db1d388b061340743016214a7",
"download_url": "https://www.arista.com/en/support/software-download"
}
],
"hdb_disk_image": [
{
"filename": "vEOS-lab-4.13.8M.vmdk",
"version": "4.13.8M",
"sha1sum": "5f42d71b30bc682e44ccf7340e20ea7ea8967ef5",
"download_url": "https://www.arista.com/en/support/software-download"
}
],
"options": "-nographics",
"kvm_support": true,
"ram": 2048,
"processor": "x64"
}

View File

@ -10,7 +10,7 @@
"repository_version": 1,
"status": "stable",
"maintainer": "GNS3 Team",
"maintainer_email": "dev@gns3.net",
"maintainer_email": "developers@gns3.net",
"adapter_type": "e1000",
"adapters": 1,

View File

@ -77,7 +77,8 @@ if __name__ == "__main__":
print(" * {} {}: {}".format(file["version"], file["filename"], file["sha1sum"]))
elif args.install:
image = registry.download_image(args.install, config.images_dir)
add_image(image)
if image:
add_image(image)
else:
parser.print_help()
sys.exit(1)

View File

@ -51,10 +51,14 @@ class Registry:
if file["sha1sum"] == sha1sum:
path = os.path.join(images_dir, file["filename"])
print("Download {} to {}".format(file["direct_download_url"], path))
#TODO: Skip download if file already exist with same sha1
urllib.request.urlretrieve(file["direct_download_url"], path)
return path
if "direct_download_url" in file:
print("Download {} to {}".format(file["direct_download_url"], path))
#TODO: Skip download if file already exist with same sha1
urllib.request.urlretrieve(file["direct_download_url"], path)
return path
else:
print("You need to download by hand the image {filename} from:\n{download_url}\n\nAnd run: ./bin/gns3-get --add {filename}".format(filename=file["filename"], download_url=file["download_url"]))
return None
def search_device(self, query):
results = []