GNS3 / gns3-gui

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

Organize templates by type and not by version #3250

Open viets2k opened 5 years ago

viets2k commented 5 years ago

Hi,

DISCLAMER

To be honest the idea comes from eve-ng, I really like the way they handle images, but I prefer for all other things gns3.

DISCLAMER

I'ld like to suggest to change of the template/image handling.

I'm using multiple versions of Juniper devices for example:

Screenshot from 2021-08-14 21-25-26

First it's not very easy to overview all this images and second it doesn't allow me to change the firmware version without deleting and reconnecting a box.

I'ld like to suggest that in the gui, you just drop a VMX and with configure choose which version you'ld like to use. This would clean up the image view and if I change the version I don't need to reconnect all cabling. I still need to delete the disk to make sure that the new version is loaded, but this could be done automatically if the version is changed in the configure tab (possible with warning that startup config is lost?)

This could also change the format how images are stored in filesytem, I already use this format because I need in the company to sync with an eve-ng instance: /srv/gns3/images/QEMU/vmxvcp-17.4R2-S3.2-re1 /srv/gns3/images/QEMU/vmxvcp-18.4R2.7-re0 /srv/gns3/images/QEMU/vmxvcp-16.1R7-S5.2-re0 /srv/gns3/images/QEMU/csr1000v-universalk9.16.07.01-serial /srv/gns3/images/QEMU/vqfxpfe-10k-17.3R3-S2.2 /srv/gns3/images/QEMU/vmxvfp-17.4R2-S3.2-fpc0 /srv/gns3/images/QEMU/vmxvcp-17.3R3-S3.3-re1 /srv/gns3/images/QEMU/xrv9k-fullk9-vga-6.6.2 /srv/gns3/images/QEMU/vmxvcp-16.1R7-S5.2-re1 /srv/gns3/images/QEMU/vmxvfp-17.3R3-S3.3-fpc0 /srv/gns3/images/QEMU/vmxvfp-18.4R2.7-fpc0 /srv/gns3/images/QEMU/vmxvcp-17.4R2-S3.2-re0 /srv/gns3/images/QEMU/vqfxpfe-10k-18.4R1.8 /srv/gns3/images/QEMU/vmxvcp-17.3R3-S4.2-re0 /srv/gns3/images/QEMU/vmxvcp-17.3R3-S3.3-re0 /srv/gns3/images/QEMU/vqfxre-10k-18.4R1.8 /srv/gns3/images/QEMU/vmxvfp-16.1R7-S5.2-fpc0 /srv/gns3/images/QEMU/vmxvfp-17.3R3-S4.2-fpc0 /srv/gns3/images/QEMU/vqfxre-10k-17.3R3-S2.2 /srv/gns3/images/QEMU/vmxvcp-18.4R2.7-re1

It would be great, if you could enable a way to implement something like this.

Thanks in advance and kind regards Viets2k

davidban77 commented 5 years ago

This feature would make the client a lot more powerful and useful so +1 on the request, although I think it will not be an easy feature to develop

ghost commented 4 years ago

I agree with viets2k wholeheartedly. Working down the list of all gns3 appliances, the securecrt listing of all my appliances and all their logfiles matches up perfectly with my Microsoft Excel spreadsheet for all of my appliances and I can implement information hiding (it's termed a group in Excel) and I can fill out my spreadsheet perfectly. The .gnsa json key/values are perfectly decoupled from the directory structure on my GNS3 VM. So I can/will systematically work through all gns3 appliances - and I will presently just leave the hostname for the device in the GUI set to the verbose GNS3 name to make it easier to show someone who has an easy problem.

grossmj commented 3 years ago

This could also change the format how images are stored in filesytem

What is the advantage to store an image in a sub-directory?

viets2k commented 3 years ago

Hi,

at least now, we store these file this way to change version of a image via api.

For example, if we have a juniper vmx 20.1R1 we can delete it and recreate it with 21.1R1, at least now we need to change the disk image. If there is just a reference to a template in the api, we wouldn't care about the filesystem.

Hope you understand what I mean.

eantowne commented 3 years ago

This would also assist in the idea of allowing a projects used templates to be managed by the template itself and not the image version. This allows for easy interchange of image versions in a project or lab (from marketplace).

grossmj commented 2 years ago

Support is done on server side. Need to do the implementation in the desktop and web clients.