Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Replace save as by a export / import #995

Closed
julien-duponchelle opened this issue Feb 4, 2016 · 6 comments
Closed

Replace save as by a export / import #995

julien-duponchelle opened this issue Feb 4, 2016 · 6 comments
Assignees
Milestone

Comments

@julien-duponchelle
Copy link
Contributor

Since a long time we have issue with the save as because from user point of view it's simple it should like duplicating a Word document.

But from tech point of view it's require to export all the datas from the VM and reimport it and updating the VM and projects with new ids. Because GNS3 is not Word, but more like vSphere or Open Stack.

VIRL for example doesn't care about this and the .virl contain only the Cisco startup config. They didn't duplicate other data.

For UnetLab. I'm not sure if it's possible. I found nothing in their API. I should test a recent version to check.
http://www.unetlab.com/2015/09/using-unetlab-apis/#toc19

My proposal is to drop all the save as code and replace it by just:

  • exporting the lab to our export format (gns3z or something like that) to a temporary location
  • import the lab via the export format

We keep the save as menu as a shortcut for this operation.

The benefits is we have only one code base to maintain and since it will be the lab export feature we already know that we will maintain it carefully. It's transparent for the user just slower for common use case.

Also I note that nobody complains about the fact the save as doesn't support the GNS3 VM and remote servers actually.

@julien-duponchelle julien-duponchelle added this to the 1.5 milestone Feb 4, 2016
@julien-duponchelle
Copy link
Contributor Author

Tested with unetlab it's not supported

@ghost
Copy link

ghost commented Feb 5, 2016

I support that. Save-As had always some limitations/bugs, so I stopped using it.

Having an import and export tool would be great and using them to have a fully functional Save-As is a good idea.

@grossmj
Copy link
Member

grossmj commented Mar 23, 2016

👍 Let's do this.

@danieldemers
Copy link

I agree in re-purposing this to export/import and NOT save-as. One additional thought is to allow you to select what elements you want to export/import.

E.g. I have a IOU or Appliance Project. I want to export it, a dialogue should come up asking me what I want to export and then within that selection what I want to export again. You should be able to select a mix of what you want. For instance if I have a lab with 10 devices and an appliance. 3 of those devices work with the appliance but the other 7 have nothing to do with it. Let me checkbox what I care about, export that and leave the rest in the current project.

For instance if I have a lab with an appliance, some IOU, some IOS etc...Do you want to just export the IOU and leave the rest or maybe I just want to export the Appliance itself. The use case for this is I have a lab testing functionality of appliance but the IOU information is not relevant. Vice versa possibly. I dont care about the Fortinet I have in the lab...I just want the IOU.

Then based on the answer it will ask you what you actually want.

  • Export Configurations
  • Export Images in Use for the network elements
  • Export (situation specific data based on network elements)
  • Export File Structure (for IOU/appliance and nvram items etc..)

The major reason behind giving the option to be selective is space. If I have lab with many devices but I just want to share the appliance configuration then let me just export that.

@julien-duponchelle
Copy link
Contributor Author

At this time is not easy to do because export work at project level grabbing everything without a deep knowledge of where each VM has his file. Will think about that

@grossmj grossmj changed the title Replace save as by a export / import? Replace save as by a export / import May 7, 2016
julien-duponchelle added a commit to GNS3/gns3-server that referenced this issue Jul 25, 2016
@julien-duponchelle
Copy link
Contributor Author

Ok now we have an API in the server allowing us to import / export and project in a single operations.

/duplicate thanks to the ground work done for import / export it was easy to implement.

Most of the server side code is here:
https://github.com/GNS3/gns3-server/blob/2.0/gns3server/controller/project.py#L463

Nice side effect save as work for situations:

  • local server only
  • local server + vm
  • local server + remotes

julien-duponchelle added a commit to GNS3/gns3-server that referenced this issue Jul 25, 2016
julien-duponchelle added a commit to GNS3/gns3-server that referenced this issue Jul 25, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants