GNS3 / gns3-gui

GNS3 Graphical Network Simulator
http://www.gns3.com
GNU General Public License v3.0
2.17k stars 436 forks source link

Allow to import unknow files via GNS3A #980

Closed julien-duponchelle closed 8 years ago

julien-duponchelle commented 8 years ago

Andrew say that:

When using an appliance template to install IOS routers, I have binaries other than the defaults found in the template, so it refuses to import them. Some text saying "For now, you'll need to install this IOS router manually" would be good.

But it can be better to allow user to import not recognized image in case of the manufacturers release a new image.

grossmj commented 8 years ago

Yep, I was thinking this. The is the main drawback of the current system is that we must always keep updating .gns3a

This would allow more flexibility but we have to do it correctly...

julien-duponchelle commented 8 years ago

Yeah and suggesting people to send us the new settings.

On Tue, Feb 2, 2016 at 7:23 PM Jeremy Grossmann notifications@github.com wrote:

Yep, I was thinking this. The is the main drawback of the current system is that we must always keep updating .gns3a

This would allow more flexibility but we have to do it correctly...

— Reply to this email directly or view it on GitHub https://github.com/GNS3/gns3-gui/issues/980#issuecomment-178737209.

boenrobot commented 8 years ago

Maybe define URL templates instead of individual files? Like:

"version-constraint": "\\d+\\.\\d+(\\.\\d+)?(rc\\d+)?",
"image_templates": [
    {
        "filename": "chr-{version}.vmdk",
        "url": "http://download2.mikrotik.com/routeros/{version}/chr-{version}.vmdk"
    },
    {
        "filename": "chr-{version}.vdi",
        "url": "http://download2.mikrotik.com/routeros/{version}/chr-{version}.vdi"
    },
    {
        "filename": "chr-{version}.img",
        "url": "http://download2.mikrotik.com/routeros/{version}/chr-{version}.img.zip",
        "compression": "zip"
    },
]

And search for any files that match that pattern, while also letting the user to import a file matching the pattern.

When automatic download comes into play, also allow the user to type arbitrary version that matches the pattern and display the size and MD5 of the downloaded file, asking the user to confirm or retry.