├── .coveragerc ├── .gitattributes ├── .github └── workflows │ ├── add-new-issues-to-project.yml │ ├── codeql-analysis.yml │ ├── publish-api-documentation.yml │ └── testing.yml ├── .gitignore ├── .whitesource ├── AUTHORS ├── CHANGELOG ├── CONTRIBUTING.md ├── Dockerfile ├── LICENSE ├── MANIFEST.in ├── README.md ├── SECURITY.md ├── compose.yaml ├── conf └── gns3_server.conf ├── dev-requirements.txt ├── docs ├── Makefile ├── __init__.py ├── _static │ └── .keep ├── api │ ├── examples │ │ ├── compute_delete_projectsprojectid.txt │ │ ├── compute_delete_projectsprojectidcloudnodesnodeid.txt │ │ ├── compute_delete_projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdnio.txt │ │ ├── compute_delete_projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdnio.txt │ │ ├── compute_delete_projectsprojectidiounodesnodeid.txt │ │ ├── compute_delete_projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdnio.txt │ │ ├── compute_delete_projectsprojectidnatnodesnodeid.txt │ │ ├── compute_delete_projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdnio.txt │ │ ├── compute_delete_projectsprojectidqemunodesnodeid.txt │ │ ├── compute_delete_projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdnio.txt │ │ ├── compute_delete_projectsprojectidtracengnodesnodeid.txt │ │ ├── compute_delete_projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdnio.txt │ │ ├── compute_delete_projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdnio.txt │ │ ├── compute_delete_projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdnio.txt │ │ ├── compute_delete_projectsprojectidvpcsnodesnodeid.txt │ │ ├── compute_delete_projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdnio.txt │ │ ├── compute_get_capabilities.txt │ │ ├── compute_get_iouimages.txt │ │ ├── compute_get_networkinterfaces.txt │ │ ├── compute_get_projects.txt │ │ ├── compute_get_projectsprojectid.txt │ │ ├── compute_get_projectsprojectidcloudnodesnodeid.txt │ │ ├── compute_get_projectsprojectidiounodesnodeid.txt │ │ ├── compute_get_projectsprojectidnatnodesnodeid.txt │ │ ├── compute_get_projectsprojectidqemunodesnodeid.txt │ │ ├── compute_get_projectsprojectidtracengnodesnodeid.txt │ │ ├── compute_get_projectsprojectidvirtualboxnodesnodeid.txt │ │ ├── compute_get_projectsprojectidvmwarenodesnodeid.txt │ │ ├── compute_get_projectsprojectidvpcsnodesnodeid.txt │ │ ├── compute_get_qemubinaries.txt │ │ ├── compute_get_qemucapabilities.txt │ │ ├── compute_get_version.txt │ │ ├── compute_post_projects.txt │ │ ├── compute_post_projectsprojectidclose.txt │ │ ├── compute_post_projectsprojectidcloudnodes.txt │ │ ├── compute_post_projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdnio.txt │ │ ├── compute_post_projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt │ │ ├── compute_post_projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt │ │ ├── compute_post_projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdnio.txt │ │ ├── compute_post_projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt │ │ ├── compute_post_projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt │ │ ├── compute_post_projectsprojectiddockernodesnodeidduplicate.txt │ │ ├── compute_post_projectsprojectidiounodes.txt │ │ ├── compute_post_projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdnio.txt │ │ ├── compute_post_projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt │ │ ├── compute_post_projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt │ │ ├── compute_post_projectsprojectidiounodesnodeidduplicate.txt │ │ ├── compute_post_projectsprojectidiounodesnodeidreload.txt │ │ ├── compute_post_projectsprojectidiounodesnodeidstart.txt │ │ ├── compute_post_projectsprojectidiounodesnodeidstop.txt │ │ ├── compute_post_projectsprojectidnatnodes.txt │ │ ├── compute_post_projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdnio.txt │ │ ├── compute_post_projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt │ │ ├── compute_post_projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt │ │ ├── compute_post_projectsprojectidportsudp.txt │ │ ├── compute_post_projectsprojectidqemunodes.txt │ │ ├── compute_post_projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdnio.txt │ │ ├── compute_post_projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt │ │ ├── compute_post_projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt │ │ ├── compute_post_projectsprojectidqemunodesnodeidduplicate.txt │ │ ├── compute_post_projectsprojectidqemunodesnodeidreload.txt │ │ ├── compute_post_projectsprojectidqemunodesnodeidresume.txt │ │ ├── compute_post_projectsprojectidqemunodesnodeidstart.txt │ │ ├── compute_post_projectsprojectidqemunodesnodeidstop.txt │ │ ├── compute_post_projectsprojectidqemunodesnodeidsuspend.txt │ │ ├── compute_post_projectsprojectidtracengnodes.txt │ │ ├── compute_post_projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdnio.txt │ │ ├── compute_post_projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt │ │ ├── compute_post_projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt │ │ ├── compute_post_projectsprojectidtracengnodesnodeidduplicate.txt │ │ ├── compute_post_projectsprojectidtracengnodesnodeidreload.txt │ │ ├── compute_post_projectsprojectidtracengnodesnodeidstart.txt │ │ ├── compute_post_projectsprojectidtracengnodesnodeidstop.txt │ │ ├── compute_post_projectsprojectidvirtualboxnodes.txt │ │ ├── compute_post_projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdnio.txt │ │ ├── compute_post_projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt │ │ ├── compute_post_projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt │ │ ├── compute_post_projectsprojectidvirtualboxnodesnodeidreload.txt │ │ ├── compute_post_projectsprojectidvirtualboxnodesnodeidresume.txt │ │ ├── compute_post_projectsprojectidvirtualboxnodesnodeidstart.txt │ │ ├── compute_post_projectsprojectidvirtualboxnodesnodeidstop.txt │ │ ├── compute_post_projectsprojectidvirtualboxnodesnodeidsuspend.txt │ │ ├── compute_post_projectsprojectidvmwarenodes.txt │ │ ├── compute_post_projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdnio.txt │ │ ├── compute_post_projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt │ │ ├── compute_post_projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt │ │ ├── compute_post_projectsprojectidvmwarenodesnodeidreload.txt │ │ ├── compute_post_projectsprojectidvmwarenodesnodeidresume.txt │ │ ├── compute_post_projectsprojectidvmwarenodesnodeidstart.txt │ │ ├── compute_post_projectsprojectidvmwarenodesnodeidstop.txt │ │ ├── compute_post_projectsprojectidvmwarenodesnodeidsuspend.txt │ │ ├── compute_post_projectsprojectidvpcsnodes.txt │ │ ├── compute_post_projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdnio.txt │ │ ├── compute_post_projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.txt │ │ ├── compute_post_projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt │ │ ├── compute_post_projectsprojectidvpcsnodesnodeidduplicate.txt │ │ ├── compute_post_projectsprojectidvpcsnodesnodeidreload.txt │ │ ├── compute_post_projectsprojectidvpcsnodesnodeidstart.txt │ │ ├── compute_post_projectsprojectidvpcsnodesnodeidstop.txt │ │ ├── compute_post_qemuimg.txt │ │ ├── compute_put_projectsprojectid.txt │ │ ├── compute_put_projectsprojectidcloudnodesnodeid.txt │ │ ├── compute_put_projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdnio.txt │ │ ├── compute_put_projectsprojectiddockernodesnodeid.txt │ │ ├── compute_put_projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdnio.txt │ │ ├── compute_put_projectsprojectidiounodesnodeid.txt │ │ ├── compute_put_projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdnio.txt │ │ ├── compute_put_projectsprojectidnatnodesnodeid.txt │ │ ├── compute_put_projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdnio.txt │ │ ├── compute_put_projectsprojectidqemunodesnodeid.txt │ │ ├── compute_put_projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdnio.txt │ │ ├── compute_put_projectsprojectidtracengnodesnodeid.txt │ │ ├── compute_put_projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdnio.txt │ │ ├── compute_put_projectsprojectidvirtualboxnodesnodeid.txt │ │ ├── compute_put_projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdnio.txt │ │ ├── compute_put_projectsprojectidvmwarenodesnodeid.txt │ │ ├── compute_put_projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdnio.txt │ │ ├── compute_put_projectsprojectidvpcsnodesnodeid.txt │ │ ├── compute_put_projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdnio.txt │ │ ├── controller_delete_computescomputeid.txt │ │ ├── controller_delete_projectsprojectid.txt │ │ ├── controller_delete_projectsprojectiddrawingsdrawingid.txt │ │ ├── controller_delete_projectsprojectidlinkslinkid.txt │ │ ├── controller_delete_projectsprojectidnodesnodeid.txt │ │ ├── controller_delete_projectsprojectidsnapshotssnapshotid.txt │ │ ├── controller_delete_templatestemplateid.txt │ │ ├── controller_get_appliances.txt │ │ ├── controller_get_computes.txt │ │ ├── controller_get_computescomputeid.txt │ │ ├── controller_get_computescomputeidemulatoraction.txt │ │ ├── controller_get_computescomputeidemulatorimages.txt │ │ ├── controller_get_gns3vm.txt │ │ ├── controller_get_gns3vmengines.txt │ │ ├── controller_get_gns3vmenginesenginevms.txt │ │ ├── controller_get_projects.txt │ │ ├── controller_get_projectsprojectid.txt │ │ ├── controller_get_projectsprojectiddrawings.txt │ │ ├── controller_get_projectsprojectiddrawingsdrawingid.txt │ │ ├── controller_get_projectsprojectidlinks.txt │ │ ├── controller_get_projectsprojectidlinkslinkid.txt │ │ ├── controller_get_projectsprojectidlinkslinkidavailablefilters.txt │ │ ├── controller_get_projectsprojectidnodes.txt │ │ ├── controller_get_projectsprojectidnodesnodeid.txt │ │ ├── controller_get_projectsprojectidnodesnodeiddynamipsautoidlepc.txt │ │ ├── controller_get_projectsprojectidnodesnodeiddynamipsidlepcproposals.txt │ │ ├── controller_get_projectsprojectidsnapshots.txt │ │ ├── controller_get_symbols.txt │ │ ├── controller_get_templates.txt │ │ ├── controller_get_templatestemplateid.txt │ │ ├── controller_get_version.txt │ │ ├── controller_post_computes.txt │ │ ├── controller_post_computescomputeidautoidlepc.txt │ │ ├── controller_post_computescomputeidemulatoraction.txt │ │ ├── controller_post_projects.txt │ │ ├── controller_post_projectsload.txt │ │ ├── controller_post_projectsprojectidclose.txt │ │ ├── controller_post_projectsprojectiddrawings.txt │ │ ├── controller_post_projectsprojectidduplicate.txt │ │ ├── controller_post_projectsprojectidlinks.txt │ │ ├── controller_post_projectsprojectidlinkslinkidstartcapture.txt │ │ ├── controller_post_projectsprojectidlinkslinkidstopcapture.txt │ │ ├── controller_post_projectsprojectidnodes.txt │ │ ├── controller_post_projectsprojectidnodesnodeidduplicate.txt │ │ ├── controller_post_projectsprojectidnodesnodeidreload.txt │ │ ├── controller_post_projectsprojectidnodesnodeidstart.txt │ │ ├── controller_post_projectsprojectidnodesnodeidstop.txt │ │ ├── controller_post_projectsprojectidnodesnodeidsuspend.txt │ │ ├── controller_post_projectsprojectidnodesreload.txt │ │ ├── controller_post_projectsprojectidnodesstart.txt │ │ ├── controller_post_projectsprojectidnodesstop.txt │ │ ├── controller_post_projectsprojectidnodessuspend.txt │ │ ├── controller_post_projectsprojectidopen.txt │ │ ├── controller_post_projectsprojectidsnapshots.txt │ │ ├── controller_post_projectsprojectidsnapshotssnapshotidrestore.txt │ │ ├── controller_post_shutdown.txt │ │ ├── controller_post_templates.txt │ │ ├── controller_post_templatestemplateidduplicate.txt │ │ ├── controller_post_version.txt │ │ ├── controller_put_computescomputeid.txt │ │ ├── controller_put_gns3vm.txt │ │ ├── controller_put_projectsprojectid.txt │ │ ├── controller_put_projectsprojectiddrawingsdrawingid.txt │ │ ├── controller_put_projectsprojectidlinkslinkid.txt │ │ ├── controller_put_projectsprojectidnodesnodeid.txt │ │ └── controller_put_templatestemplateid.txt │ ├── notifications │ │ ├── compute.created.json │ │ ├── compute.deleted.json │ │ ├── compute.updated.json │ │ ├── drawing.created.json │ │ ├── drawing.deleted.json │ │ ├── drawing.updated.json │ │ ├── ignore.json │ │ ├── link.created.json │ │ ├── link.deleted.json │ │ ├── link.updated.json │ │ ├── log.error.json │ │ ├── log.info.json │ │ ├── log.warning.json │ │ ├── node.created.json │ │ ├── node.deleted.json │ │ ├── node.updated.json │ │ ├── ping.json │ │ ├── project.closed.json │ │ ├── project.created.json │ │ ├── project.deleted.json │ │ ├── project.opened.json │ │ ├── project.updated.json │ │ ├── snapshot.restored.json │ │ ├── template.created.json │ │ ├── template.deleted.json │ │ ├── template.updated.json │ │ └── test.json │ └── v2 │ │ ├── compute │ │ ├── atm_switch.rst │ │ ├── atm_switch │ │ │ ├── projectsprojectidatmrelayswitchnodesnodeidadaptersadapternumberdportsportnumberdpcap.rst │ │ │ ├── projectsprojectidatmrelayswitchnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst │ │ │ ├── projectsprojectidatmswitchnodes.rst │ │ │ ├── projectsprojectidatmswitchnodesnodeid.rst │ │ │ ├── projectsprojectidatmswitchnodesnodeidadaptersadapternumberdportsportnumberdnio.rst │ │ │ ├── projectsprojectidatmswitchnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst │ │ │ ├── projectsprojectidatmswitchnodesnodeidduplicate.rst │ │ │ ├── projectsprojectidatmswitchnodesnodeidstart.rst │ │ │ ├── projectsprojectidatmswitchnodesnodeidstop.rst │ │ │ └── projectsprojectidatmswitchnodesnodeidsuspend.rst │ │ ├── capabilities.rst │ │ ├── capabilities │ │ │ └── capabilities.rst │ │ ├── cloud.rst │ │ ├── cloud │ │ │ ├── projectsprojectidcloudnodes.rst │ │ │ ├── projectsprojectidcloudnodesnodeid.rst │ │ │ ├── projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdnio.rst │ │ │ ├── projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdpcap.rst │ │ │ ├── projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst │ │ │ ├── projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst │ │ │ ├── projectsprojectidcloudnodesnodeidstart.rst │ │ │ ├── projectsprojectidcloudnodesnodeidstop.rst │ │ │ └── projectsprojectidcloudnodesnodeidsuspend.rst │ │ ├── docker.rst │ │ ├── docker │ │ │ ├── dockerimages.rst │ │ │ ├── projectsprojectiddockernodes.rst │ │ │ ├── projectsprojectiddockernodesnodeid.rst │ │ │ ├── projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdnio.rst │ │ │ ├── projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdpcap.rst │ │ │ ├── projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst │ │ │ ├── projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst │ │ │ ├── projectsprojectiddockernodesnodeidduplicate.rst │ │ │ ├── projectsprojectiddockernodesnodeidpause.rst │ │ │ ├── projectsprojectiddockernodesnodeidreload.rst │ │ │ ├── projectsprojectiddockernodesnodeidstart.rst │ │ │ ├── projectsprojectiddockernodesnodeidstop.rst │ │ │ ├── projectsprojectiddockernodesnodeidsuspend.rst │ │ │ └── projectsprojectiddockernodesnodeidunpause.rst │ │ ├── dynamips_vm.rst │ │ ├── dynamips_vm │ │ │ ├── dynamipsimages.rst │ │ │ ├── dynamipsimagesfilename.rst │ │ │ ├── projectsprojectiddynamipsnodes.rst │ │ │ ├── projectsprojectiddynamipsnodesnodeid.rst │ │ │ ├── projectsprojectiddynamipsnodesnodeidadaptersadapternumberdportsportnumberdnio.rst │ │ │ ├── projectsprojectiddynamipsnodesnodeidadaptersadapternumberdportsportnumberdpcap.rst │ │ │ ├── projectsprojectiddynamipsnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst │ │ │ ├── projectsprojectiddynamipsnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst │ │ │ ├── projectsprojectiddynamipsnodesnodeidautoidlepc.rst │ │ │ ├── projectsprojectiddynamipsnodesnodeidduplicate.rst │ │ │ ├── projectsprojectiddynamipsnodesnodeididlepcproposals.rst │ │ │ ├── projectsprojectiddynamipsnodesnodeidreload.rst │ │ │ ├── projectsprojectiddynamipsnodesnodeidresume.rst │ │ │ ├── projectsprojectiddynamipsnodesnodeidstart.rst │ │ │ ├── projectsprojectiddynamipsnodesnodeidstop.rst │ │ │ └── projectsprojectiddynamipsnodesnodeidsuspend.rst │ │ ├── ethernet_hub.rst │ │ ├── ethernet_hub │ │ │ ├── projectsprojectidethernethubnodes.rst │ │ │ ├── projectsprojectidethernethubnodesnodeid.rst │ │ │ ├── projectsprojectidethernethubnodesnodeidadaptersadapternumberdportsportnumberdnio.rst │ │ │ ├── projectsprojectidethernethubnodesnodeidadaptersadapternumberdportsportnumberdpcap.rst │ │ │ ├── projectsprojectidethernethubnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst │ │ │ ├── projectsprojectidethernethubnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst │ │ │ ├── projectsprojectidethernethubnodesnodeidduplicate.rst │ │ │ ├── projectsprojectidethernethubnodesnodeidstart.rst │ │ │ ├── projectsprojectidethernethubnodesnodeidstop.rst │ │ │ └── projectsprojectidethernethubnodesnodeidsuspend.rst │ │ ├── ethernet_switch.rst │ │ ├── ethernet_switch │ │ │ ├── projectsprojectidethernetswitchnodes.rst │ │ │ ├── projectsprojectidethernetswitchnodesnodeid.rst │ │ │ ├── projectsprojectidethernetswitchnodesnodeidadaptersadapternumberdportsportnumberdnio.rst │ │ │ ├── projectsprojectidethernetswitchnodesnodeidadaptersadapternumberdportsportnumberdpcap.rst │ │ │ ├── projectsprojectidethernetswitchnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst │ │ │ ├── projectsprojectidethernetswitchnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst │ │ │ ├── projectsprojectidethernetswitchnodesnodeidduplicate.rst │ │ │ ├── projectsprojectidethernetswitchnodesnodeidstart.rst │ │ │ ├── projectsprojectidethernetswitchnodesnodeidstop.rst │ │ │ └── projectsprojectidethernetswitchnodesnodeidsuspend.rst │ │ ├── frame_relay_switch.rst │ │ ├── frame_relay_switch │ │ │ ├── projectsprojectidframerelayswitchnodes.rst │ │ │ ├── projectsprojectidframerelayswitchnodesnodeid.rst │ │ │ ├── projectsprojectidframerelayswitchnodesnodeidadaptersadapternumberdportsportnumberdnio.rst │ │ │ ├── projectsprojectidframerelayswitchnodesnodeidadaptersadapternumberdportsportnumberdpcap.rst │ │ │ ├── projectsprojectidframerelayswitchnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst │ │ │ ├── projectsprojectidframerelayswitchnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst │ │ │ ├── projectsprojectidframerelayswitchnodesnodeidduplicate.rst │ │ │ ├── projectsprojectidframerelayswitchnodesnodeidstart.rst │ │ │ ├── projectsprojectidframerelayswitchnodesnodeidstop.rst │ │ │ └── projectsprojectidframerelayswitchnodesnodeidsuspend.rst │ │ ├── iou.rst │ │ ├── iou │ │ │ ├── iouimages.rst │ │ │ ├── iouimagesfilename.rst │ │ │ ├── projectsprojectidiounodes.rst │ │ │ ├── projectsprojectidiounodesnodeid.rst │ │ │ ├── projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdnio.rst │ │ │ ├── projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdpcap.rst │ │ │ ├── projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst │ │ │ ├── projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst │ │ │ ├── projectsprojectidiounodesnodeidduplicate.rst │ │ │ ├── projectsprojectidiounodesnodeidreload.rst │ │ │ ├── projectsprojectidiounodesnodeidstart.rst │ │ │ ├── projectsprojectidiounodesnodeidstop.rst │ │ │ └── projectsprojectidiounodesnodeidsuspend.rst │ │ ├── nat.rst │ │ ├── nat │ │ │ ├── projectsprojectidnatnodes.rst │ │ │ ├── projectsprojectidnatnodesnodeid.rst │ │ │ ├── projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdnio.rst │ │ │ ├── projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdpcap.rst │ │ │ ├── projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst │ │ │ ├── projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst │ │ │ ├── projectsprojectidnatnodesnodeidstart.rst │ │ │ ├── projectsprojectidnatnodesnodeidstop.rst │ │ │ └── projectsprojectidnatnodesnodeidsuspend.rst │ │ ├── network.rst │ │ ├── network │ │ │ ├── networkinterfaces.rst │ │ │ ├── networkports.rst │ │ │ └── projectsprojectidportsudp.rst │ │ ├── notification.rst │ │ ├── notification │ │ │ └── notificationsws.rst │ │ ├── project.rst │ │ ├── project │ │ │ ├── projects.rst │ │ │ ├── projectsprojectid.rst │ │ │ ├── projectsprojectidclose.rst │ │ │ ├── projectsprojectidfiles.rst │ │ │ ├── projectsprojectidfilespath.rst │ │ │ └── projectsprojectidnotifications.rst │ │ ├── qemu.rst │ │ ├── qemu │ │ │ ├── projectsprojectidqemunodes.rst │ │ │ ├── projectsprojectidqemunodesnodeid.rst │ │ │ ├── projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdnio.rst │ │ │ ├── projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdpcap.rst │ │ │ ├── projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst │ │ │ ├── projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst │ │ │ ├── projectsprojectidqemunodesnodeidduplicate.rst │ │ │ ├── projectsprojectidqemunodesnodeidreload.rst │ │ │ ├── projectsprojectidqemunodesnodeidresizedisk.rst │ │ │ ├── projectsprojectidqemunodesnodeidresume.rst │ │ │ ├── projectsprojectidqemunodesnodeidstart.rst │ │ │ ├── projectsprojectidqemunodesnodeidstop.rst │ │ │ ├── projectsprojectidqemunodesnodeidsuspend.rst │ │ │ ├── qemubinaries.rst │ │ │ ├── qemucapabilities.rst │ │ │ ├── qemuimages.rst │ │ │ ├── qemuimagesfilename.rst │ │ │ ├── qemuimg.rst │ │ │ └── qemuimgbinaries.rst │ │ ├── server.rst │ │ ├── server │ │ │ ├── debug.rst │ │ │ └── version.rst │ │ ├── traceng.rst │ │ ├── traceng │ │ │ ├── projectsprojectidtracengnodes.rst │ │ │ ├── projectsprojectidtracengnodesnodeid.rst │ │ │ ├── projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdnio.rst │ │ │ ├── projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdpcap.rst │ │ │ ├── projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst │ │ │ ├── projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst │ │ │ ├── projectsprojectidtracengnodesnodeidduplicate.rst │ │ │ ├── projectsprojectidtracengnodesnodeidreload.rst │ │ │ ├── projectsprojectidtracengnodesnodeidstart.rst │ │ │ ├── projectsprojectidtracengnodesnodeidstop.rst │ │ │ └── projectsprojectidtracengnodesnodeidsuspend.rst │ │ ├── virtualbox.rst │ │ ├── virtualbox │ │ │ ├── projectsprojectidvirtualboxnodes.rst │ │ │ ├── projectsprojectidvirtualboxnodesnodeid.rst │ │ │ ├── projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdnio.rst │ │ │ ├── projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdpcap.rst │ │ │ ├── projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst │ │ │ ├── projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst │ │ │ ├── projectsprojectidvirtualboxnodesnodeidreload.rst │ │ │ ├── projectsprojectidvirtualboxnodesnodeidresume.rst │ │ │ ├── projectsprojectidvirtualboxnodesnodeidstart.rst │ │ │ ├── projectsprojectidvirtualboxnodesnodeidstop.rst │ │ │ ├── projectsprojectidvirtualboxnodesnodeidsuspend.rst │ │ │ └── virtualboxvms.rst │ │ ├── vmware.rst │ │ ├── vmware │ │ │ ├── projectsprojectidvmwarenodes.rst │ │ │ ├── projectsprojectidvmwarenodesnodeid.rst │ │ │ ├── projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdnio.rst │ │ │ ├── projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdpcap.rst │ │ │ ├── projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst │ │ │ ├── projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst │ │ │ ├── projectsprojectidvmwarenodesnodeidinterfacesvmnet.rst │ │ │ ├── projectsprojectidvmwarenodesnodeidreload.rst │ │ │ ├── projectsprojectidvmwarenodesnodeidresume.rst │ │ │ ├── projectsprojectidvmwarenodesnodeidstart.rst │ │ │ ├── projectsprojectidvmwarenodesnodeidstop.rst │ │ │ ├── projectsprojectidvmwarenodesnodeidsuspend.rst │ │ │ └── vmwarevms.rst │ │ ├── vpcs.rst │ │ └── vpcs │ │ │ ├── projectsprojectidvpcsnodes.rst │ │ │ ├── projectsprojectidvpcsnodesnodeid.rst │ │ │ ├── projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdnio.rst │ │ │ ├── projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdpcap.rst │ │ │ ├── projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdstartcapture.rst │ │ │ ├── projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.rst │ │ │ ├── projectsprojectidvpcsnodesnodeidduplicate.rst │ │ │ ├── projectsprojectidvpcsnodesnodeidreload.rst │ │ │ ├── projectsprojectidvpcsnodesnodeidstart.rst │ │ │ ├── projectsprojectidvpcsnodesnodeidstop.rst │ │ │ └── projectsprojectidvpcsnodesnodeidsuspend.rst │ │ └── controller │ │ ├── appliance.rst │ │ ├── appliance │ │ └── appliances.rst │ │ ├── compute.rst │ │ ├── compute │ │ ├── s.rst │ │ ├── sendpointidemulatoraction.rst │ │ ├── sid.rst │ │ ├── sidautoidlepc.rst │ │ ├── sidemulatoraction.rst │ │ ├── sidemulatorimages.rst │ │ └── sidports.rst │ │ ├── drawing.rst │ │ ├── drawing │ │ ├── projectsprojectiddrawings.rst │ │ └── projectsprojectiddrawingsdrawingid.rst │ │ ├── gns3_vm.rst │ │ ├── gns3_vm │ │ ├── gns3vm.rst │ │ ├── gns3vmengines.rst │ │ └── gns3vmenginesenginevms.rst │ │ ├── link.rst │ │ ├── link │ │ ├── projectsprojectidlinks.rst │ │ ├── projectsprojectidlinkslinkid.rst │ │ ├── projectsprojectidlinkslinkidavailablefilters.rst │ │ ├── projectsprojectidlinkslinkidpcap.rst │ │ ├── projectsprojectidlinkslinkidstartcapture.rst │ │ └── projectsprojectidlinkslinkidstopcapture.rst │ │ ├── node.rst │ │ ├── node │ │ ├── projectsprojectidnodes.rst │ │ ├── projectsprojectidnodesnodeid.rst │ │ ├── projectsprojectidnodesnodeidduplicate.rst │ │ ├── projectsprojectidnodesnodeiddynamipsautoidlepc.rst │ │ ├── projectsprojectidnodesnodeiddynamipsidlepcproposals.rst │ │ ├── projectsprojectidnodesnodeidfilespath.rst │ │ ├── projectsprojectidnodesnodeidlinks.rst │ │ ├── projectsprojectidnodesnodeidreload.rst │ │ ├── projectsprojectidnodesnodeidresizedisk.rst │ │ ├── projectsprojectidnodesnodeidstart.rst │ │ ├── projectsprojectidnodesnodeidstop.rst │ │ ├── projectsprojectidnodesnodeidsuspend.rst │ │ ├── projectsprojectidnodesreload.rst │ │ ├── projectsprojectidnodesstart.rst │ │ ├── projectsprojectidnodesstop.rst │ │ └── projectsprojectidnodessuspend.rst │ │ ├── notification.rst │ │ ├── notification │ │ ├── notifications.rst │ │ └── notificationsws.rst │ │ ├── project.rst │ │ ├── project │ │ ├── projects.rst │ │ ├── projectsload.rst │ │ ├── projectsprojectid.rst │ │ ├── projectsprojectidclose.rst │ │ ├── projectsprojectidduplicate.rst │ │ ├── projectsprojectidexport.rst │ │ ├── projectsprojectidfilespath.rst │ │ ├── projectsprojectidimport.rst │ │ ├── projectsprojectidnotifications.rst │ │ ├── projectsprojectidnotificationsws.rst │ │ ├── projectsprojectidopen.rst │ │ └── projectsprojectidstats.rst │ │ ├── server.rst │ │ ├── server │ │ ├── debug.rst │ │ ├── ioulicense.rst │ │ ├── shutdown.rst │ │ └── version.rst │ │ ├── snapshot.rst │ │ ├── snapshot │ │ ├── projectsprojectidsnapshots.rst │ │ ├── projectsprojectidsnapshotssnapshotid.rst │ │ └── projectsprojectidsnapshotssnapshotidrestore.rst │ │ ├── symbol.rst │ │ ├── symbol │ │ ├── defaultsymbols.rst │ │ ├── symbols.rst │ │ └── symbolssymbolidraw.rst │ │ ├── template.rst │ │ └── template │ │ ├── projectsprojectidtemplatestemplateid.rst │ │ ├── templates.rst │ │ ├── templatestemplateid.rst │ │ └── templatestemplateidduplicate.rst ├── conf.py ├── controller_notifications.rst ├── curl.rst ├── development.rst ├── endpoints.rst ├── file_format.rst ├── general.rst ├── glossary.rst ├── gns3_file.json ├── index.rst ├── make.bat ├── position.rst └── project_notifications.rst ├── gns3server.bat ├── gns3server ├── __init__.py ├── __main__.py ├── appliances │ ├── 6wind-turbo-router.gns3a │ ├── IPCop.gns3a │ ├── a10-vthunder.gns3a │ ├── aaa.gns3a │ ├── alcatel-7750.gns3a │ ├── almalinux.gns3a │ ├── alpine-cloud.gns3a │ ├── alpine-linux-virt.gns3a │ ├── alpine-linux.gns3a │ ├── arista-ceos.gns3a │ ├── arista-veos.gns3a │ ├── aruba-arubaoscx.gns3a │ ├── aruba-vgw.gns3a │ ├── aruba-vmc.gns3a │ ├── asterfusion-vAsterNOS-campus.gns3a │ ├── asterfusion-vAsterNOS.gns3a │ ├── asterisk.gns3a │ ├── bigswitch-bigcloud-fabric.gns3a │ ├── bird.gns3a │ ├── bird2.gns3a │ ├── brocade-vadx.gns3a │ ├── brocade-vrouter.gns3a │ ├── brocade-vtm.gns3a │ ├── bsdrp.gns3a │ ├── centos-cloud.gns3a │ ├── centos7.gns3a │ ├── checkpoint-gaia.gns3a │ ├── chromium.gns3a │ ├── cisco-1700.gns3a │ ├── cisco-2600.gns3a │ ├── cisco-2691.gns3a │ ├── cisco-3620.gns3a │ ├── cisco-3640.gns3a │ ├── cisco-3660.gns3a │ ├── cisco-3725.gns3a │ ├── cisco-3745.gns3a │ ├── cisco-7200.gns3a │ ├── cisco-asa.gns3a │ ├── cisco-asav.gns3a │ ├── cisco-c8000v.gns3a │ ├── cisco-cat9k.gns3a │ ├── cisco-csr1000v.gns3a │ ├── cisco-dcnm.gns3a │ ├── cisco-fcnf.gns3a │ ├── cisco-fmcv.gns3a │ ├── cisco-fsve.gns3a │ ├── cisco-ftdv.gns3a │ ├── cisco-iosv.gns3a │ ├── cisco-iosvl2.gns3a │ ├── cisco-iosxrv.gns3a │ ├── cisco-iosxrv9k.gns3a │ ├── cisco-iou-l2.gns3a │ ├── cisco-iou-l3.gns3a │ ├── cisco-ise.gns3a │ ├── cisco-ngipsv.gns3a │ ├── cisco-nxosv.gns3a │ ├── cisco-nxosv9k.gns3a │ ├── cisco-pyats.gns3a │ ├── cisco-smc.gns3a │ ├── cisco-vWLC.gns3a │ ├── cisco-wsav.gns3a │ ├── citrix-netscaler-vpx.gns3a │ ├── citrix-sd-wan.gns3a │ ├── citrix-sdwan-center.gns3a │ ├── clavister-netsheild.gns3a │ ├── clavister-netwall.gns3a │ ├── clearos.gns3a │ ├── cloudrouter.gns3a │ ├── coreos.gns3a │ ├── cumulus-vx.gns3a │ ├── danos.gns3a │ ├── debian.gns3a │ ├── deft-linux.gns3a │ ├── dell-ftos.gns3a │ ├── dns.gns3a │ ├── empty-vm.gns3a │ ├── endhost.gns3a │ ├── exos.gns3a │ ├── extreme-networks-voss.gns3a │ ├── f5-bigip.gns3a │ ├── f5-bigiq.gns3a │ ├── fedora-cloud.gns3a │ ├── firefox.gns3a │ ├── fortiadc-manager.gns3a │ ├── fortiadc.gns3a │ ├── fortianalyzer.gns3a │ ├── fortiauthenticator.gns3a │ ├── forticache.gns3a │ ├── fortigate.gns3a │ ├── fortimail.gns3a │ ├── fortimanager.gns3a │ ├── fortiproxy.gns3a │ ├── fortirecorder.gns3a │ ├── fortisandbox.gns3a │ ├── fortisiem-super_worker.gns3a │ ├── fortiweb.gns3a │ ├── freeRouter.gns3a │ ├── freebsd.gns3a │ ├── freenas.gns3a │ ├── frr.gns3a │ ├── haproxy.gns3a │ ├── hbcd-pe.gns3a │ ├── hp-vsr1001.gns3a │ ├── huawei-ar1kv.gns3a │ ├── huawei-ce12800.gns3a │ ├── huawei-ne40e.gns3a │ ├── huawei-usg6kv.gns3a │ ├── infix.gns3a │ ├── innovaphone-app.gns3a │ ├── innovaphone-ipva.gns3a │ ├── ipfire.gns3a │ ├── ipterm.gns3a │ ├── ipxe.gns3a │ ├── juniper-junos-space.gns3a │ ├── juniper-vJunos-router.gns3a │ ├── juniper-vmx-legacy.gns3a │ ├── juniper-vmx-vcp.gns3a │ ├── juniper-vmx-vfp.gns3a │ ├── juniper-vqfx-pfe.gns3a │ ├── juniper-vqfx-re.gns3a │ ├── juniper-vrr.gns3a │ ├── juniper-vsrx.gns3a │ ├── jupyter.gns3a │ ├── jupyter27.gns3a │ ├── kali-linux-cli.gns3a │ ├── kali-linux.gns3a │ ├── kemp-vlm.gns3a │ ├── kerio-connect.gns3a │ ├── kerio-control.gns3a │ ├── kerio-operator.gns3a │ ├── lancom-vrouter.gns3a │ ├── loadbalancer_org-va.gns3a │ ├── macos-install.gns3a │ ├── mcjoin.gns3a │ ├── microcore-linux.gns3a │ ├── mikrotik-ccr1036-8g-2s+.gns3a │ ├── mikrotik-ccr1072-1g-8s+.gns3a │ ├── mikrotik-chr.gns3a │ ├── mikrotik-crs328-24p-4s+.gns3a │ ├── mikrotik-crs328-4c-20s-4s+.gns3a │ ├── mikrotik-rb1100ahx4-dude-edition.gns3a │ ├── mikrotik-rb2011uias.gns3a │ ├── mikrotik-rb3011uias.gns3a │ ├── mikrotik-rb4011igs+.gns3a │ ├── mikrotik-rb450g.gns3a │ ├── mikrotik-rb450gx4.gns3a │ ├── mikrotik-winbox.gns3a │ ├── mininet.gns3a │ ├── net_toolbox.gns3a │ ├── netapp-ontapsim.gns3a │ ├── netem.gns3a │ ├── nethsecurity.gns3a │ ├── network_automation.gns3a │ ├── nixos.gns3a │ ├── nokia-vsim.gns3a │ ├── ntopng.gns3a │ ├── onos.gns3a │ ├── op5-monitor.gns3a │ ├── open-media-vault.gns3a │ ├── openbsd.gns3a │ ├── opennac.gns3a │ ├── opensuse.gns3a │ ├── openvswitch-management.gns3a │ ├── openvswitch.gns3a │ ├── openwrt-realview.gns3a │ ├── openwrt.gns3a │ ├── opnsense.gns3a │ ├── oracle-linux-cloud.gns3a │ ├── ostinato-wireshark.gns3a │ ├── ostinato.gns3a │ ├── ovs-snmp.gns3a │ ├── packetfence-zen.gns3a │ ├── pan-vm-fw.gns3a │ ├── parrot-os.gns3a │ ├── pfsense.gns3a │ ├── proxmox-mg.gns3a │ ├── puppy-linux.gns3a │ ├── python-go-perl-php.gns3a │ ├── raspian.gns3a │ ├── reactos.gns3a │ ├── rhel.gns3a │ ├── riverbed-steelhead-ng-vcx.gns3a │ ├── rockylinux.gns3a │ ├── security-onion.gns3a │ ├── smoothwall.gns3a │ ├── sophos-iview.gns3a │ ├── sophos-utm.gns3a │ ├── sophos-xg.gns3a │ ├── stonework.gns3a │ ├── stormshield-eva.gns3a │ ├── tacacs-gui.gns3a │ ├── tinycore-linux.gns3a │ ├── trendmicro-imsva.gns3a │ ├── trendmicro-iwsva.gns3a │ ├── truenas.gns3a │ ├── turnkey-wordpress.gns3a │ ├── ubuntu-cloud.gns3a │ ├── ubuntu-docker.gns3a │ ├── ubuntu-gui.gns3a │ ├── untangle.gns3a │ ├── viptela-edge-genericx86-64.gns3a │ ├── viptela-smart-genericx86-64.gns3a │ ├── viptela-vmanage-genericx86-64.gns3a │ ├── vpp.gns3a │ ├── vrin.gns3a │ ├── vyos.gns3a │ ├── watchguard-fireboxv.gns3a │ ├── watchguard-xtmv.gns3a │ ├── webterm.gns3a │ ├── windows-11-dev-env.gns3a │ ├── windows-xp+ie.gns3a │ ├── windows.gns3a │ ├── windows_server.gns3a │ ├── zentyal-server.gns3a │ └── zeroshell.gns3a ├── compute │ ├── __init__.py │ ├── adapters │ │ ├── __init__.py │ │ ├── adapter.py │ │ ├── ethernet_adapter.py │ │ └── serial_adapter.py │ ├── base_manager.py │ ├── base_node.py │ ├── builtin │ │ ├── __init__.py │ │ ├── builtin_node_factory.py │ │ └── nodes │ │ │ ├── __init__.py │ │ │ ├── cloud.py │ │ │ ├── ethernet_hub.py │ │ │ ├── ethernet_switch.py │ │ │ └── nat.py │ ├── docker │ │ ├── __init__.py │ │ ├── docker_error.py │ │ ├── docker_vm.py │ │ └── resources │ │ │ ├── bin │ │ │ └── udhcpc │ │ │ ├── etc │ │ │ └── udhcpc │ │ │ │ └── default.script │ │ │ ├── init.sh │ │ │ └── run-cmd.sh │ ├── dynamips │ │ ├── __init__.py │ │ ├── adapters │ │ │ ├── __init__.py │ │ │ ├── adapter.py │ │ │ ├── c1700_mb_1fe.py │ │ │ ├── c1700_mb_wic1.py │ │ │ ├── c2600_mb_1e.py │ │ │ ├── c2600_mb_1fe.py │ │ │ ├── c2600_mb_2e.py │ │ │ ├── c2600_mb_2fe.py │ │ │ ├── c7200_io_2fe.py │ │ │ ├── c7200_io_fe.py │ │ │ ├── c7200_io_ge_e.py │ │ │ ├── gt96100_fe.py │ │ │ ├── leopard_2fe.py │ │ │ ├── nm_16esw.py │ │ │ ├── nm_1e.py │ │ │ ├── nm_1fe_tx.py │ │ │ ├── nm_4e.py │ │ │ ├── nm_4t.py │ │ │ ├── pa_2fe_tx.py │ │ │ ├── pa_4e.py │ │ │ ├── pa_4t.py │ │ │ ├── pa_8e.py │ │ │ ├── pa_8t.py │ │ │ ├── pa_a1.py │ │ │ ├── pa_fe_tx.py │ │ │ ├── pa_ge.py │ │ │ ├── pa_pos_oc3.py │ │ │ ├── wic_1enet.py │ │ │ ├── wic_1t.py │ │ │ └── wic_2t.py │ │ ├── dynamips_error.py │ │ ├── dynamips_factory.py │ │ ├── dynamips_hypervisor.py │ │ ├── hypervisor.py │ │ ├── nios │ │ │ ├── __init__.py │ │ │ ├── nio.py │ │ │ ├── nio_generic_ethernet.py │ │ │ ├── nio_linux_ethernet.py │ │ │ ├── nio_null.py │ │ │ ├── nio_tap.py │ │ │ ├── nio_udp.py │ │ │ ├── nio_unix.py │ │ │ └── nio_vde.py │ │ └── nodes │ │ │ ├── __init__.py │ │ │ ├── atm_switch.py │ │ │ ├── bridge.py │ │ │ ├── c1700.py │ │ │ ├── c2600.py │ │ │ ├── c2691.py │ │ │ ├── c3600.py │ │ │ ├── c3725.py │ │ │ ├── c3745.py │ │ │ ├── c7200.py │ │ │ ├── device.py │ │ │ ├── ethernet_hub.py │ │ │ ├── ethernet_switch.py │ │ │ ├── frame_relay_switch.py │ │ │ └── router.py │ ├── error.py │ ├── iou │ │ ├── __init__.py │ │ ├── iou_error.py │ │ ├── iou_vm.py │ │ └── utils │ │ │ ├── __init__.py │ │ │ ├── iou_export.py │ │ │ └── iou_import.py │ ├── nios │ │ ├── __init__.py │ │ ├── nio.py │ │ ├── nio_ethernet.py │ │ ├── nio_tap.py │ │ └── nio_udp.py │ ├── notification_manager.py │ ├── port_manager.py │ ├── project.py │ ├── project_manager.py │ ├── qemu │ │ ├── __init__.py │ │ ├── qemu_error.py │ │ ├── qemu_vm.py │ │ ├── resources │ │ │ └── config.img.zip │ │ └── utils │ │ │ ├── __init__.py │ │ │ ├── guest_cid.py │ │ │ ├── qcow2.py │ │ │ └── ziputils.py │ ├── traceng │ │ ├── __init__.py │ │ ├── traceng_error.py │ │ └── traceng_vm.py │ ├── virtualbox │ │ ├── __init__.py │ │ ├── virtualbox_error.py │ │ └── virtualbox_vm.py │ ├── vmware │ │ ├── __init__.py │ │ ├── vmware_error.py │ │ └── vmware_vm.py │ └── vpcs │ │ ├── __init__.py │ │ ├── vpcs_error.py │ │ └── vpcs_vm.py ├── config.py ├── configs │ ├── ios_base_startup-config.txt │ ├── ios_etherswitch_startup-config.txt │ ├── iou_l2_base_startup-config.txt │ ├── iou_l3_base_startup-config.txt │ └── vpcs_base_config.txt ├── controller │ ├── __init__.py │ ├── appliance.py │ ├── appliance_manager.py │ ├── compute.py │ ├── controller_error.py │ ├── drawing.py │ ├── export_project.py │ ├── gns3vm │ │ ├── __init__.py │ │ ├── base_gns3_vm.py │ │ ├── gns3_vm_error.py │ │ ├── hyperv_gns3_vm.py │ │ ├── remote_gns3_vm.py │ │ ├── virtualbox_gns3_vm.py │ │ └── vmware_gns3_vm.py │ ├── import_project.py │ ├── link.py │ ├── node.py │ ├── notification.py │ ├── ports │ │ ├── __init__.py │ │ ├── atm_port.py │ │ ├── ethernet_port.py │ │ ├── fastethernet_port.py │ │ ├── frame_relay_port.py │ │ ├── gigabitethernet_port.py │ │ ├── port.py │ │ ├── port_factory.py │ │ ├── pos_port.py │ │ └── serial_port.py │ ├── project.py │ ├── snapshot.py │ ├── symbol_themes.py │ ├── symbols.py │ ├── template.py │ ├── template_manager.py │ ├── topology.py │ └── udp_link.py ├── crash_report.py ├── disks │ ├── OVMF_CODE.fd │ ├── OVMF_CODE_4M.fd │ ├── OVMF_VARS.fd │ ├── OVMF_VARS_4M.fd │ ├── empty100G.qcow2 │ ├── empty10G.qcow2 │ ├── empty150G.qcow2 │ ├── empty1T.qcow2 │ ├── empty200G.qcow2 │ ├── empty20G.qcow2 │ ├── empty250G.qcow2 │ ├── empty30G.qcow2 │ ├── empty40G.qcow2 │ ├── empty500G.qcow2 │ ├── empty50G.qcow2 │ └── empty8G.qcow2 ├── handlers │ ├── __init__.py │ ├── api │ │ ├── __init__.py │ │ ├── compute │ │ │ ├── __init__.py │ │ │ ├── atm_switch_handler.py │ │ │ ├── capabilities_handler.py │ │ │ ├── cloud_handler.py │ │ │ ├── docker_handler.py │ │ │ ├── dynamips_vm_handler.py │ │ │ ├── ethernet_hub_handler.py │ │ │ ├── ethernet_switch_handler.py │ │ │ ├── frame_relay_switch_handler.py │ │ │ ├── iou_handler.py │ │ │ ├── nat_handler.py │ │ │ ├── network_handler.py │ │ │ ├── notification_handler.py │ │ │ ├── project_handler.py │ │ │ ├── qemu_handler.py │ │ │ ├── server_handler.py │ │ │ ├── traceng_handler.py │ │ │ ├── virtualbox_handler.py │ │ │ ├── vmware_handler.py │ │ │ └── vpcs_handler.py │ │ └── controller │ │ │ ├── __init__.py │ │ │ ├── appliance_handler.py │ │ │ ├── compute_handler.py │ │ │ ├── drawing_handler.py │ │ │ ├── gns3_vm_handler.py │ │ │ ├── link_handler.py │ │ │ ├── node_handler.py │ │ │ ├── notification_handler.py │ │ │ ├── project_handler.py │ │ │ ├── server_handler.py │ │ │ ├── snapshot_handler.py │ │ │ ├── symbol_handler.py │ │ │ └── template_handler.py │ └── index_handler.py ├── main.py ├── notification_queue.py ├── run.py ├── schemas │ ├── __init__.py │ ├── atm_switch.py │ ├── capabilities.py │ ├── cloud.py │ ├── cloud_template.py │ ├── compute.py │ ├── custom_adapters.py │ ├── docker.py │ ├── docker_template.py │ ├── drawing.py │ ├── dynamips_template.py │ ├── dynamips_vm.py │ ├── ethernet_hub.py │ ├── ethernet_hub_template.py │ ├── ethernet_switch.py │ ├── ethernet_switch_template.py │ ├── filter.py │ ├── frame_relay_switch.py │ ├── gns3vm.py │ ├── iou.py │ ├── iou_license.py │ ├── iou_template.py │ ├── label.py │ ├── link.py │ ├── nat.py │ ├── nio.py │ ├── node.py │ ├── port.py │ ├── project.py │ ├── qemu.py │ ├── qemu_template.py │ ├── server_statistics.py │ ├── snapshot.py │ ├── template.py │ ├── topology.py │ ├── traceng.py │ ├── traceng_template.py │ ├── version.py │ ├── virtualbox.py │ ├── virtualbox_template.py │ ├── vmware.py │ ├── vmware_template.py │ ├── vpcs.py │ └── vpcs_template.py ├── static │ ├── .gitkeep │ └── web-ui │ │ ├── 26.77d4bfd104f37c42e028.js │ │ ├── 3rdpartylicenses.txt │ │ ├── MaterialIcons-Regular.4674f8ded773cb03e824.eot │ │ ├── MaterialIcons-Regular.5e7382c63da0098d634a.ttf │ │ ├── MaterialIcons-Regular.83bebaf37c09c7e1c3ee.woff │ │ ├── MaterialIcons-Regular.cff684e59ffb052d72cb.woff2 │ │ ├── NotoSans-Bold.18ef6a21171328dc11a9.svg │ │ ├── NotoSans-Bold.364158e7b3016f83790a.woff │ │ ├── NotoSans-Bold.3ea2282022a16bb2827b.woff2 │ │ ├── NotoSans-Bold.82b1a58ddf26951345dc.ttf │ │ ├── NotoSans-Bold.fe2c3263802c4469728b.eot │ │ ├── NotoSans-BoldItalic.7930d6e32b12448fc0ae.svg │ │ ├── NotoSans-BoldItalic.9e49c91c40231a024afb.ttf │ │ ├── NotoSans-BoldItalic.b40d78b2f9e2490108d0.eot │ │ ├── NotoSans-BoldItalic.ed8d2295c0b2e0a854d8.woff │ │ ├── NotoSans-BoldItalic.f2639d17cfb5c6e74edd.woff2 │ │ ├── NotoSans-Italic.08690ed789a5532ed7be.ttf │ │ ├── NotoSans-Italic.1506cb93f574152bda3d.eot │ │ ├── NotoSans-Italic.8a08f0f08e448e4f522e.woff │ │ ├── NotoSans-Italic.ca985d172a576d01c77e.woff2 │ │ ├── NotoSans-Italic.cecaa17f122ac96a50f8.svg │ │ ├── NotoSans-Regular.22c53c8686edcaecdf66.woff │ │ ├── NotoSans-Regular.730e73a4d4556fa0efe8.woff2 │ │ ├── NotoSans-Regular.8142e5b2e99a1cccafb7.svg │ │ ├── NotoSans-Regular.e962f548522aa99bb8f9.ttf │ │ ├── NotoSans-Regular.f55982ed9f2bc3af6185.eot │ │ ├── ReleaseNotes.txt │ │ ├── assets │ │ ├── favicon.ico │ │ ├── gns3_icon.svg │ │ ├── gns3_icon_black.svg │ │ ├── icons │ │ │ ├── mac │ │ │ │ └── icon.icns │ │ │ ├── png │ │ │ │ ├── 1024x1024.png │ │ │ │ ├── 128x128.png │ │ │ │ ├── 16x16.png │ │ │ │ ├── 24x24.png │ │ │ │ ├── 256x256.png │ │ │ │ ├── 32x32.png │ │ │ │ ├── 48x48.png │ │ │ │ ├── 512x512.png │ │ │ │ └── 64x64.png │ │ │ └── win │ │ │ │ └── icon.ico │ │ ├── logo-header.png │ │ └── resources │ │ │ └── images │ │ │ ├── filter-capture.svg │ │ │ ├── filter.svg │ │ │ ├── inspect.svg │ │ │ └── pause.svg │ │ ├── favicon.ico │ │ ├── index.html │ │ ├── main.9bcf455e62558dedfd48.js │ │ ├── polyfills-es5.865074f5cd9a121111a2.js │ │ ├── polyfills.2f91a039d848e57ff02e.js │ │ ├── roboto-latin-100.a45108d3b34af91f9113.woff │ │ ├── roboto-latin-100.c2aa4ab115bf9c6057cb.woff2 │ │ ├── roboto-latin-100italic.451d4e559d6f57cdf6a1.woff │ │ ├── roboto-latin-100italic.7f839a8652da29745ce4.woff2 │ │ ├── roboto-latin-300.37a7069dc30fc663c878.woff2 │ │ ├── roboto-latin-300.865f928cbabcc9f8f2b5.woff │ │ ├── roboto-latin-300italic.bd5b7a13f2c52b531a2a.woff │ │ ├── roboto-latin-300italic.c64e7e354c88e613c77c.woff2 │ │ ├── roboto-latin-400.176f8f5bd5f02b3abfcf.woff2 │ │ ├── roboto-latin-400.49ae34d4cc6b98c00c69.woff │ │ ├── roboto-latin-400italic.b1d9d9904bfca8802a63.woff │ │ ├── roboto-latin-400italic.d022bc70dc1bf7b3425d.woff2 │ │ ├── roboto-latin-500.cea99d3e3e13a3a599a0.woff │ │ ├── roboto-latin-500.f5b74d7ffcdf85b9dd60.woff2 │ │ ├── roboto-latin-500italic.0d8bb5b3ee5f5dac9e44.woff2 │ │ ├── roboto-latin-500italic.18d00f739ff1e1c52db1.woff │ │ ├── roboto-latin-700.2267169ee7270a22a963.woff │ │ ├── roboto-latin-700.c18ee39fb002ad58b6dc.woff2 │ │ ├── roboto-latin-700italic.7d8125ff7f707231fd89.woff2 │ │ ├── roboto-latin-700italic.9360531f9bb817f917f0.woff │ │ ├── roboto-latin-900.870c8c1486f76054301a.woff2 │ │ ├── roboto-latin-900.bac8362e7a6ea60b6983.woff │ │ ├── roboto-latin-900italic.c20d916c1a1b094c1cec.woff │ │ ├── roboto-latin-900italic.cb5ad999740e9d8a8bd1.woff2 │ │ ├── runtime.415291667f70565cd8ef.js │ │ └── styles.f8555f2eecf8cf87f666.css ├── symbols │ ├── .gitkeep │ ├── affinity │ │ ├── circle │ │ │ ├── blue │ │ │ │ ├── atm.svg │ │ │ │ ├── bug.svg │ │ │ │ ├── camera.svg │ │ │ │ ├── camera_dome.svg │ │ │ │ ├── client.svg │ │ │ │ ├── client_vm.svg │ │ │ │ ├── cloud.svg │ │ │ │ ├── coffee.svg │ │ │ │ ├── cog.svg │ │ │ │ ├── communications.svg │ │ │ │ ├── conversation.svg │ │ │ │ ├── dna.svg │ │ │ │ ├── dna2.svg │ │ │ │ ├── docker.svg │ │ │ │ ├── dslam.svg │ │ │ │ ├── factory.svg │ │ │ │ ├── fingerprint.svg │ │ │ │ ├── firewall.svg │ │ │ │ ├── firewall3.svg │ │ │ │ ├── globe.svg │ │ │ │ ├── grid.svg │ │ │ │ ├── grid2.svg │ │ │ │ ├── health.svg │ │ │ │ ├── house.svg │ │ │ │ ├── hub.svg │ │ │ │ ├── inspect.svg │ │ │ │ ├── inspect2.svg │ │ │ │ ├── interconnect.svg │ │ │ │ ├── ip_phone.svg │ │ │ │ ├── isdn.svg │ │ │ │ ├── laptop.svg │ │ │ │ ├── ldap.svg │ │ │ │ ├── light_bulb.svg │ │ │ │ ├── link.svg │ │ │ │ ├── loadbalancer.svg │ │ │ │ ├── nas.svg │ │ │ │ ├── nat.svg │ │ │ │ ├── nat2.svg │ │ │ │ ├── office.svg │ │ │ │ ├── optical.svg │ │ │ │ ├── phone_cloud.svg │ │ │ │ ├── phone_old.svg │ │ │ │ ├── phone_wireless.svg │ │ │ │ ├── pinpoint.svg │ │ │ │ ├── printer.svg │ │ │ │ ├── rj45.svg │ │ │ │ ├── router.svg │ │ │ │ ├── router2.svg │ │ │ │ ├── router_cloud.svg │ │ │ │ ├── satellite.svg │ │ │ │ ├── satellite_dish.svg │ │ │ │ ├── scull.svg │ │ │ │ ├── server.svg │ │ │ │ ├── server_cluster.svg │ │ │ │ ├── shield.svg │ │ │ │ ├── statistics.svg │ │ │ │ ├── storage.svg │ │ │ │ ├── switch.svg │ │ │ │ ├── switch_multilayer.svg │ │ │ │ ├── tablet.svg │ │ │ │ ├── template.svg │ │ │ │ ├── tree.svg │ │ │ │ ├── user.svg │ │ │ │ ├── virtualbox.svg │ │ │ │ ├── vm.svg │ │ │ │ ├── vmware.svg │ │ │ │ ├── vrf.svg │ │ │ │ ├── wifi.svg │ │ │ │ ├── wlc.svg │ │ │ │ └── xml.svg │ │ │ ├── gray │ │ │ │ ├── atm.svg │ │ │ │ ├── bug.svg │ │ │ │ ├── camera.svg │ │ │ │ ├── camera_dome.svg │ │ │ │ ├── client.svg │ │ │ │ ├── client_vm.svg │ │ │ │ ├── cloud.svg │ │ │ │ ├── coffee.svg │ │ │ │ ├── cog.svg │ │ │ │ ├── communications.svg │ │ │ │ ├── conversation.svg │ │ │ │ ├── dna.svg │ │ │ │ ├── dna2.svg │ │ │ │ ├── docker.svg │ │ │ │ ├── dslam.svg │ │ │ │ ├── factory.svg │ │ │ │ ├── fingerprint.svg │ │ │ │ ├── firewall.svg │ │ │ │ ├── firewall3.svg │ │ │ │ ├── globe.svg │ │ │ │ ├── grid.svg │ │ │ │ ├── grid2.svg │ │ │ │ ├── health.svg │ │ │ │ ├── house.svg │ │ │ │ ├── hub.svg │ │ │ │ ├── inspect.svg │ │ │ │ ├── inspect2.svg │ │ │ │ ├── interconnect.svg │ │ │ │ ├── ip_phone.svg │ │ │ │ ├── isdn.svg │ │ │ │ ├── laptop.svg │ │ │ │ ├── ldap.svg │ │ │ │ ├── light_bulb.svg │ │ │ │ ├── link.svg │ │ │ │ ├── loadbalancer.svg │ │ │ │ ├── nas.svg │ │ │ │ ├── nat.svg │ │ │ │ ├── nat2.svg │ │ │ │ ├── office.svg │ │ │ │ ├── optical.svg │ │ │ │ ├── phone_cloud.svg │ │ │ │ ├── phone_old.svg │ │ │ │ ├── phone_wireless.svg │ │ │ │ ├── pinpoint.svg │ │ │ │ ├── printer.svg │ │ │ │ ├── rj45.svg │ │ │ │ ├── router.svg │ │ │ │ ├── router2.svg │ │ │ │ ├── router_cloud.svg │ │ │ │ ├── satellite.svg │ │ │ │ ├── satellite_dish.svg │ │ │ │ ├── scull.svg │ │ │ │ ├── server.svg │ │ │ │ ├── server_cluster.svg │ │ │ │ ├── shield.svg │ │ │ │ ├── statistics.svg │ │ │ │ ├── storage.svg │ │ │ │ ├── switch.svg │ │ │ │ ├── switch_multilayer.svg │ │ │ │ ├── tablet.svg │ │ │ │ ├── template.svg │ │ │ │ ├── tree.svg │ │ │ │ ├── user.svg │ │ │ │ ├── virtualbox.svg │ │ │ │ ├── vm.svg │ │ │ │ ├── vmware.svg │ │ │ │ ├── vrf.svg │ │ │ │ ├── wifi.svg │ │ │ │ ├── wlc.svg │ │ │ │ └── xml.svg │ │ │ ├── green │ │ │ │ ├── atm.svg │ │ │ │ ├── bug.svg │ │ │ │ ├── camera.svg │ │ │ │ ├── camera_dome.svg │ │ │ │ ├── client.svg │ │ │ │ ├── client_vm.svg │ │ │ │ ├── cloud.svg │ │ │ │ ├── coffee.svg │ │ │ │ ├── cog.svg │ │ │ │ ├── communications.svg │ │ │ │ ├── conversation.svg │ │ │ │ ├── dna.svg │ │ │ │ ├── dna2.svg │ │ │ │ ├── docker.svg │ │ │ │ ├── dslam.svg │ │ │ │ ├── factory.svg │ │ │ │ ├── fingerprint.svg │ │ │ │ ├── firewall.svg │ │ │ │ ├── firewall3.svg │ │ │ │ ├── globe.svg │ │ │ │ ├── grid.svg │ │ │ │ ├── grid2.svg │ │ │ │ ├── health.svg │ │ │ │ ├── house.svg │ │ │ │ ├── hub.svg │ │ │ │ ├── inspect.svg │ │ │ │ ├── inspect2.svg │ │ │ │ ├── interconnect.svg │ │ │ │ ├── ip_phone.svg │ │ │ │ ├── isdn.svg │ │ │ │ ├── laptop.svg │ │ │ │ ├── ldap.svg │ │ │ │ ├── light_bulb.svg │ │ │ │ ├── link.svg │ │ │ │ ├── loadbalancer.svg │ │ │ │ ├── nas.svg │ │ │ │ ├── nat.svg │ │ │ │ ├── nat2.svg │ │ │ │ ├── office.svg │ │ │ │ ├── optical.svg │ │ │ │ ├── phone_cloud.svg │ │ │ │ ├── phone_old.svg │ │ │ │ ├── phone_wireless.svg │ │ │ │ ├── pinpoint.svg │ │ │ │ ├── printer.svg │ │ │ │ ├── rj45.svg │ │ │ │ ├── router.svg │ │ │ │ ├── router2.svg │ │ │ │ ├── router_cloud.svg │ │ │ │ ├── satellite.svg │ │ │ │ ├── satellite_dish.svg │ │ │ │ ├── scull.svg │ │ │ │ ├── server.svg │ │ │ │ ├── server_cluster.svg │ │ │ │ ├── shield.svg │ │ │ │ ├── statistics.svg │ │ │ │ ├── storage.svg │ │ │ │ ├── switch.svg │ │ │ │ ├── switch_multilayer.svg │ │ │ │ ├── tablet.svg │ │ │ │ ├── template.svg │ │ │ │ ├── tree.svg │ │ │ │ ├── user.svg │ │ │ │ ├── virtualbox.svg │ │ │ │ ├── vm.svg │ │ │ │ ├── vmware.svg │ │ │ │ ├── vrf.svg │ │ │ │ ├── wifi.svg │ │ │ │ ├── wlc.svg │ │ │ │ └── xml.svg │ │ │ └── red │ │ │ │ ├── atm.svg │ │ │ │ ├── bug.svg │ │ │ │ ├── camera.svg │ │ │ │ ├── camera_dome.svg │ │ │ │ ├── client.svg │ │ │ │ ├── client_vm.svg │ │ │ │ ├── cloud.svg │ │ │ │ ├── coffee.svg │ │ │ │ ├── cog.svg │ │ │ │ ├── communications.svg │ │ │ │ ├── conversation.svg │ │ │ │ ├── dna.svg │ │ │ │ ├── dna2.svg │ │ │ │ ├── docker.svg │ │ │ │ ├── dslam.svg │ │ │ │ ├── factory.svg │ │ │ │ ├── fingerprint.svg │ │ │ │ ├── firewall.svg │ │ │ │ ├── firewall3.svg │ │ │ │ ├── globe.svg │ │ │ │ ├── grid.svg │ │ │ │ ├── grid2.svg │ │ │ │ ├── health.svg │ │ │ │ ├── house.svg │ │ │ │ ├── hub.svg │ │ │ │ ├── inspect.svg │ │ │ │ ├── inspect2.svg │ │ │ │ ├── interconnect.svg │ │ │ │ ├── ip_phone.svg │ │ │ │ ├── isdn.svg │ │ │ │ ├── laptop.svg │ │ │ │ ├── ldap.svg │ │ │ │ ├── light_bulb.svg │ │ │ │ ├── link.svg │ │ │ │ ├── loadbalancer.svg │ │ │ │ ├── nas.svg │ │ │ │ ├── nat.svg │ │ │ │ ├── nat2.svg │ │ │ │ ├── office.svg │ │ │ │ ├── optical.svg │ │ │ │ ├── phone_cloud.svg │ │ │ │ ├── phone_old.svg │ │ │ │ ├── phone_wireless.svg │ │ │ │ ├── pinpoint.svg │ │ │ │ ├── printer.svg │ │ │ │ ├── rj45.svg │ │ │ │ ├── router.svg │ │ │ │ ├── router2.svg │ │ │ │ ├── router_cloud.svg │ │ │ │ ├── satellite.svg │ │ │ │ ├── satellite_dish.svg │ │ │ │ ├── scull.svg │ │ │ │ ├── server.svg │ │ │ │ ├── server_cluster.svg │ │ │ │ ├── shield.svg │ │ │ │ ├── statistics.svg │ │ │ │ ├── storage.svg │ │ │ │ ├── switch.svg │ │ │ │ ├── switch_multilayer.svg │ │ │ │ ├── tablet.svg │ │ │ │ ├── template.svg │ │ │ │ ├── tree.svg │ │ │ │ ├── user.svg │ │ │ │ ├── virtualbox.svg │ │ │ │ ├── vm.svg │ │ │ │ ├── vmware.svg │ │ │ │ ├── vrf.svg │ │ │ │ ├── wifi.svg │ │ │ │ ├── wlc.svg │ │ │ │ └── xml.svg │ │ └── square │ │ │ ├── blue │ │ │ ├── atm.svg │ │ │ ├── bug.svg │ │ │ ├── camera.svg │ │ │ ├── camera_dome.svg │ │ │ ├── client.svg │ │ │ ├── client_vm.svg │ │ │ ├── cloud.svg │ │ │ ├── coffee.svg │ │ │ ├── cog.svg │ │ │ ├── communications.svg │ │ │ ├── conversation.svg │ │ │ ├── dna.svg │ │ │ ├── dna2.svg │ │ │ ├── docker.svg │ │ │ ├── dslam.svg │ │ │ ├── factory.svg │ │ │ ├── fingerprint.svg │ │ │ ├── firewall.svg │ │ │ ├── firewall3.svg │ │ │ ├── globe.svg │ │ │ ├── grid.svg │ │ │ ├── grid2.svg │ │ │ ├── health.svg │ │ │ ├── house.svg │ │ │ ├── hub.svg │ │ │ ├── inspect.svg │ │ │ ├── inspect2.svg │ │ │ ├── interconnect.svg │ │ │ ├── ip_phone.svg │ │ │ ├── isdn.svg │ │ │ ├── laptop.svg │ │ │ ├── ldap.svg │ │ │ ├── light_bulb.svg │ │ │ ├── link.svg │ │ │ ├── loadbalancer.svg │ │ │ ├── nas.svg │ │ │ ├── nat.svg │ │ │ ├── nat2.svg │ │ │ ├── office.svg │ │ │ ├── optical.svg │ │ │ ├── phone_cloud.svg │ │ │ ├── phone_old.svg │ │ │ ├── phone_wireless.svg │ │ │ ├── pinpoint.svg │ │ │ ├── printer.svg │ │ │ ├── rj45.svg │ │ │ ├── router.svg │ │ │ ├── router2.svg │ │ │ ├── router_cloud.svg │ │ │ ├── satellite.svg │ │ │ ├── satellite_dish.svg │ │ │ ├── scull.svg │ │ │ ├── server.svg │ │ │ ├── server_cluster.svg │ │ │ ├── shield.svg │ │ │ ├── statistics.svg │ │ │ ├── storage.svg │ │ │ ├── switch.svg │ │ │ ├── switch_multilayer.svg │ │ │ ├── tablet.svg │ │ │ ├── template.svg │ │ │ ├── tree.svg │ │ │ ├── user.svg │ │ │ ├── virtualbox.svg │ │ │ ├── vm.svg │ │ │ ├── vmware.svg │ │ │ ├── vrf.svg │ │ │ ├── wifi.svg │ │ │ ├── wlc.svg │ │ │ └── xml.svg │ │ │ ├── gray │ │ │ ├── atm.svg │ │ │ ├── bug.svg │ │ │ ├── camera.svg │ │ │ ├── camera_dome.svg │ │ │ ├── client.svg │ │ │ ├── client_vm.svg │ │ │ ├── cloud.svg │ │ │ ├── coffee.svg │ │ │ ├── cog.svg │ │ │ ├── communications.svg │ │ │ ├── conversation.svg │ │ │ ├── dna.svg │ │ │ ├── dna2.svg │ │ │ ├── docker.svg │ │ │ ├── dslam.svg │ │ │ ├── factory.svg │ │ │ ├── fingerprint.svg │ │ │ ├── firewall.svg │ │ │ ├── firewall3.svg │ │ │ ├── globe.svg │ │ │ ├── grid.svg │ │ │ ├── grid2.svg │ │ │ ├── health.svg │ │ │ ├── house.svg │ │ │ ├── hub.svg │ │ │ ├── inspect.svg │ │ │ ├── inspect2.svg │ │ │ ├── interconnect.svg │ │ │ ├── ip_phone.svg │ │ │ ├── isdn.svg │ │ │ ├── laptop.svg │ │ │ ├── ldap.svg │ │ │ ├── light_bulb.svg │ │ │ ├── link.svg │ │ │ ├── loadbalancer.svg │ │ │ ├── nas.svg │ │ │ ├── nat.svg │ │ │ ├── nat2.svg │ │ │ ├── office.svg │ │ │ ├── optical.svg │ │ │ ├── phone_cloud.svg │ │ │ ├── phone_old.svg │ │ │ ├── phone_wireless.svg │ │ │ ├── pinpoint.svg │ │ │ ├── printer.svg │ │ │ ├── rj45.svg │ │ │ ├── router.svg │ │ │ ├── router2.svg │ │ │ ├── router_cloud.svg │ │ │ ├── satellite.svg │ │ │ ├── satellite_dish.svg │ │ │ ├── scull.svg │ │ │ ├── server.svg │ │ │ ├── server_cluster.svg │ │ │ ├── shield.svg │ │ │ ├── statistics.svg │ │ │ ├── storage.svg │ │ │ ├── switch.svg │ │ │ ├── switch_multilayer.svg │ │ │ ├── tablet.svg │ │ │ ├── template.svg │ │ │ ├── tree.svg │ │ │ ├── user.svg │ │ │ ├── virtualbox.svg │ │ │ ├── vm.svg │ │ │ ├── vmware.svg │ │ │ ├── vrf.svg │ │ │ ├── wifi.svg │ │ │ ├── wlc.svg │ │ │ └── xml.svg │ │ │ ├── green │ │ │ ├── atm.svg │ │ │ ├── bug.svg │ │ │ ├── camera.svg │ │ │ ├── camera_dome.svg │ │ │ ├── client.svg │ │ │ ├── client_vm.svg │ │ │ ├── cloud.svg │ │ │ ├── coffee.svg │ │ │ ├── cog.svg │ │ │ ├── communications.svg │ │ │ ├── conversation.svg │ │ │ ├── dna.svg │ │ │ ├── dna2.svg │ │ │ ├── docker.svg │ │ │ ├── dslam.svg │ │ │ ├── factory.svg │ │ │ ├── fingerprint.svg │ │ │ ├── firewall.svg │ │ │ ├── firewall3.svg │ │ │ ├── globe.svg │ │ │ ├── grid.svg │ │ │ ├── grid2.svg │ │ │ ├── health.svg │ │ │ ├── house.svg │ │ │ ├── hub.svg │ │ │ ├── inspect.svg │ │ │ ├── inspect2.svg │ │ │ ├── interconnect.svg │ │ │ ├── ip_phone.svg │ │ │ ├── isdn.svg │ │ │ ├── laptop.svg │ │ │ ├── ldap.svg │ │ │ ├── light_bulb.svg │ │ │ ├── link.svg │ │ │ ├── loadbalancer.svg │ │ │ ├── nas.svg │ │ │ ├── nat.svg │ │ │ ├── nat2.svg │ │ │ ├── office.svg │ │ │ ├── optical.svg │ │ │ ├── phone_cloud.svg │ │ │ ├── phone_old.svg │ │ │ ├── phone_wireless.svg │ │ │ ├── pinpoint.svg │ │ │ ├── printer.svg │ │ │ ├── rj45.svg │ │ │ ├── router.svg │ │ │ ├── router2.svg │ │ │ ├── router_cloud.svg │ │ │ ├── satellite.svg │ │ │ ├── satellite_dish.svg │ │ │ ├── scull.svg │ │ │ ├── server.svg │ │ │ ├── server_cluster.svg │ │ │ ├── shield.svg │ │ │ ├── statistics.svg │ │ │ ├── storage.svg │ │ │ ├── switch.svg │ │ │ ├── switch_multilayer.svg │ │ │ ├── tablet.svg │ │ │ ├── template.svg │ │ │ ├── tree.svg │ │ │ ├── user.svg │ │ │ ├── virtualbox.svg │ │ │ ├── vm.svg │ │ │ ├── vmware.svg │ │ │ ├── vrf.svg │ │ │ ├── wifi.svg │ │ │ ├── wlc.svg │ │ │ └── xml.svg │ │ │ └── red │ │ │ ├── atm.svg │ │ │ ├── bug.svg │ │ │ ├── camera.svg │ │ │ ├── camera_dome.svg │ │ │ ├── client.svg │ │ │ ├── client_vm.svg │ │ │ ├── cloud.svg │ │ │ ├── coffee.svg │ │ │ ├── cog.svg │ │ │ ├── communications.svg │ │ │ ├── conversation.svg │ │ │ ├── dna.svg │ │ │ ├── dna2.svg │ │ │ ├── docker.svg │ │ │ ├── dslam.svg │ │ │ ├── factory.svg │ │ │ ├── fingerprint.svg │ │ │ ├── firewall.svg │ │ │ ├── firewall3.svg │ │ │ ├── globe.svg │ │ │ ├── grid.svg │ │ │ ├── grid2.svg │ │ │ ├── health.svg │ │ │ ├── house.svg │ │ │ ├── hub.svg │ │ │ ├── inspect.svg │ │ │ ├── inspect2.svg │ │ │ ├── interconnect.svg │ │ │ ├── ip_phone.svg │ │ │ ├── isdn.svg │ │ │ ├── laptop.svg │ │ │ ├── ldap.svg │ │ │ ├── light_bulb.svg │ │ │ ├── link.svg │ │ │ ├── loadbalancer.svg │ │ │ ├── nas.svg │ │ │ ├── nat.svg │ │ │ ├── nat2.svg │ │ │ ├── office.svg │ │ │ ├── optical.svg │ │ │ ├── phone_cloud.svg │ │ │ ├── phone_old.svg │ │ │ ├── phone_wireless.svg │ │ │ ├── pinpoint.svg │ │ │ ├── printer.svg │ │ │ ├── rj45.svg │ │ │ ├── router.svg │ │ │ ├── router2.svg │ │ │ ├── router_cloud.svg │ │ │ ├── satellite.svg │ │ │ ├── satellite_dish.svg │ │ │ ├── scull.svg │ │ │ ├── server.svg │ │ │ ├── server_cluster.svg │ │ │ ├── shield.svg │ │ │ ├── statistics.svg │ │ │ ├── storage.svg │ │ │ ├── switch.svg │ │ │ ├── switch_multilayer.svg │ │ │ ├── tablet.svg │ │ │ ├── template.svg │ │ │ ├── tree.svg │ │ │ ├── user.svg │ │ │ ├── virtualbox.svg │ │ │ ├── vm.svg │ │ │ ├── vmware.svg │ │ │ ├── vrf.svg │ │ │ ├── wifi.svg │ │ │ ├── wlc.svg │ │ │ └── xml.svg │ └── classic │ │ ├── PBX.svg │ │ ├── PIX_firewall.svg │ │ ├── access_point.svg │ │ ├── access_server.svg │ │ ├── asa.svg │ │ ├── atm_bridge.svg │ │ ├── atm_switch.svg │ │ ├── call_manager.svg │ │ ├── cloud.svg │ │ ├── computer.svg │ │ ├── docker_guest.svg │ │ ├── dslam.svg │ │ ├── edge_label_switch_router.svg │ │ ├── ethernet_switch.svg │ │ ├── firewall.svg │ │ ├── frame_relay_switch.svg │ │ ├── gateway.svg │ │ ├── hub.svg │ │ ├── ids.svg │ │ ├── iosv_l2_virl.svg │ │ ├── iosv_virl.svg │ │ ├── ip_phone.svg │ │ ├── label_switch_router.svg │ │ ├── lightweight_ap.svg │ │ ├── multilayer_switch.svg │ │ ├── nat.svg │ │ ├── optical_router.svg │ │ ├── printer.svg │ │ ├── qemu_guest.svg │ │ ├── route_switch_processor.svg │ │ ├── router.awp.svg │ │ ├── router.svg │ │ ├── router_firewall.svg │ │ ├── router_netflow.svg │ │ ├── server.svg │ │ ├── sip_server.svg │ │ ├── traceng.svg │ │ ├── vbox_guest.svg │ │ ├── vmware_guest.svg │ │ ├── voice_access_server.svg │ │ ├── voice_router.svg │ │ ├── vpcs_guest.svg │ │ └── wlan_controller.svg ├── templates │ ├── compute.html │ ├── controller.html │ ├── index.html │ ├── layout.html │ ├── project.html │ └── upload.html ├── ubridge │ ├── __init__.py │ ├── hypervisor.py │ ├── ubridge_error.py │ └── ubridge_hypervisor.py ├── utils │ ├── __init__.py │ ├── application_id.py │ ├── asyncio │ │ ├── __init__.py │ │ ├── aiozipstream.py │ │ ├── embed_shell.py │ │ ├── input_stream.py │ │ ├── pool.py │ │ ├── raw_command_server.py │ │ ├── serial.py │ │ └── telnet_server.py │ ├── cpu_percent.py │ ├── file_watcher.py │ ├── get_resource.py │ ├── images.py │ ├── interfaces.py │ ├── path.py │ ├── picture.py │ ├── qt.py │ ├── vmnet.py │ ├── windows_loopback.py │ └── windows_service.py ├── version.py └── web │ ├── __init__.py │ ├── documentation.py │ ├── logger.py │ ├── response.py │ ├── route.py │ └── web_server.py ├── init ├── gns3.conf.upstart ├── gns3.service.openrc └── gns3.service.systemd ├── mac-requirements.txt ├── pytest.ini ├── readthedocs.yml ├── requirements.txt ├── scripts ├── create_cert.sh ├── docker_dev_server.sh ├── documentation.sh ├── random_query.py ├── remote-install.sh ├── run_on_gns3vm.sh ├── sync_affinity_symbols.sh ├── sync_appliances.sh ├── update-bundled-web-ui.sh └── welcome.py ├── setup.py ├── tests ├── __init__.py ├── compute │ ├── builtin │ │ └── nodes │ │ │ ├── test_cloud.py │ │ │ └── test_nat.py │ ├── docker │ │ ├── test_docker.py │ │ └── test_docker_vm.py │ ├── dynamips │ │ ├── test_dynamips_manager.py │ │ ├── test_dynamips_router.py │ │ └── test_ethernet_switch.py │ ├── iou │ │ └── test_iou_vm.py │ ├── qemu │ │ ├── test_qcow2.py │ │ ├── test_qemu_manager.py │ │ └── test_qemu_vm.py │ ├── test_base_node.py │ ├── test_manager.py │ ├── test_notification_manager.py │ ├── test_port_manager.py │ ├── test_project.py │ ├── test_project_manager.py │ ├── traceng │ │ └── test_traceng_vm.py │ ├── virtualbox │ │ ├── test_virtualbox_manager.py │ │ └── test_virtualbox_vm.py │ ├── vmware │ │ ├── test_vmware_manager.py │ │ └── test_vmware_vm.py │ └── vpcs │ │ ├── test_vpcs_manager.py │ │ └── test_vpcs_vm.py ├── conftest.py ├── controller │ ├── __init__.py │ ├── gns3vm │ │ ├── test_remote_gns3_vm.py │ │ ├── test_virtualbox_gns3_vm.py │ │ └── test_vmware_gns3_vm.py │ ├── test_compute.py │ ├── test_controller.py │ ├── test_drawing.py │ ├── test_export_project.py │ ├── test_gns3vm.py │ ├── test_import_project.py │ ├── test_link.py │ ├── test_node.py │ ├── test_node_port_name.py │ ├── test_notification.py │ ├── test_project.py │ ├── test_project_open.py │ ├── test_snapshot.py │ ├── test_symbols.py │ ├── test_template.py │ ├── test_topology.py │ └── test_udp_link.py ├── handlers │ ├── api │ │ ├── __init__.py │ │ ├── base.py │ │ ├── compute │ │ │ ├── __init__.py │ │ │ ├── test_capabilities.py │ │ │ ├── test_cloud.py │ │ │ ├── test_docker.py │ │ │ ├── test_dynamips.py │ │ │ ├── test_iou.py │ │ │ ├── test_nat.py │ │ │ ├── test_network.py │ │ │ ├── test_notification.py │ │ │ ├── test_project.py │ │ │ ├── test_qemu.py │ │ │ ├── test_server.py │ │ │ ├── test_traceng.py │ │ │ ├── test_virtualbox.py │ │ │ ├── test_vmware.py │ │ │ └── test_vpcs.py │ │ └── controller │ │ │ ├── __init__.py │ │ │ ├── test_appliance.py │ │ │ ├── test_compute.py │ │ │ ├── test_drawing.py │ │ │ ├── test_gns3vm.py │ │ │ ├── test_link.py │ │ │ ├── test_node.py │ │ │ ├── test_project.py │ │ │ ├── test_server.py │ │ │ ├── test_snapshot.py │ │ │ ├── test_symbol.py │ │ │ ├── test_template.py │ │ │ └── test_version.py │ └── test_index.py ├── resources │ ├── empty8G.qcow2 │ ├── firefox.svg │ ├── gns3_icon_128x128.png │ ├── gns3_icon_128x64.gif │ ├── gns3_icon_128x64.jpg │ ├── gns3_icon_128x64.png │ ├── linked.qcow2 │ └── nvram_iou ├── test_config.py ├── test_run.py ├── test_topologies.py ├── test_utils.py ├── topologies │ ├── 1_0_empty │ │ ├── after │ │ │ └── 1_0_empty.gns3 │ │ └── before │ │ │ └── 1_0_empty.gns3 │ ├── 1_3_dynamips │ │ ├── after │ │ │ └── 1_3_dynamips.gns3 │ │ └── before │ │ │ └── 1_3_dynamips.gns3 │ ├── 1_3_dynamips_missing_platform │ │ ├── after │ │ │ ├── 1_3_dynamips_missing_platform.gns3 │ │ │ └── 1_3_dynamips_missing_platform.gns3.backup3 │ │ └── before │ │ │ └── 1_3_dynamips_missing_platform.gns3 │ ├── 1_3_dynamips_missing_type │ │ ├── after │ │ │ └── 1_3_dynamips.gns3 │ │ └── before │ │ │ └── 1_3_dynamips.gns3 │ ├── 1_5_builtins │ │ ├── after │ │ │ ├── README.txt │ │ │ └── builtins.gns3 │ │ └── before │ │ │ ├── builtins.gns3 │ │ │ └── instructions.txt │ ├── 1_5_cloud │ │ ├── after │ │ │ └── 1_5_cloud.gns3 │ │ └── before │ │ │ └── 1_5_cloud.gns3 │ ├── 1_5_cloud_nat │ │ ├── after │ │ │ └── 1_5_cloud_nat.gns3 │ │ └── before │ │ │ └── 1_5_cloud_nat.gns3 │ ├── 1_5_cloud_udp │ │ ├── after │ │ │ └── 1_5_cloud_udp.gns3 │ │ └── before │ │ │ └── 1_5_cloud_udp.gns3 │ ├── 1_5_docker_remote │ │ ├── after │ │ │ └── 1_5_docker_remote.gns3 │ │ └── before │ │ │ └── 1_5_docker_remote.gns3 │ ├── 1_5_drawing │ │ ├── after │ │ │ └── 1_5_drawing.gns3 │ │ └── before │ │ │ └── 1_5_drawing.gns3 │ ├── 1_5_dynamips │ │ ├── after │ │ │ └── 1_5_dynamips.gns3 │ │ └── before │ │ │ └── 1_5_dynamips.gns3 │ ├── 1_5_host │ │ ├── after │ │ │ └── 1_5_host.gns3 │ │ └── before │ │ │ └── 1_5_host.gns3 │ ├── 1_5_images │ │ ├── after │ │ │ ├── 1_5_image.gns3 │ │ │ └── project-files │ │ │ │ └── images │ │ │ │ └── gns3_logo.png │ │ └── before │ │ │ ├── 1_5_image.gns3 │ │ │ └── project-files │ │ │ └── images │ │ │ └── gns3_logo.png │ ├── 1_5_internet │ │ ├── after │ │ │ └── 1_5_internet.gns3 │ │ └── before │ │ │ └── 1_5_internet.gns3 │ ├── 1_5_iou │ │ ├── after │ │ │ └── 1_5_iou.gns3 │ │ └── before │ │ │ └── 1_5_iou.gns3 │ ├── 1_5_qemu │ │ ├── after │ │ │ └── testqemu.gns3 │ │ └── before │ │ │ └── testqemu.gns3 │ ├── 1_5_snapshot │ │ ├── after │ │ │ ├── 1_5_snapshot.gns3 │ │ │ ├── project-files │ │ │ │ └── vpcs │ │ │ │ │ └── 992c28fd-4bc3-4508-9300-48600148f64a │ │ │ │ │ └── startup.vpc │ │ │ └── snapshots │ │ │ │ └── onedevice_280716_174116.gns3project │ │ └── before │ │ │ ├── 1_5_snapshot.gns3 │ │ │ └── project-files │ │ │ ├── snapshots │ │ │ └── onedevice_280716_174116 │ │ │ │ ├── project-files │ │ │ │ └── vpcs │ │ │ │ │ └── 992c28fd-4bc3-4508-9300-48600148f64a │ │ │ │ │ └── startup.vpc │ │ │ │ ├── screenshot.png │ │ │ │ └── testsnapshot.gns3 │ │ │ └── vpcs │ │ │ └── 992c28fd-4bc3-4508-9300-48600148f64a │ │ │ └── startup.vpc │ ├── 1_5_virtualbox │ │ ├── after │ │ │ └── 1_5_virtualbox.gns3 │ │ └── before │ │ │ └── 1_5_virtualbox.gns3 │ ├── 1_5_vmware │ │ ├── after │ │ │ └── 1_5_vmware.gns3 │ │ └── before │ │ │ └── 1_5_vmware.gns3 │ ├── 1_5_vpcs │ │ ├── after │ │ │ ├── 1_5_vpcs.gns3 │ │ │ └── project-files │ │ │ │ └── vpcs │ │ │ │ ├── 0fd3dd4d-dc93-4a04-a9b9-7396a9e22e8b │ │ │ │ └── startup.vpc │ │ │ │ └── b570a150-c09f-47d9-8d32-9ca5b03234d6 │ │ │ │ └── startup.vpc │ │ └── before │ │ │ ├── 1_5_vpcs.gns3 │ │ │ └── project-files │ │ │ └── vpcs │ │ │ ├── 0fd3dd4d-dc93-4a04-a9b9-7396a9e22e8b │ │ │ └── startup.vpc │ │ │ └── b570a150-c09f-47d9-8d32-9ca5b03234d6 │ │ │ └── startup.vpc │ ├── 2_0_vmware │ │ ├── after │ │ │ └── 1_5_vmware.gns3 │ │ └── before │ │ │ └── 1_5_vmware.gns3 │ ├── README.rst │ └── dynamips_2_0_0_b2 │ │ ├── after │ │ ├── dynamips_2_0_0_b2.gns3 │ │ └── project-files │ │ │ └── dynamips │ │ │ ├── b31bacb4-b251-47e3-b9e8-fe5596e7a8ba │ │ │ ├── c7200_i1_nvram │ │ │ ├── configs │ │ │ │ └── i1_startup-config.cfg │ │ │ └── dynamips_i1_log.txt │ │ │ └── f306df6f-dbe0-4be1-9a40-625b8d20fe6e │ │ │ ├── c7200_i2_nvram │ │ │ ├── configs │ │ │ └── i2_startup-config.cfg │ │ │ └── dynamips_i2_log.txt │ │ └── before │ │ ├── dynamips_2_0_0_b2.gns3 │ │ └── project-files │ │ └── dynamips │ │ ├── c7200_i1_nvram │ │ ├── c7200_i2_nvram │ │ ├── configs │ │ ├── i1_startup-config.cfg │ │ └── i2_startup-config.cfg │ │ ├── dynamips_i1_log.txt │ │ └── dynamips_i2_log.txt ├── utils.py ├── utils │ ├── asyncio │ │ └── test_embed_shell.py │ ├── test_asyncio.py │ ├── test_file_watcher.py │ ├── test_images.py │ ├── test_interfaces.py │ ├── test_path.py │ └── test_picture.py └── web │ └── test_response.py └── win-requirements.txt /.coveragerc: -------------------------------------------------------------------------------- 1 | [paths] 2 | source = gns3server 3 | -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | gns3server/version.py merge=ours 2 | 3 | -------------------------------------------------------------------------------- /.github/workflows/add-new-issues-to-project.yml: -------------------------------------------------------------------------------- 1 | name: Add new issues to GNS3 project 2 | 3 | on: 4 | issues: 5 | types: 6 | - opened 7 | 8 | jobs: 9 | add-to-project: 10 | name: Add issue to project 11 | runs-on: ubuntu-latest 12 | steps: 13 | - uses: actions/add-to-project@v1.0.1 14 | with: 15 | project-url: https://github.com/orgs/GNS3/projects/3 16 | github-token: ${{ secrets.ADD_NEW_ISSUES_TO_PROJECT }} 17 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | *.py[cod] 2 | __pycache__ 3 | .pytest_cache 4 | 5 | #py.test 6 | .cache 7 | 8 | # C extensions 9 | *.so 10 | 11 | # Packages 12 | *.egg 13 | *.egg-info 14 | dist 15 | build 16 | eggs 17 | parts 18 | var 19 | sdist 20 | develop-eggs 21 | .installed.cfg 22 | lib 23 | lib64 24 | 25 | # Installer logs 26 | pip-log.txt 27 | 28 | # Unit test / coverage reports 29 | .coverage 30 | .coverage* 31 | .tox 32 | .cache 33 | nosetests.xml 34 | 35 | # Translations 36 | *.mo 37 | 38 | # Mr Developer 39 | .mr.developer.cfg 40 | .project 41 | .pydevproject 42 | .settings 43 | .vscode 44 | 45 | # Pycharm 46 | .idea 47 | 48 | # Gedit Backup Files 49 | *~ 50 | 51 | #Documentation build 52 | docs/_build 53 | 54 | #VPCS 55 | vpcs.hist 56 | startup.vpcs 57 | .gns3_shell_history 58 | 59 | # Virtualenv 60 | env 61 | venv 62 | .ropeproject 63 | -------------------------------------------------------------------------------- /.whitesource: -------------------------------------------------------------------------------- 1 | { 2 | "scanSettings": { 3 | "configMode": "AUTO", 4 | "configExternalURL": "", 5 | "projectToken" : "", 6 | "baseBranches": ["master", "2.2", "3.0"] 7 | }, 8 | "checkRunSettings": { 9 | "vulnerableCheckRunConclusionLevel": "failure" 10 | }, 11 | "issueSettings": { 12 | "minSeverityLevel": "LOW" 13 | } 14 | } -------------------------------------------------------------------------------- /AUTHORS: -------------------------------------------------------------------------------- 1 | Jeremy Grossmann 2 | Julien Duponchelle -------------------------------------------------------------------------------- /MANIFEST.in: -------------------------------------------------------------------------------- 1 | include README.md 2 | include AUTHORS 3 | include LICENSE 4 | include MANIFEST.in 5 | include requirements.txt 6 | include conf/*.conf 7 | recursive-include tests * 8 | recursive-exclude docs * 9 | recursive-include gns3server * 10 | recursive-exclude * __pycache__ 11 | recursive-exclude * *.py[co] 12 | -------------------------------------------------------------------------------- /SECURITY.md: -------------------------------------------------------------------------------- 1 | # Security Policy 2 | 3 | ## Supported Versions 4 | 5 | These are the versions of the GNS3 server that are 6 | currently being supported with security updates. 7 | 8 | | Version | Supported | 9 | | ------- | ------------------ | 10 | | 3.x.x | :white_check_mark: | 11 | | 2.2.x | :white_check_mark: | 12 | | 2.1.x | :x: | 13 | | 1.x.x | :x: | 14 | 15 | ## Reporting a Vulnerability 16 | 17 | Please use GitHub's report a vulnerability feature. More information can be found in https://docs.github.com/en/code-security/security-advisories/guidance-on-reporting-and-writing/privately-reporting-a-security-vulnerability 18 | -------------------------------------------------------------------------------- /compose.yaml: -------------------------------------------------------------------------------- 1 | services: 2 | gen3-server: 3 | build: 4 | context: . 5 | dockerfile: Dockerfile 6 | ports: 7 | - "8001:3080" 8 | -------------------------------------------------------------------------------- /dev-requirements.txt: -------------------------------------------------------------------------------- 1 | -rrequirements.txt 2 | 3 | pytest==8.3.3 4 | flake8==7.1.0 5 | pytest-timeout==2.3.1 6 | pytest-aiohttp==1.0.5 7 | -------------------------------------------------------------------------------- /docs/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/docs/__init__.py -------------------------------------------------------------------------------- /docs/_static/.keep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/docs/_static/.keep -------------------------------------------------------------------------------- /docs/api/examples/compute_delete_projectsprojectid.txt: -------------------------------------------------------------------------------- 1 | curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80' 2 | 3 | DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80 HTTP/1.1 4 | 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:26:17 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/compute/projects/{project_id} 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/compute_delete_projectsprojectidcloudnodesnodeid.txt: -------------------------------------------------------------------------------- 1 | curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/a022e62a-a40b-42a5-8efd-3d8141806276' 2 | 3 | DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/a022e62a-a40b-42a5-8efd-3d8141806276 HTTP/1.1 4 | 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:25:49 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/compute/projects/{project_id}/cloud/nodes/{node_id} 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/compute_delete_projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdnio.txt: -------------------------------------------------------------------------------- 1 | curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/8a5e5e38-6a8a-408a-9d8c-31315e11d6f2/adapters/0/ports/0/nio' 2 | 3 | DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/8a5e5e38-6a8a-408a-9d8c-31315e11d6f2/adapters/0/ports/0/nio HTTP/1.1 4 | 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:25:43 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/compute/projects/{project_id}/cloud/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/compute_delete_projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdnio.txt: -------------------------------------------------------------------------------- 1 | curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/c5e6e56f-2698-4bae-9365-0a9f9efd3418/adapters/0/ports/0/nio' 2 | 3 | DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/c5e6e56f-2698-4bae-9365-0a9f9efd3418/adapters/0/ports/0/nio HTTP/1.1 4 | 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:25:50 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/compute/projects/{project_id}/docker/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/compute_delete_projectsprojectidiounodesnodeid.txt: -------------------------------------------------------------------------------- 1 | curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/81f7488a-6a28-46f0-8b26-331906bdcf2e' 2 | 3 | DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/81f7488a-6a28-46f0-8b26-331906bdcf2e HTTP/1.1 4 | 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:25:57 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/compute/projects/{project_id}/iou/nodes/{node_id} 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/compute_delete_projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdnio.txt: -------------------------------------------------------------------------------- 1 | curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/04e77370-e8a1-4c6c-9c2a-d7d9076a6f63/adapters/1/ports/0/nio' 2 | 3 | DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/04e77370-e8a1-4c6c-9c2a-d7d9076a6f63/adapters/1/ports/0/nio HTTP/1.1 4 | 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:25:59 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/compute/projects/{project_id}/iou/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/compute_delete_projectsprojectidnatnodesnodeid.txt: -------------------------------------------------------------------------------- 1 | curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/b77c05e8-dd60-4772-aedf-066339baee14' 2 | 3 | DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/b77c05e8-dd60-4772-aedf-066339baee14 HTTP/1.1 4 | 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:26:16 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/compute/projects/{project_id}/nat/nodes/{node_id} 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/compute_delete_projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdnio.txt: -------------------------------------------------------------------------------- 1 | curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/bd5f949e-b288-4e5f-97c7-f6a053898140/adapters/0/ports/0/nio' 2 | 3 | DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/bd5f949e-b288-4e5f-97c7-f6a053898140/adapters/0/ports/0/nio HTTP/1.1 4 | 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:26:10 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/compute/projects/{project_id}/nat/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/compute_delete_projectsprojectidqemunodesnodeid.txt: -------------------------------------------------------------------------------- 1 | curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/55307537-62a4-48ab-ac1c-ebd998794120' 2 | 3 | DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/55307537-62a4-48ab-ac1c-ebd998794120 HTTP/1.1 4 | 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:26:40 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/compute/projects/{project_id}/qemu/nodes/{node_id} 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/compute_delete_projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdnio.txt: -------------------------------------------------------------------------------- 1 | curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/ab332598-68ef-4ef6-bb29-d2f31a961273/adapters/1/ports/0/nio' 2 | 3 | DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/ab332598-68ef-4ef6-bb29-d2f31a961273/adapters/1/ports/0/nio HTTP/1.1 4 | 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:26:50 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/compute/projects/{project_id}/qemu/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/compute_delete_projectsprojectidtracengnodesnodeid.txt: -------------------------------------------------------------------------------- 1 | curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/36979ca4-4892-4b3e-9202-2143e261d128' 2 | 3 | DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/36979ca4-4892-4b3e-9202-2143e261d128 HTTP/1.1 4 | 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:27:26 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/compute/projects/{project_id}/traceng/nodes/{node_id} 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/compute_delete_projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdnio.txt: -------------------------------------------------------------------------------- 1 | curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/09736166-0e3a-4fe5-b914-72151a6362e2/adapters/0/ports/0/nio' 2 | 3 | DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/09736166-0e3a-4fe5-b914-72151a6362e2/adapters/0/ports/0/nio HTTP/1.1 4 | 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:27:26 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/compute/projects/{project_id}/traceng/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/compute_delete_projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdnio.txt: -------------------------------------------------------------------------------- 1 | curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/a0d3abeb-9538-4660-a6e5-677822f8f943/adapters/0/ports/0/nio' 2 | 3 | DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/a0d3abeb-9538-4660-a6e5-677822f8f943/adapters/0/ports/0/nio HTTP/1.1 4 | 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:27:28 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/compute_delete_projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdnio.txt: -------------------------------------------------------------------------------- 1 | curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/90f57222-bdca-4d92-867c-de3f945f83f5/adapters/0/ports/0/nio' 2 | 3 | DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/90f57222-bdca-4d92-867c-de3f945f83f5/adapters/0/ports/0/nio HTTP/1.1 4 | 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:27:42 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/compute/projects/{project_id}/vmware/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/compute_delete_projectsprojectidvpcsnodesnodeid.txt: -------------------------------------------------------------------------------- 1 | curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/f84fd457-cc5c-4eb9-88b8-3ac691d1fe52' 2 | 3 | DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/f84fd457-cc5c-4eb9-88b8-3ac691d1fe52 HTTP/1.1 4 | 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:27:48 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/compute/projects/{project_id}/vpcs/nodes/{node_id} 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/compute_delete_projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdnio.txt: -------------------------------------------------------------------------------- 1 | curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/358e43b9-c971-4a31-a42a-b62d18342bc6/adapters/0/ports/0/nio' 2 | 3 | DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/358e43b9-c971-4a31-a42a-b62d18342bc6/adapters/0/ports/0/nio HTTP/1.1 4 | 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:27:48 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/compute/projects/{project_id}/vpcs/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/compute_get_capabilities.txt: -------------------------------------------------------------------------------- 1 | curl -i -X GET 'http://localhost:3080/v2/compute/capabilities' 2 | 3 | GET /v2/compute/capabilities HTTP/1.1 4 | 5 | 6 | 7 | HTTP/1.1 200 8 | Connection: close 9 | Content-Length: 366 10 | Content-Type: application/json 11 | Date: Wed, 08 Jan 2020 02:25:43 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/compute/capabilities 14 | 15 | { 16 | "node_types": [ 17 | "cloud", 18 | "ethernet_hub", 19 | "ethernet_switch", 20 | "nat", 21 | "vpcs", 22 | "virtualbox", 23 | "dynamips", 24 | "frame_relay_switch", 25 | "atm_switch", 26 | "qemu", 27 | "vmware", 28 | "traceng", 29 | "docker", 30 | "iou" 31 | ], 32 | "platform": "linuxdebian", 33 | "version": "2.2.4dev1" 34 | } 35 | -------------------------------------------------------------------------------- /docs/api/examples/compute_get_iouimages.txt: -------------------------------------------------------------------------------- 1 | curl -i -X GET 'http://localhost:3080/v2/compute/iou/images' 2 | 3 | GET /v2/compute/iou/images HTTP/1.1 4 | 5 | 6 | 7 | HTTP/1.1 200 8 | Connection: close 9 | Content-Length: 149 10 | Content-Type: application/json 11 | Date: Wed, 08 Jan 2020 02:25:59 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/compute/iou/images 14 | 15 | [ 16 | { 17 | "filename": "iou.bin", 18 | "filesize": 7, 19 | "md5sum": "e573e8f5c93c6c00783f20c7a170aa6c", 20 | "path": "iou.bin" 21 | } 22 | ] 23 | -------------------------------------------------------------------------------- /docs/api/examples/compute_get_projects.txt: -------------------------------------------------------------------------------- 1 | curl -i -X GET 'http://localhost:3080/v2/compute/projects' 2 | 3 | GET /v2/compute/projects HTTP/1.1 4 | 5 | 6 | 7 | HTTP/1.1 200 8 | Connection: close 9 | Content-Length: 252 10 | Content-Type: application/json 11 | Date: Wed, 08 Jan 2020 02:26:17 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/compute/projects 14 | 15 | [ 16 | { 17 | "name": "test", 18 | "project_id": "51010203-0405-0607-0809-0a0b0c0d0e0f", 19 | "variables": null 20 | }, 21 | { 22 | "name": "test", 23 | "project_id": "52010203-0405-0607-0809-0a0b0c0d0e0b", 24 | "variables": null 25 | } 26 | ] 27 | -------------------------------------------------------------------------------- /docs/api/examples/compute_get_projectsprojectid.txt: -------------------------------------------------------------------------------- 1 | curl -i -X GET 'http://localhost:3080/v2/compute/projects/40010203-0405-0607-0809-0a0b0c0d0e02' 2 | 3 | GET /v2/compute/projects/40010203-0405-0607-0809-0a0b0c0d0e02 HTTP/1.1 4 | 5 | 6 | 7 | HTTP/1.1 200 8 | Connection: close 9 | Content-Length: 103 10 | Content-Type: application/json 11 | Date: Wed, 08 Jan 2020 02:26:17 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/compute/projects/{project_id} 14 | 15 | { 16 | "name": "test", 17 | "project_id": "40010203-0405-0607-0809-0a0b0c0d0e02", 18 | "variables": null 19 | } 20 | -------------------------------------------------------------------------------- /docs/api/examples/compute_get_qemubinaries.txt: -------------------------------------------------------------------------------- 1 | curl -i -X GET 'http://localhost:3080/v2/compute/qemu/binaries' -d '{"archs": ["i386"]}' 2 | 3 | GET /v2/compute/qemu/binaries HTTP/1.1 4 | { 5 | "archs": [ 6 | "i386" 7 | ] 8 | } 9 | 10 | 11 | HTTP/1.1 200 12 | Connection: close 13 | Content-Length: 212 14 | Content-Type: application/json 15 | Date: Wed, 08 Jan 2020 02:26:55 GMT 16 | Server: Python/3.6 GNS3/2.2.4dev1 17 | X-Route: /v2/compute/qemu/binaries 18 | 19 | [ 20 | { 21 | "path": "/tmp/x86_64", 22 | "version": "2.2.0" 23 | }, 24 | { 25 | "path": "/tmp/alpha", 26 | "version": "2.1.0" 27 | }, 28 | { 29 | "path": "/tmp/i386", 30 | "version": "2.1.0" 31 | } 32 | ] 33 | -------------------------------------------------------------------------------- /docs/api/examples/compute_get_qemucapabilities.txt: -------------------------------------------------------------------------------- 1 | curl -i -X GET 'http://localhost:3080/v2/compute/qemu/capabilities' 2 | 3 | GET /v2/compute/qemu/capabilities HTTP/1.1 4 | 5 | 6 | 7 | HTTP/1.1 200 8 | Connection: close 9 | Content-Length: 39 10 | Content-Type: application/json 11 | Date: Wed, 08 Jan 2020 02:27:19 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/compute/qemu/capabilities 14 | 15 | { 16 | "kvm": [ 17 | "x86_64" 18 | ] 19 | } 20 | -------------------------------------------------------------------------------- /docs/api/examples/compute_get_version.txt: -------------------------------------------------------------------------------- 1 | curl -i -X GET 'http://localhost:3080/v2/compute/version' 2 | 3 | GET /v2/compute/version HTTP/1.1 4 | 5 | 6 | 7 | HTTP/1.1 200 8 | Connection: close 9 | Content-Length: 49 10 | Content-Type: application/json 11 | Date: Wed, 08 Jan 2020 02:27:25 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/compute/version 14 | 15 | { 16 | "local": true, 17 | "version": "2.2.4dev1" 18 | } 19 | -------------------------------------------------------------------------------- /docs/api/examples/compute_post_projects.txt: -------------------------------------------------------------------------------- 1 | curl -i -X POST 'http://localhost:3080/v2/compute/projects' -d '{"name": "test", "project_id": "10010203-0405-0607-0809-0a0b0c0d0e0f"}' 2 | 3 | POST /v2/compute/projects HTTP/1.1 4 | { 5 | "name": "test", 6 | "project_id": "10010203-0405-0607-0809-0a0b0c0d0e0f" 7 | } 8 | 9 | 10 | HTTP/1.1 201 11 | Connection: close 12 | Content-Length: 103 13 | Content-Type: application/json 14 | Date: Wed, 08 Jan 2020 02:26:17 GMT 15 | Server: Python/3.6 GNS3/2.2.4dev1 16 | X-Route: /v2/compute/projects 17 | 18 | { 19 | "name": "test", 20 | "project_id": "10010203-0405-0607-0809-0a0b0c0d0e0f", 21 | "variables": null 22 | } 23 | -------------------------------------------------------------------------------- /docs/api/examples/compute_post_projectsprojectidclose.txt: -------------------------------------------------------------------------------- 1 | curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/close' -d '{}' 2 | 3 | POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/close HTTP/1.1 4 | {} 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:26:17 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/compute/projects/{project_id}/close 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/compute_post_projectsprojectidcloudnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt: -------------------------------------------------------------------------------- 1 | curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/5def67e9-a974-4da2-9cd3-17866ede1898/adapters/0/ports/0/stop_capture' -d '{}' 2 | 3 | POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/5def67e9-a974-4da2-9cd3-17866ede1898/adapters/0/ports/0/stop_capture HTTP/1.1 4 | {} 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:25:49 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/compute/projects/{project_id}/cloud/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/stop_capture 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/compute_post_projectsprojectiddockernodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt: -------------------------------------------------------------------------------- 1 | curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/e44e037c-3b3e-4172-aff7-b9bb510646c6/adapters/0/ports/0/stop_capture' -d '{}' 2 | 3 | POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/e44e037c-3b3e-4172-aff7-b9bb510646c6/adapters/0/ports/0/stop_capture HTTP/1.1 4 | {} 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:25:51 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/compute/projects/{project_id}/docker/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/stop_capture 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/compute_post_projectsprojectiddockernodesnodeidduplicate.txt: -------------------------------------------------------------------------------- 1 | curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/c5f0877d-6201-4fe8-8c0b-aaeb84222bee/duplicate' -d '{"destination_node_id": "72462999-933a-4be7-9ef5-0528f04c3870"}' 2 | 3 | POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/c5f0877d-6201-4fe8-8c0b-aaeb84222bee/duplicate HTTP/1.1 4 | { 5 | "destination_node_id": "72462999-933a-4be7-9ef5-0528f04c3870" 6 | } 7 | 8 | 9 | HTTP/1.1 201 10 | Connection: close 11 | Content-Length: 4 12 | Content-Type: application/json 13 | Date: Wed, 08 Jan 2020 02:25:51 GMT 14 | Server: Python/3.6 GNS3/2.2.4dev1 15 | X-Route: /v2/compute/projects/{project_id}/docker/nodes/{node_id}/duplicate 16 | 17 | true 18 | -------------------------------------------------------------------------------- /docs/api/examples/compute_post_projectsprojectidiounodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt: -------------------------------------------------------------------------------- 1 | curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/73ab14a4-9338-4428-89a7-bce3d8daf1eb/adapters/0/ports/0/stop_capture' -d '{}' 2 | 3 | POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/73ab14a4-9338-4428-89a7-bce3d8daf1eb/adapters/0/ports/0/stop_capture HTTP/1.1 4 | {} 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:25:59 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/compute/projects/{project_id}/iou/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/stop_capture 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/compute_post_projectsprojectidiounodesnodeidduplicate.txt: -------------------------------------------------------------------------------- 1 | curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/12cd096f-f0c1-45f9-ac57-360f1d379c48/duplicate' -d '{"destination_node_id": "3949cfaa-2574-4064-a088-5f48ae784e9b"}' 2 | 3 | POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/12cd096f-f0c1-45f9-ac57-360f1d379c48/duplicate HTTP/1.1 4 | { 5 | "destination_node_id": "3949cfaa-2574-4064-a088-5f48ae784e9b" 6 | } 7 | 8 | 9 | HTTP/1.1 201 10 | Connection: close 11 | Content-Length: 4 12 | Content-Type: application/json 13 | Date: Wed, 08 Jan 2020 02:26:09 GMT 14 | Server: Python/3.6 GNS3/2.2.4dev1 15 | X-Route: /v2/compute/projects/{project_id}/iou/nodes/{node_id}/duplicate 16 | 17 | true 18 | -------------------------------------------------------------------------------- /docs/api/examples/compute_post_projectsprojectidiounodesnodeidreload.txt: -------------------------------------------------------------------------------- 1 | curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/c9e6143c-cf69-416d-8935-8af81fb8ff1d/reload' -d '{}' 2 | 3 | POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/c9e6143c-cf69-416d-8935-8af81fb8ff1d/reload HTTP/1.1 4 | {} 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:25:57 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/compute/projects/{project_id}/iou/nodes/{node_id}/reload 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/compute_post_projectsprojectidiounodesnodeidstop.txt: -------------------------------------------------------------------------------- 1 | curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/5fcb7418-3e0c-4a47-8cff-c5e0b3e68000/stop' -d '{}' 2 | 3 | POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/5fcb7418-3e0c-4a47-8cff-c5e0b3e68000/stop HTTP/1.1 4 | {} 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:25:57 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/compute/projects/{project_id}/iou/nodes/{node_id}/stop 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/compute_post_projectsprojectidnatnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt: -------------------------------------------------------------------------------- 1 | curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/da53ab8a-106c-48a9-ba35-48167fb1b6d1/adapters/0/ports/0/stop_capture' -d '{}' 2 | 3 | POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/da53ab8a-106c-48a9-ba35-48167fb1b6d1/adapters/0/ports/0/stop_capture HTTP/1.1 4 | {} 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:26:16 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/compute/projects/{project_id}/nat/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/stop_capture 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/compute_post_projectsprojectidportsudp.txt: -------------------------------------------------------------------------------- 1 | curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/ports/udp' -d '{}' 2 | 3 | POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/ports/udp HTTP/1.1 4 | {} 5 | 6 | 7 | HTTP/1.1 201 8 | Connection: close 9 | Content-Length: 25 10 | Content-Type: application/json 11 | Date: Wed, 08 Jan 2020 02:26:16 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/compute/projects/{project_id}/ports/udp 14 | 15 | { 16 | "udp_port": 20000 17 | } 18 | -------------------------------------------------------------------------------- /docs/api/examples/compute_post_projectsprojectidqemunodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt: -------------------------------------------------------------------------------- 1 | curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/4258adbd-3115-4b8f-b751-cb117dcff450/adapters/0/ports/0/stop_capture' -d '{}' 2 | 3 | POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/4258adbd-3115-4b8f-b751-cb117dcff450/adapters/0/ports/0/stop_capture HTTP/1.1 4 | {} 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:27:24 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/compute/projects/{project_id}/qemu/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/stop_capture 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/compute_post_projectsprojectidqemunodesnodeidduplicate.txt: -------------------------------------------------------------------------------- 1 | curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/839fb609-bd90-4a20-b496-6e225594c697/duplicate' -d '{"destination_node_id": "eb9e761d-0029-4644-b586-dc903e7abd71"}' 2 | 3 | POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/839fb609-bd90-4a20-b496-6e225594c697/duplicate HTTP/1.1 4 | { 5 | "destination_node_id": "eb9e761d-0029-4644-b586-dc903e7abd71" 6 | } 7 | 8 | 9 | HTTP/1.1 201 10 | Connection: close 11 | Content-Length: 4 12 | Content-Type: application/json 13 | Date: Wed, 08 Jan 2020 02:27:21 GMT 14 | Server: Python/3.6 GNS3/2.2.4dev1 15 | X-Route: /v2/compute/projects/{project_id}/qemu/nodes/{node_id}/duplicate 16 | 17 | true 18 | -------------------------------------------------------------------------------- /docs/api/examples/compute_post_projectsprojectidqemunodesnodeidreload.txt: -------------------------------------------------------------------------------- 1 | curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/314c42be-e138-42f3-a59e-a7c3c2e6514f/reload' -d '{}' 2 | 3 | POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/314c42be-e138-42f3-a59e-a7c3c2e6514f/reload HTTP/1.1 4 | {} 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:26:33 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/compute/projects/{project_id}/qemu/nodes/{node_id}/reload 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/compute_post_projectsprojectidqemunodesnodeidresume.txt: -------------------------------------------------------------------------------- 1 | curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/ad58dbd9-6558-4750-bec5-1de4cf77ed70/resume' -d '{}' 2 | 3 | POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/ad58dbd9-6558-4750-bec5-1de4cf77ed70/resume HTTP/1.1 4 | {} 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:26:35 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/compute/projects/{project_id}/qemu/nodes/{node_id}/resume 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/compute_post_projectsprojectidqemunodesnodeidstop.txt: -------------------------------------------------------------------------------- 1 | curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/6aacea07-76ca-4fb9-94d2-24da00e33037/stop' -d '{}' 2 | 3 | POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/6aacea07-76ca-4fb9-94d2-24da00e33037/stop HTTP/1.1 4 | {} 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:26:31 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/compute/projects/{project_id}/qemu/nodes/{node_id}/stop 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/compute_post_projectsprojectidqemunodesnodeidsuspend.txt: -------------------------------------------------------------------------------- 1 | curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/073074f6-83d4-40b4-8042-771b3df49f60/suspend' -d '{}' 2 | 3 | POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/073074f6-83d4-40b4-8042-771b3df49f60/suspend HTTP/1.1 4 | {} 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:26:33 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/compute/projects/{project_id}/qemu/nodes/{node_id}/suspend 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt: -------------------------------------------------------------------------------- 1 | curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/2a0e5c7d-6773-45a3-886c-d19e329eaeba/adapters/0/ports/0/stop_capture' -d '{}' 2 | 3 | POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/2a0e5c7d-6773-45a3-886c-d19e329eaeba/adapters/0/ports/0/stop_capture HTTP/1.1 4 | {} 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:27:27 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/compute/projects/{project_id}/traceng/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/stop_capture 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidduplicate.txt: -------------------------------------------------------------------------------- 1 | curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/fe70324f-78a3-4ada-a675-bd693250d403/duplicate' -d '{"destination_node_id": "64e0db26-82e6-416a-ac11-97add4614131"}' 2 | 3 | POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/fe70324f-78a3-4ada-a675-bd693250d403/duplicate HTTP/1.1 4 | { 5 | "destination_node_id": "64e0db26-82e6-416a-ac11-97add4614131" 6 | } 7 | 8 | 9 | HTTP/1.1 201 10 | Connection: close 11 | Content-Length: 4 12 | Content-Type: application/json 13 | Date: Wed, 08 Jan 2020 02:27:27 GMT 14 | Server: Python/3.6 GNS3/2.2.4dev1 15 | X-Route: /v2/compute/projects/{project_id}/traceng/nodes/{node_id}/duplicate 16 | 17 | true 18 | -------------------------------------------------------------------------------- /docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidreload.txt: -------------------------------------------------------------------------------- 1 | curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/d12252b3-0698-441d-b7a8-cf0f5c8de536/reload' -d '{}' 2 | 3 | POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/d12252b3-0698-441d-b7a8-cf0f5c8de536/reload HTTP/1.1 4 | {} 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:27:26 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/compute/projects/{project_id}/traceng/nodes/{node_id}/reload 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/compute_post_projectsprojectidtracengnodesnodeidstop.txt: -------------------------------------------------------------------------------- 1 | curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/797b0b03-d612-437a-91cc-f6b6a2e1341f/stop' -d '{}' 2 | 3 | POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/797b0b03-d612-437a-91cc-f6b6a2e1341f/stop HTTP/1.1 4 | {} 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:27:26 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/compute/projects/{project_id}/traceng/nodes/{node_id}/stop 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt: -------------------------------------------------------------------------------- 1 | curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/27bdd057-dedc-424e-9593-3ea522aa7d1f/adapters/0/ports/0/stop_capture' -d '{}' 2 | 3 | POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/27bdd057-dedc-424e-9593-3ea522aa7d1f/adapters/0/ports/0/stop_capture HTTP/1.1 4 | {} 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:27:28 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/stop_capture 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidreload.txt: -------------------------------------------------------------------------------- 1 | curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/2e55edb4-1f15-4b41-8107-bf931e81f779/reload' -d '{}' 2 | 3 | POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/2e55edb4-1f15-4b41-8107-bf931e81f779/reload HTTP/1.1 4 | {} 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:27:27 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id}/reload 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidresume.txt: -------------------------------------------------------------------------------- 1 | curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/7e8bf660-9d03-4005-80b6-f63666aa1a1d/resume' -d '{}' 2 | 3 | POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/7e8bf660-9d03-4005-80b6-f63666aa1a1d/resume HTTP/1.1 4 | {} 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:27:27 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id}/resume 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidstart.txt: -------------------------------------------------------------------------------- 1 | curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/311dba8a-1030-46da-94d8-76cf6430cc5e/start' -d '{}' 2 | 3 | POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/311dba8a-1030-46da-94d8-76cf6430cc5e/start HTTP/1.1 4 | {} 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:27:27 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id}/start 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidstop.txt: -------------------------------------------------------------------------------- 1 | curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/40d1d4a5-7e95-41fc-8c51-1883dc9eb71b/stop' -d '{}' 2 | 3 | POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/40d1d4a5-7e95-41fc-8c51-1883dc9eb71b/stop HTTP/1.1 4 | {} 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:27:27 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id}/stop 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/compute_post_projectsprojectidvirtualboxnodesnodeidsuspend.txt: -------------------------------------------------------------------------------- 1 | curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/079cef97-d46e-4033-b1b5-96e032817a0e/suspend' -d '{}' 2 | 3 | POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/079cef97-d46e-4033-b1b5-96e032817a0e/suspend HTTP/1.1 4 | {} 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:27:27 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id}/suspend 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt: -------------------------------------------------------------------------------- 1 | curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/71dadac9-4a0d-4168-af91-0fc095332a34/adapters/0/ports/0/stop_capture' -d '{}' 2 | 3 | POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/71dadac9-4a0d-4168-af91-0fc095332a34/adapters/0/ports/0/stop_capture HTTP/1.1 4 | {} 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:27:45 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/compute/projects/{project_id}/vmware/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/stop_capture 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidreload.txt: -------------------------------------------------------------------------------- 1 | curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/39cf5ac2-d3d8-4361-bf81-d40d30efb8e6/reload' -d '{}' 2 | 3 | POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/39cf5ac2-d3d8-4361-bf81-d40d30efb8e6/reload HTTP/1.1 4 | {} 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:27:39 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/compute/projects/{project_id}/vmware/nodes/{node_id}/reload 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidresume.txt: -------------------------------------------------------------------------------- 1 | curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/6c15cc59-17d8-46d3-90ea-28e0ef5d6de9/resume' -d '{}' 2 | 3 | POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/6c15cc59-17d8-46d3-90ea-28e0ef5d6de9/resume HTTP/1.1 4 | {} 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:27:38 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/compute/projects/{project_id}/vmware/nodes/{node_id}/resume 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidstart.txt: -------------------------------------------------------------------------------- 1 | curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/c3d3047e-6dde-4ae9-9266-0a8b9a17f39d/start' -d '{}' 2 | 3 | POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/c3d3047e-6dde-4ae9-9266-0a8b9a17f39d/start HTTP/1.1 4 | {} 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:27:30 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/compute/projects/{project_id}/vmware/nodes/{node_id}/start 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidstop.txt: -------------------------------------------------------------------------------- 1 | curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/1667b71e-d7d2-4cc7-99b8-c9efbe778f88/stop' -d '{}' 2 | 3 | POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/1667b71e-d7d2-4cc7-99b8-c9efbe778f88/stop HTTP/1.1 4 | {} 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:27:31 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/compute/projects/{project_id}/vmware/nodes/{node_id}/stop 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/compute_post_projectsprojectidvmwarenodesnodeidsuspend.txt: -------------------------------------------------------------------------------- 1 | curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/b53c84e8-dcd2-4f7e-94e9-bcc2b8773870/suspend' -d '{}' 2 | 3 | POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/b53c84e8-dcd2-4f7e-94e9-bcc2b8773870/suspend HTTP/1.1 4 | {} 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:27:33 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/compute/projects/{project_id}/vmware/nodes/{node_id}/suspend 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidadaptersadapternumberdportsportnumberdstopcapture.txt: -------------------------------------------------------------------------------- 1 | curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/0b2d23b4-01bb-4162-bbb8-6e04c557d816/adapters/0/ports/0/stop_capture' -d '{}' 2 | 3 | POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/0b2d23b4-01bb-4162-bbb8-6e04c557d816/adapters/0/ports/0/stop_capture HTTP/1.1 4 | {} 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:27:49 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/compute/projects/{project_id}/vpcs/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/stop_capture 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidduplicate.txt: -------------------------------------------------------------------------------- 1 | curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/cdb53365-76f2-45a7-a975-e10ab917ed69/duplicate' -d '{"destination_node_id": "0178647e-50b2-42de-8773-59b8d8a69c3a"}' 2 | 3 | POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/cdb53365-76f2-45a7-a975-e10ab917ed69/duplicate HTTP/1.1 4 | { 5 | "destination_node_id": "0178647e-50b2-42de-8773-59b8d8a69c3a" 6 | } 7 | 8 | 9 | HTTP/1.1 201 10 | Connection: close 11 | Content-Length: 4 12 | Content-Type: application/json 13 | Date: Wed, 08 Jan 2020 02:27:48 GMT 14 | Server: Python/3.6 GNS3/2.2.4dev1 15 | X-Route: /v2/compute/projects/{project_id}/vpcs/nodes/{node_id}/duplicate 16 | 17 | true 18 | -------------------------------------------------------------------------------- /docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidreload.txt: -------------------------------------------------------------------------------- 1 | curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/11d0dafe-0661-47a1-aeed-60f351f2ada1/reload' -d '{}' 2 | 3 | POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/11d0dafe-0661-47a1-aeed-60f351f2ada1/reload HTTP/1.1 4 | {} 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:27:48 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/compute/projects/{project_id}/vpcs/nodes/{node_id}/reload 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/compute_post_projectsprojectidvpcsnodesnodeidstop.txt: -------------------------------------------------------------------------------- 1 | curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/caee2c1d-758b-4297-afe6-e3d7d32bab43/stop' -d '{}' 2 | 3 | POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/caee2c1d-758b-4297-afe6-e3d7d32bab43/stop HTTP/1.1 4 | {} 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:27:48 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/compute/projects/{project_id}/vpcs/nodes/{node_id}/stop 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/compute_post_qemuimg.txt: -------------------------------------------------------------------------------- 1 | curl -i -X POST 'http://localhost:3080/v2/compute/qemu/img' -d '{"cluster_size": 64, "format": "qcow2", "lazy_refcounts": "off", "path": "/tmp/hda.qcow2", "preallocation": "metadata", "qemu_img": "/tmp/qemu-img", "refcount_bits": 12, "size": 100}' 2 | 3 | POST /v2/compute/qemu/img HTTP/1.1 4 | { 5 | "cluster_size": 64, 6 | "format": "qcow2", 7 | "lazy_refcounts": "off", 8 | "path": "/tmp/hda.qcow2", 9 | "preallocation": "metadata", 10 | "qemu_img": "/tmp/qemu-img", 11 | "refcount_bits": 12, 12 | "size": 100 13 | } 14 | 15 | 16 | HTTP/1.1 201 17 | Connection: close 18 | Content-Length: 0 19 | Content-Type: application/octet-stream 20 | Date: Wed, 08 Jan 2020 02:27:19 GMT 21 | Server: Python/3.6 GNS3/2.2.4dev1 22 | X-Route: /v2/compute/qemu/img 23 | 24 | -------------------------------------------------------------------------------- /docs/api/examples/controller_delete_computescomputeid.txt: -------------------------------------------------------------------------------- 1 | curl -i -X DELETE 'http://localhost:3080/v2/computes/my_compute_id' 2 | 3 | DELETE /v2/computes/my_compute_id HTTP/1.1 4 | 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:27:54 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/computes/{compute_id} 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/controller_delete_projectsprojectid.txt: -------------------------------------------------------------------------------- 1 | curl -i -X DELETE 'http://localhost:3080/v2/projects/e45cfcd2-7582-4ab2-9e60-aff5f4e519a4' 2 | 3 | DELETE /v2/projects/e45cfcd2-7582-4ab2-9e60-aff5f4e519a4 HTTP/1.1 4 | 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:28:01 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/projects/{project_id} 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/controller_delete_projectsprojectiddrawingsdrawingid.txt: -------------------------------------------------------------------------------- 1 | curl -i -X DELETE 'http://localhost:3080/v2/projects/fd4df447-9859-490a-aeeb-a37f30c46754/drawings/e2420e1d-9029-4281-ad88-e0fd24620abe' 2 | 3 | DELETE /v2/projects/fd4df447-9859-490a-aeeb-a37f30c46754/drawings/e2420e1d-9029-4281-ad88-e0fd24620abe HTTP/1.1 4 | 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:27:57 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/projects/{project_id}/drawings/{drawing_id} 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/controller_delete_projectsprojectidlinkslinkid.txt: -------------------------------------------------------------------------------- 1 | curl -i -X DELETE 'http://localhost:3080/v2/projects/4589f3fc-4d98-4170-ac66-ed1262cac368/links/695dacc3-7daf-493e-b31f-3370436f1d23' 2 | 3 | DELETE /v2/projects/4589f3fc-4d98-4170-ac66-ed1262cac368/links/695dacc3-7daf-493e-b31f-3370436f1d23 HTTP/1.1 4 | 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:27:58 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/projects/{project_id}/links/{link_id} 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/controller_delete_projectsprojectidnodesnodeid.txt: -------------------------------------------------------------------------------- 1 | curl -i -X DELETE 'http://localhost:3080/v2/projects/efe3bf64-ce25-40c6-8b18-95c6a9cefb58/nodes/bd34e20b-5203-48e2-8986-d3fe7274369e' 2 | 3 | DELETE /v2/projects/efe3bf64-ce25-40c6-8b18-95c6a9cefb58/nodes/bd34e20b-5203-48e2-8986-d3fe7274369e HTTP/1.1 4 | 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:28:00 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/projects/{project_id}/nodes/{node_id} 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/controller_delete_projectsprojectidsnapshotssnapshotid.txt: -------------------------------------------------------------------------------- 1 | curl -i -X DELETE 'http://localhost:3080/v2/projects/fce2d46f-7f9c-4ccb-81ed-b0c4fb091bad/snapshots/33a11ad2-e6ef-4dde-9f8f-2ad50a93cd76' 2 | 3 | DELETE /v2/projects/fce2d46f-7f9c-4ccb-81ed-b0c4fb091bad/snapshots/33a11ad2-e6ef-4dde-9f8f-2ad50a93cd76 HTTP/1.1 4 | 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:28:40 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/projects/{project_id}/snapshots/{snapshot_id} 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/controller_delete_templatestemplateid.txt: -------------------------------------------------------------------------------- 1 | curl -i -X DELETE 'http://localhost:3080/v2/templates/a12e443e-7e32-432b-a256-0a4587e24bec' 2 | 3 | DELETE /v2/templates/a12e443e-7e32-432b-a256-0a4587e24bec HTTP/1.1 4 | 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:29:20 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/templates/{template_id} 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/controller_get_computes.txt: -------------------------------------------------------------------------------- 1 | curl -i -X GET 'http://localhost:3080/v2/computes' 2 | 3 | GET /v2/computes HTTP/1.1 4 | 5 | 6 | 7 | HTTP/1.1 200 8 | Connection: close 9 | Content-Length: 415 10 | Content-Type: application/json 11 | Date: Wed, 08 Jan 2020 02:27:53 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/computes 14 | 15 | [ 16 | { 17 | "capabilities": { 18 | "node_types": [], 19 | "version": null 20 | }, 21 | "compute_id": "my_compute_id", 22 | "connected": false, 23 | "cpu_usage_percent": null, 24 | "host": "localhost", 25 | "last_error": null, 26 | "memory_usage_percent": null, 27 | "name": "My super server", 28 | "port": 84, 29 | "protocol": "http", 30 | "user": "julien" 31 | } 32 | ] 33 | -------------------------------------------------------------------------------- /docs/api/examples/controller_get_computescomputeid.txt: -------------------------------------------------------------------------------- 1 | curl -i -X GET 'http://localhost:3080/v2/computes/my_compute_id' 2 | 3 | GET /v2/computes/my_compute_id HTTP/1.1 4 | 5 | 6 | 7 | HTTP/1.1 200 8 | Connection: close 9 | Content-Length: 358 10 | Content-Type: application/json 11 | Date: Wed, 08 Jan 2020 02:27:51 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/computes/{compute_id} 14 | 15 | { 16 | "capabilities": { 17 | "node_types": [], 18 | "version": null 19 | }, 20 | "compute_id": "my_compute_id", 21 | "connected": false, 22 | "cpu_usage_percent": null, 23 | "host": "localhost", 24 | "last_error": null, 25 | "memory_usage_percent": null, 26 | "name": "http://julien@localhost:84", 27 | "port": 84, 28 | "protocol": "http", 29 | "user": "julien" 30 | } 31 | -------------------------------------------------------------------------------- /docs/api/examples/controller_get_computescomputeidemulatoraction.txt: -------------------------------------------------------------------------------- 1 | curl -i -X GET 'http://localhost:3080/v2/computes/my_compute/virtualbox/vms' 2 | 3 | GET /v2/computes/my_compute/virtualbox/vms HTTP/1.1 4 | 5 | 6 | 7 | HTTP/1.1 200 8 | Connection: close 9 | Content-Length: 2 10 | Content-Type: application/json 11 | Date: Wed, 08 Jan 2020 02:27:55 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/computes/{compute_id}/{emulator}/{action:.+} 14 | 15 | [] 16 | -------------------------------------------------------------------------------- /docs/api/examples/controller_get_computescomputeidemulatorimages.txt: -------------------------------------------------------------------------------- 1 | curl -i -X GET 'http://localhost:3080/v2/computes/my_compute/qemu/images' 2 | 3 | GET /v2/computes/my_compute/qemu/images HTTP/1.1 4 | 5 | 6 | 7 | HTTP/1.1 200 8 | Connection: close 9 | Content-Length: 95 10 | Content-Type: application/json 11 | Date: Wed, 08 Jan 2020 02:27:55 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/computes/{compute_id}/{emulator}/images 14 | 15 | [ 16 | { 17 | "filename": "linux.qcow2" 18 | }, 19 | { 20 | "filename": "asav.qcow2" 21 | } 22 | ] 23 | -------------------------------------------------------------------------------- /docs/api/examples/controller_get_gns3vm.txt: -------------------------------------------------------------------------------- 1 | curl -i -X GET 'http://localhost:3080/v2/gns3vm' 2 | 3 | GET /v2/gns3vm HTTP/1.1 4 | 5 | 6 | 7 | HTTP/1.1 200 8 | Connection: close 9 | Content-Length: 148 10 | Content-Type: application/json 11 | Date: Wed, 08 Jan 2020 02:27:57 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/gns3vm 14 | 15 | { 16 | "enable": false, 17 | "engine": "vmware", 18 | "headless": false, 19 | "ram": 2048, 20 | "vcpus": 1, 21 | "vmname": null, 22 | "when_exit": "stop" 23 | } 24 | -------------------------------------------------------------------------------- /docs/api/examples/controller_get_gns3vmenginesenginevms.txt: -------------------------------------------------------------------------------- 1 | curl -i -X GET 'http://localhost:3080/v2/gns3vm/engines/vmware/vms' 2 | 3 | GET /v2/gns3vm/engines/vmware/vms HTTP/1.1 4 | 5 | 6 | 7 | HTTP/1.1 200 8 | Connection: close 9 | Content-Length: 40 10 | Content-Type: application/json 11 | Date: Wed, 08 Jan 2020 02:27:57 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/gns3vm/engines/{engine}/vms 14 | 15 | [ 16 | { 17 | "vmname": "test" 18 | } 19 | ] 20 | -------------------------------------------------------------------------------- /docs/api/examples/controller_get_projectsprojectidnodesnodeiddynamipsautoidlepc.txt: -------------------------------------------------------------------------------- 1 | curl -i -X GET 'http://localhost:3080/v2/projects/1af93462-fbbd-470e-b1c4-288404f4e724/nodes/48f6098b-476b-40c9-9a93-dc87b5675be1/dynamips/auto_idlepc' 2 | 3 | GET /v2/projects/1af93462-fbbd-470e-b1c4-288404f4e724/nodes/48f6098b-476b-40c9-9a93-dc87b5675be1/dynamips/auto_idlepc HTTP/1.1 4 | 5 | 6 | 7 | HTTP/1.1 200 8 | Connection: close 9 | Content-Length: 30 10 | Content-Type: application/json 11 | Date: Wed, 08 Jan 2020 02:28:00 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/projects/{project_id}/nodes/{node_id}/dynamips/auto_idlepc 14 | 15 | { 16 | "idlepc": "0x60606f54" 17 | } 18 | -------------------------------------------------------------------------------- /docs/api/examples/controller_get_projectsprojectidnodesnodeiddynamipsidlepcproposals.txt: -------------------------------------------------------------------------------- 1 | curl -i -X GET 'http://localhost:3080/v2/projects/38d9c2fa-3993-420c-b6c3-09d8eaef8521/nodes/0f962bb5-01b1-4050-bcae-d773073111f9/dynamips/idlepc_proposals' 2 | 3 | GET /v2/projects/38d9c2fa-3993-420c-b6c3-09d8eaef8521/nodes/0f962bb5-01b1-4050-bcae-d773073111f9/dynamips/idlepc_proposals HTTP/1.1 4 | 5 | 6 | 7 | HTTP/1.1 200 8 | Connection: close 9 | Content-Length: 38 10 | Content-Type: application/json 11 | Date: Wed, 08 Jan 2020 02:28:00 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/projects/{project_id}/nodes/{node_id}/dynamips/idlepc_proposals 14 | 15 | [ 16 | "0x60606f54", 17 | "0x33805a22" 18 | ] 19 | -------------------------------------------------------------------------------- /docs/api/examples/controller_get_projectsprojectidsnapshots.txt: -------------------------------------------------------------------------------- 1 | curl -i -X GET 'http://localhost:3080/v2/projects/39be72f3-b049-49f9-8cb4-d0c7c381f8a9/snapshots' 2 | 3 | GET /v2/projects/39be72f3-b049-49f9-8cb4-d0c7c381f8a9/snapshots HTTP/1.1 4 | 5 | 6 | 7 | HTTP/1.1 200 8 | Connection: close 9 | Content-Length: 197 10 | Content-Type: application/json 11 | Date: Wed, 08 Jan 2020 02:28:38 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/projects/{project_id}/snapshots 14 | 15 | [ 16 | { 17 | "created_at": 1578450515, 18 | "name": "test", 19 | "project_id": "39be72f3-b049-49f9-8cb4-d0c7c381f8a9", 20 | "snapshot_id": "9739f956-fb70-4424-bb44-a101f52f4e59" 21 | } 22 | ] 23 | -------------------------------------------------------------------------------- /docs/api/examples/controller_get_version.txt: -------------------------------------------------------------------------------- 1 | curl -i -X GET 'http://localhost:3080/v2/version' 2 | 3 | GET /v2/version HTTP/1.1 4 | 5 | 6 | 7 | HTTP/1.1 200 8 | Connection: close 9 | Content-Length: 49 10 | Content-Type: application/json 11 | Date: Wed, 08 Jan 2020 02:29:21 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/version 14 | 15 | { 16 | "local": true, 17 | "version": "2.2.4dev1" 18 | } 19 | -------------------------------------------------------------------------------- /docs/api/examples/controller_post_computescomputeidautoidlepc.txt: -------------------------------------------------------------------------------- 1 | curl -i -X POST 'http://localhost:3080/v2/computes/my_compute_id/auto_idlepc' -d '{"image": "test.bin", "platform": "c7200", "ram": 512}' 2 | 3 | POST /v2/computes/my_compute_id/auto_idlepc HTTP/1.1 4 | { 5 | "image": "test.bin", 6 | "platform": "c7200", 7 | "ram": 512 8 | } 9 | 10 | 11 | HTTP/1.1 200 12 | Connection: close 13 | Content-Length: 30 14 | Content-Type: application/json 15 | Date: Wed, 08 Jan 2020 02:27:56 GMT 16 | Server: Python/3.6 GNS3/2.2.4dev1 17 | X-Route: /v2/computes/{compute_id}/auto_idlepc 18 | 19 | { 20 | "idlepc": "0x606de20c" 21 | } 22 | -------------------------------------------------------------------------------- /docs/api/examples/controller_post_computescomputeidemulatoraction.txt: -------------------------------------------------------------------------------- 1 | curl -i -X POST 'http://localhost:3080/v2/computes/my_compute/qemu/img' -d '{"path": "/test"}' 2 | 3 | POST /v2/computes/my_compute/qemu/img HTTP/1.1 4 | { 5 | "path": "/test" 6 | } 7 | 8 | 9 | HTTP/1.1 200 10 | Connection: close 11 | Content-Length: 2 12 | Content-Type: application/json 13 | Date: Wed, 08 Jan 2020 02:27:55 GMT 14 | Server: Python/3.6 GNS3/2.2.4dev1 15 | X-Route: /v2/computes/{compute_id}/{emulator}/{action:.+} 16 | 17 | [] 18 | -------------------------------------------------------------------------------- /docs/api/examples/controller_post_projectsprojectidclose.txt: -------------------------------------------------------------------------------- 1 | curl -i -X POST 'http://localhost:3080/v2/projects/22a3fa42-1cdf-40e3-93fe-e710e44ad4d3/close' -d '{}' 2 | 3 | POST /v2/projects/22a3fa42-1cdf-40e3-93fe-e710e44ad4d3/close HTTP/1.1 4 | {} 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:28:01 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/projects/{project_id}/close 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/controller_post_projectsprojectidnodesreload.txt: -------------------------------------------------------------------------------- 1 | curl -i -X POST 'http://localhost:3080/v2/projects/d23a1ac6-96e6-4f80-8861-a4fd86a18629/nodes/reload' -d '{}' 2 | 3 | POST /v2/projects/d23a1ac6-96e6-4f80-8861-a4fd86a18629/nodes/reload HTTP/1.1 4 | {} 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:27:59 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/projects/{project_id}/nodes/reload 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/controller_post_projectsprojectidnodesstart.txt: -------------------------------------------------------------------------------- 1 | curl -i -X POST 'http://localhost:3080/v2/projects/c3d02c26-6c3d-4bc4-a64a-cb8ea0216c55/nodes/start' -d '{}' 2 | 3 | POST /v2/projects/c3d02c26-6c3d-4bc4-a64a-cb8ea0216c55/nodes/start HTTP/1.1 4 | {} 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:27:59 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/projects/{project_id}/nodes/start 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/controller_post_projectsprojectidnodesstop.txt: -------------------------------------------------------------------------------- 1 | curl -i -X POST 'http://localhost:3080/v2/projects/61fc7146-13f6-42cc-b138-08509e0dfbe3/nodes/stop' -d '{}' 2 | 3 | POST /v2/projects/61fc7146-13f6-42cc-b138-08509e0dfbe3/nodes/stop HTTP/1.1 4 | {} 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:27:59 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/projects/{project_id}/nodes/stop 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/controller_post_projectsprojectidnodessuspend.txt: -------------------------------------------------------------------------------- 1 | curl -i -X POST 'http://localhost:3080/v2/projects/eae9fbfe-af2c-42ba-a616-63002b635efa/nodes/suspend' -d '{}' 2 | 3 | POST /v2/projects/eae9fbfe-af2c-42ba-a616-63002b635efa/nodes/suspend HTTP/1.1 4 | {} 5 | 6 | 7 | HTTP/1.1 204 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:27:59 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/projects/{project_id}/nodes/suspend 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/controller_post_projectsprojectidsnapshots.txt: -------------------------------------------------------------------------------- 1 | curl -i -X POST 'http://localhost:3080/v2/projects/25402c96-0aeb-4b65-9bce-4b36ed725b1b/snapshots' -d '{"name": "snap1"}' 2 | 3 | POST /v2/projects/25402c96-0aeb-4b65-9bce-4b36ed725b1b/snapshots HTTP/1.1 4 | { 5 | "name": "snap1" 6 | } 7 | 8 | 9 | HTTP/1.1 201 10 | Connection: close 11 | Content-Length: 170 12 | Content-Type: application/json 13 | Date: Wed, 08 Jan 2020 02:29:18 GMT 14 | Server: Python/3.6 GNS3/2.2.4dev1 15 | X-Route: /v2/projects/{project_id}/snapshots 16 | 17 | { 18 | "created_at": 1578450535, 19 | "name": "snap1", 20 | "project_id": "25402c96-0aeb-4b65-9bce-4b36ed725b1b", 21 | "snapshot_id": "d7f7b452-0f8b-4f9d-b67e-8119fcf93898" 22 | } 23 | -------------------------------------------------------------------------------- /docs/api/examples/controller_post_shutdown.txt: -------------------------------------------------------------------------------- 1 | curl -i -X POST 'http://localhost:3080/v2/shutdown' -d '{}' 2 | 3 | POST /v2/shutdown HTTP/1.1 4 | {} 5 | 6 | 7 | HTTP/1.1 201 8 | Connection: close 9 | Content-Length: 0 10 | Content-Type: application/octet-stream 11 | Date: Wed, 08 Jan 2020 02:28:35 GMT 12 | Server: Python/3.6 GNS3/2.2.4dev1 13 | X-Route: /v2/shutdown 14 | 15 | -------------------------------------------------------------------------------- /docs/api/examples/controller_post_version.txt: -------------------------------------------------------------------------------- 1 | curl -i -X POST 'http://localhost:3080/v2/version' -d '{"version": "2.2.4dev1"}' 2 | 3 | POST /v2/version HTTP/1.1 4 | { 5 | "version": "2.2.4dev1" 6 | } 7 | 8 | 9 | HTTP/1.1 200 10 | Connection: close 11 | Content-Length: 30 12 | Content-Type: application/json 13 | Date: Wed, 08 Jan 2020 02:29:21 GMT 14 | Server: Python/3.6 GNS3/2.2.4dev1 15 | X-Route: /v2/version 16 | 17 | { 18 | "version": "2.2.4dev1" 19 | } 20 | -------------------------------------------------------------------------------- /docs/api/examples/controller_put_gns3vm.txt: -------------------------------------------------------------------------------- 1 | curl -i -X PUT 'http://localhost:3080/v2/gns3vm' -d '{"vmname": "TEST VM"}' 2 | 3 | PUT /v2/gns3vm HTTP/1.1 4 | { 5 | "vmname": "TEST VM" 6 | } 7 | 8 | 9 | HTTP/1.1 201 10 | Connection: close 11 | Content-Length: 27 12 | Content-Type: application/json 13 | Date: Wed, 08 Jan 2020 02:27:57 GMT 14 | Server: Python/3.6 GNS3/2.2.4dev1 15 | X-Route: /v2/gns3vm 16 | 17 | { 18 | "vmname": "TEST VM" 19 | } 20 | -------------------------------------------------------------------------------- /docs/api/notifications/compute.created.json: -------------------------------------------------------------------------------- 1 | { 2 | "capabilities": { 3 | "node_types": [], 4 | "version": null 5 | }, 6 | "compute_id": "my_compute", 7 | "connected": false, 8 | "cpu_usage_percent": null, 9 | "host": "localhost", 10 | "last_error": null, 11 | "memory_usage_percent": null, 12 | "name": "http://julien@localhost:84", 13 | "port": 84, 14 | "protocol": "http", 15 | "user": "julien" 16 | } -------------------------------------------------------------------------------- /docs/api/notifications/compute.deleted.json: -------------------------------------------------------------------------------- 1 | { 2 | "capabilities": { 3 | "node_types": [], 4 | "version": null 5 | }, 6 | "compute_id": "my_compute_id", 7 | "connected": false, 8 | "cpu_usage_percent": null, 9 | "host": "localhost", 10 | "last_error": null, 11 | "memory_usage_percent": null, 12 | "name": "http://julien@localhost:84", 13 | "port": 84, 14 | "protocol": "http", 15 | "user": "julien" 16 | } -------------------------------------------------------------------------------- /docs/api/notifications/compute.updated.json: -------------------------------------------------------------------------------- 1 | { 2 | "capabilities": { 3 | "node_types": [], 4 | "version": null 5 | }, 6 | "compute_id": "my_compute_id", 7 | "connected": false, 8 | "cpu_usage_percent": null, 9 | "host": "localhost", 10 | "last_error": null, 11 | "memory_usage_percent": null, 12 | "name": "http://julien@localhost:84", 13 | "port": 84, 14 | "protocol": "https", 15 | "user": "julien" 16 | } -------------------------------------------------------------------------------- /docs/api/notifications/drawing.created.json: -------------------------------------------------------------------------------- 1 | { 2 | "drawing_id": "2ebb202d-7cd6-4e0e-8448-736f6aa9c873", 3 | "locked": false, 4 | "project_id": "de7a5304-5089-4d87-b131-ab463aa9d708", 5 | "rotation": 0, 6 | "svg": "", 7 | "x": 10, 8 | "y": 20, 9 | "z": 0 10 | } -------------------------------------------------------------------------------- /docs/api/notifications/drawing.deleted.json: -------------------------------------------------------------------------------- 1 | { 2 | "drawing_id": "e2420e1d-9029-4281-ad88-e0fd24620abe", 3 | "locked": false, 4 | "project_id": "fd4df447-9859-490a-aeeb-a37f30c46754", 5 | "rotation": 0, 6 | "svg": "", 7 | "x": 0, 8 | "y": 0, 9 | "z": 2 10 | } -------------------------------------------------------------------------------- /docs/api/notifications/drawing.updated.json: -------------------------------------------------------------------------------- 1 | { 2 | "drawing_id": "fa60bbc1-49d7-4122-92a3-0dff9063058e", 3 | "locked": false, 4 | "project_id": "6d93155f-b360-4b6e-a036-277cf4f076e5", 5 | "rotation": 0, 6 | "x": 42, 7 | "y": 20, 8 | "z": 0 9 | } -------------------------------------------------------------------------------- /docs/api/notifications/ignore.json: -------------------------------------------------------------------------------- 1 | { 2 | "project_id": 42 3 | } -------------------------------------------------------------------------------- /docs/api/notifications/link.deleted.json: -------------------------------------------------------------------------------- 1 | { 2 | "capture_compute_id": null, 3 | "capture_file_name": null, 4 | "capture_file_path": null, 5 | "capturing": false, 6 | "filters": {}, 7 | "link_id": "695dacc3-7daf-493e-b31f-3370436f1d23", 8 | "link_type": "ethernet", 9 | "nodes": [], 10 | "project_id": "4589f3fc-4d98-4170-ac66-ed1262cac368", 11 | "suspend": false 12 | } -------------------------------------------------------------------------------- /docs/api/notifications/log.error.json: -------------------------------------------------------------------------------- 1 | { 2 | "message": "Permission denied on /tmp" 3 | } -------------------------------------------------------------------------------- /docs/api/notifications/log.info.json: -------------------------------------------------------------------------------- 1 | { 2 | "message": "Image uploaded" 3 | } -------------------------------------------------------------------------------- /docs/api/notifications/log.warning.json: -------------------------------------------------------------------------------- 1 | { 2 | "message": "Warning ASA 8 is not officially supported by GNS3" 3 | } -------------------------------------------------------------------------------- /docs/api/notifications/node.created.json: -------------------------------------------------------------------------------- 1 | { 2 | "a": "b" 3 | } -------------------------------------------------------------------------------- /docs/api/notifications/node.deleted.json: -------------------------------------------------------------------------------- 1 | { 2 | "a": "b" 3 | } -------------------------------------------------------------------------------- /docs/api/notifications/node.updated.json: -------------------------------------------------------------------------------- 1 | { 2 | "a": "b" 3 | } -------------------------------------------------------------------------------- /docs/api/notifications/ping.json: -------------------------------------------------------------------------------- 1 | { 2 | "compute_id": 12 3 | } -------------------------------------------------------------------------------- /docs/api/notifications/project.closed.json: -------------------------------------------------------------------------------- 1 | { 2 | "auto_close": true, 3 | "auto_open": false, 4 | "auto_start": false, 5 | "drawing_grid_size": 25, 6 | "filename": "Test.gns3", 7 | "grid_size": 75, 8 | "name": "Test", 9 | "path": "/tmp/tmpkrfbz5gp/projects/79431797-f481-40d8-ba28-f944423a8aaf", 10 | "project_id": "79431797-f481-40d8-ba28-f944423a8aaf", 11 | "scene_height": 1000, 12 | "scene_width": 2000, 13 | "show_grid": false, 14 | "show_interface_labels": false, 15 | "show_layers": false, 16 | "snap_to_grid": false, 17 | "status": "closed", 18 | "supplier": null, 19 | "variables": null, 20 | "zoom": 100 21 | } -------------------------------------------------------------------------------- /docs/api/notifications/project.created.json: -------------------------------------------------------------------------------- 1 | { 2 | "auto_close": true, 3 | "auto_open": false, 4 | "auto_start": false, 5 | "drawing_grid_size": 25, 6 | "filename": "Test.gns3", 7 | "grid_size": 75, 8 | "name": "Test", 9 | "path": "/tmp/tmprusds8mt/projects/87d4b692-52b4-4b4c-8828-13666306a68a", 10 | "project_id": "87d4b692-52b4-4b4c-8828-13666306a68a", 11 | "scene_height": 1000, 12 | "scene_width": 2000, 13 | "show_grid": false, 14 | "show_interface_labels": false, 15 | "show_layers": false, 16 | "snap_to_grid": false, 17 | "status": "opened", 18 | "supplier": null, 19 | "variables": null, 20 | "zoom": 100 21 | } -------------------------------------------------------------------------------- /docs/api/notifications/project.deleted.json: -------------------------------------------------------------------------------- 1 | { 2 | "auto_close": true, 3 | "auto_open": false, 4 | "auto_start": false, 5 | "drawing_grid_size": 25, 6 | "filename": "Test.gns3", 7 | "grid_size": 75, 8 | "name": "Test", 9 | "path": "/tmp/tmpvqf8d5mx/projects/6f01ee8c-5fe7-47a2-95ab-a0f4c0a355f9", 10 | "project_id": "6f01ee8c-5fe7-47a2-95ab-a0f4c0a355f9", 11 | "scene_height": 1000, 12 | "scene_width": 2000, 13 | "show_grid": false, 14 | "show_interface_labels": false, 15 | "show_layers": false, 16 | "snap_to_grid": false, 17 | "status": "closed", 18 | "supplier": null, 19 | "variables": null, 20 | "zoom": 100 21 | } -------------------------------------------------------------------------------- /docs/api/notifications/project.opened.json: -------------------------------------------------------------------------------- 1 | { 2 | "auto_close": true, 3 | "auto_open": false, 4 | "auto_start": false, 5 | "drawing_grid_size": 25, 6 | "filename": "test.gns3", 7 | "grid_size": 75, 8 | "name": "test", 9 | "path": "/tmp/tmp7swwxptj/projects/e5b0b37a-a74e-40a2-9adb-42908f146fba", 10 | "project_id": "e5b0b37a-a74e-40a2-9adb-42908f146fba", 11 | "scene_height": 1000, 12 | "scene_width": 2000, 13 | "show_grid": false, 14 | "show_interface_labels": false, 15 | "show_layers": false, 16 | "snap_to_grid": false, 17 | "status": "opened", 18 | "supplier": null, 19 | "variables": null, 20 | "zoom": 100 21 | } -------------------------------------------------------------------------------- /docs/api/notifications/project.updated.json: -------------------------------------------------------------------------------- 1 | { 2 | "auto_close": true, 3 | "auto_open": false, 4 | "auto_start": false, 5 | "drawing_grid_size": 25, 6 | "filename": "test.gns3", 7 | "grid_size": 75, 8 | "name": "test2", 9 | "path": "/tmp/tmp4p7e6dvr/projects/10010203-0405-0607-0809-0a0b0c0d0e0f", 10 | "project_id": "10010203-0405-0607-0809-0a0b0c0d0e0f", 11 | "scene_height": 1000, 12 | "scene_width": 2000, 13 | "show_grid": false, 14 | "show_interface_labels": false, 15 | "show_layers": false, 16 | "snap_to_grid": false, 17 | "status": "opened", 18 | "supplier": null, 19 | "variables": [ 20 | { 21 | "name": "TEST1" 22 | }, 23 | { 24 | "name": "TEST2", 25 | "value": "value1" 26 | } 27 | ], 28 | "zoom": 100 29 | } -------------------------------------------------------------------------------- /docs/api/notifications/snapshot.restored.json: -------------------------------------------------------------------------------- 1 | { 2 | "created_at": 1578450520, 3 | "name": "test", 4 | "project_id": "9aded720-678c-4fb8-849a-6f4275931e5b", 5 | "snapshot_id": "e1aa52cf-0003-4208-81a4-f45307793100" 6 | } -------------------------------------------------------------------------------- /docs/api/notifications/template.deleted.json: -------------------------------------------------------------------------------- 1 | { 2 | "base_script_file": "vpcs_base_config.txt", 3 | "builtin": false, 4 | "category": "guest", 5 | "compute_id": "local", 6 | "console_auto_start": false, 7 | "console_type": "telnet", 8 | "default_name_format": "PC{0}", 9 | "name": "VPCS_TEST", 10 | "symbol": ":/symbols/vpcs_guest.svg", 11 | "template_id": "a12e443e-7e32-432b-a256-0a4587e24bec", 12 | "template_type": "vpcs" 13 | } -------------------------------------------------------------------------------- /docs/api/notifications/template.updated.json: -------------------------------------------------------------------------------- 1 | { 2 | "base_script_file": "vpcs_base_config.txt", 3 | "builtin": false, 4 | "category": "guest", 5 | "compute_id": "local", 6 | "console_auto_start": false, 7 | "console_type": "telnet", 8 | "default_name_format": "PC{0}", 9 | "name": "VPCS_TEST_RENAMED", 10 | "symbol": ":/symbols/vpcs_guest.svg", 11 | "template_id": "7b448d0f-a756-421d-9c97-8a339e5ec6c2", 12 | "template_type": "vpcs" 13 | } -------------------------------------------------------------------------------- /docs/api/notifications/test.json: -------------------------------------------------------------------------------- 1 | {} -------------------------------------------------------------------------------- /docs/api/v2/compute/atm_switch.rst: -------------------------------------------------------------------------------- 1 | Atm switch 2 | ----------------------------- 3 | 4 | .. toctree:: 5 | :glob: 6 | :maxdepth: 2 7 | 8 | atm_switch/* 9 | -------------------------------------------------------------------------------- /docs/api/v2/compute/atm_switch/projectsprojectidatmswitchnodesnodeidduplicate.rst: -------------------------------------------------------------------------------- 1 | /v2/compute/projects/{project_id}/atm_switch/nodes/{node_id}/duplicate 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | POST /v2/compute/projects/**{project_id}**/atm_switch/nodes/**{node_id}**/duplicate 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Duplicate an atm switch instance 9 | 10 | Parameters 11 | ********** 12 | - **project_id**: Project UUID 13 | - **node_id**: Node UUID 14 | 15 | Response status codes 16 | ********************** 17 | - **201**: Instance duplicated 18 | - **404**: Instance doesn't exist 19 | 20 | -------------------------------------------------------------------------------- /docs/api/v2/compute/atm_switch/projectsprojectidatmswitchnodesnodeidstart.rst: -------------------------------------------------------------------------------- 1 | /v2/compute/projects/{project_id}/atm_switch/nodes/{node_id}/start 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | POST /v2/compute/projects/**{project_id}**/atm_switch/nodes/**{node_id}**/start 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Start an ATM switch 9 | 10 | Parameters 11 | ********** 12 | - **project_id**: Project UUID 13 | - **node_id**: Node UUID 14 | 15 | Response status codes 16 | ********************** 17 | - **204**: Instance started 18 | - **400**: Invalid request 19 | - **404**: Instance doesn't exist 20 | 21 | -------------------------------------------------------------------------------- /docs/api/v2/compute/atm_switch/projectsprojectidatmswitchnodesnodeidstop.rst: -------------------------------------------------------------------------------- 1 | /v2/compute/projects/{project_id}/atm_switch/nodes/{node_id}/stop 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | POST /v2/compute/projects/**{project_id}**/atm_switch/nodes/**{node_id}**/stop 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Stop an ATM switch 9 | 10 | Parameters 11 | ********** 12 | - **project_id**: Project UUID 13 | - **node_id**: Node UUID 14 | 15 | Response status codes 16 | ********************** 17 | - **204**: Instance stopped 18 | - **400**: Invalid request 19 | - **404**: Instance doesn't exist 20 | 21 | -------------------------------------------------------------------------------- /docs/api/v2/compute/atm_switch/projectsprojectidatmswitchnodesnodeidsuspend.rst: -------------------------------------------------------------------------------- 1 | /v2/compute/projects/{project_id}/atm_switch/nodes/{node_id}/suspend 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | POST /v2/compute/projects/**{project_id}**/atm_switch/nodes/**{node_id}**/suspend 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Suspend an ATM Relay switch (does nothing) 9 | 10 | Parameters 11 | ********** 12 | - **project_id**: Project UUID 13 | - **node_id**: Node UUID 14 | 15 | Response status codes 16 | ********************** 17 | - **204**: Instance suspended 18 | - **400**: Invalid request 19 | - **404**: Instance doesn't exist 20 | 21 | -------------------------------------------------------------------------------- /docs/api/v2/compute/capabilities.rst: -------------------------------------------------------------------------------- 1 | Capabilities 2 | ----------------------------- 3 | 4 | .. toctree:: 5 | :glob: 6 | :maxdepth: 2 7 | 8 | capabilities/* 9 | -------------------------------------------------------------------------------- /docs/api/v2/compute/cloud.rst: -------------------------------------------------------------------------------- 1 | Cloud 2 | ----------------------------- 3 | 4 | .. toctree:: 5 | :glob: 6 | :maxdepth: 2 7 | 8 | cloud/* 9 | -------------------------------------------------------------------------------- /docs/api/v2/compute/cloud/projectsprojectidcloudnodesnodeidstart.rst: -------------------------------------------------------------------------------- 1 | /v2/compute/projects/{project_id}/cloud/nodes/{node_id}/start 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | POST /v2/compute/projects/**{project_id}**/cloud/nodes/**{node_id}**/start 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Start a cloud 9 | 10 | Parameters 11 | ********** 12 | - **project_id**: Project UUID 13 | - **node_id**: Node UUID 14 | 15 | Response status codes 16 | ********************** 17 | - **204**: Instance started 18 | - **400**: Invalid request 19 | - **404**: Instance doesn't exist 20 | 21 | -------------------------------------------------------------------------------- /docs/api/v2/compute/cloud/projectsprojectidcloudnodesnodeidstop.rst: -------------------------------------------------------------------------------- 1 | /v2/compute/projects/{project_id}/cloud/nodes/{node_id}/stop 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | POST /v2/compute/projects/**{project_id}**/cloud/nodes/**{node_id}**/stop 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Stop a cloud 9 | 10 | Parameters 11 | ********** 12 | - **project_id**: Project UUID 13 | - **node_id**: Node UUID 14 | 15 | Response status codes 16 | ********************** 17 | - **204**: Instance stopped 18 | - **400**: Invalid request 19 | - **404**: Instance doesn't exist 20 | 21 | -------------------------------------------------------------------------------- /docs/api/v2/compute/cloud/projectsprojectidcloudnodesnodeidsuspend.rst: -------------------------------------------------------------------------------- 1 | /v2/compute/projects/{project_id}/cloud/nodes/{node_id}/suspend 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | POST /v2/compute/projects/**{project_id}**/cloud/nodes/**{node_id}**/suspend 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Suspend a cloud (does nothing) 9 | 10 | Parameters 11 | ********** 12 | - **project_id**: Project UUID 13 | - **node_id**: Node UUID 14 | 15 | Response status codes 16 | ********************** 17 | - **204**: Instance suspended 18 | - **400**: Invalid request 19 | - **404**: Instance doesn't exist 20 | 21 | -------------------------------------------------------------------------------- /docs/api/v2/compute/docker.rst: -------------------------------------------------------------------------------- 1 | Docker 2 | ----------------------------- 3 | 4 | .. toctree:: 5 | :glob: 6 | :maxdepth: 2 7 | 8 | docker/* 9 | -------------------------------------------------------------------------------- /docs/api/v2/compute/docker/dockerimages.rst: -------------------------------------------------------------------------------- 1 | /v2/compute/docker/images 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | GET /v2/compute/docker/images 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Get all available Docker images 9 | 10 | Response status codes 11 | ********************** 12 | - **200**: Success 13 | 14 | -------------------------------------------------------------------------------- /docs/api/v2/compute/docker/projectsprojectiddockernodesnodeidpause.rst: -------------------------------------------------------------------------------- 1 | /v2/compute/projects/{project_id}/docker/nodes/{node_id}/pause 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | POST /v2/compute/projects/**{project_id}**/docker/nodes/**{node_id}**/pause 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Pause a Docker container 9 | 10 | Parameters 11 | ********** 12 | - **project_id**: Project UUID 13 | - **node_id**: Node UUID 14 | 15 | Response status codes 16 | ********************** 17 | - **204**: Instance paused 18 | - **400**: Invalid request 19 | - **404**: Instance doesn't exist 20 | 21 | -------------------------------------------------------------------------------- /docs/api/v2/compute/docker/projectsprojectiddockernodesnodeidreload.rst: -------------------------------------------------------------------------------- 1 | /v2/compute/projects/{project_id}/docker/nodes/{node_id}/reload 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | POST /v2/compute/projects/**{project_id}**/docker/nodes/**{node_id}**/reload 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Restart a Docker container 9 | 10 | Parameters 11 | ********** 12 | - **project_id**: Project UUID 13 | - **node_id**: Node UUID 14 | 15 | Response status codes 16 | ********************** 17 | - **204**: Instance restarted 18 | - **400**: Invalid request 19 | - **404**: Instance doesn't exist 20 | 21 | -------------------------------------------------------------------------------- /docs/api/v2/compute/docker/projectsprojectiddockernodesnodeidstart.rst: -------------------------------------------------------------------------------- 1 | /v2/compute/projects/{project_id}/docker/nodes/{node_id}/start 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | POST /v2/compute/projects/**{project_id}**/docker/nodes/**{node_id}**/start 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Start a Docker container 9 | 10 | Parameters 11 | ********** 12 | - **project_id**: Project UUID 13 | - **node_id**: Node UUID 14 | 15 | Response status codes 16 | ********************** 17 | - **204**: Instance started 18 | - **400**: Invalid request 19 | - **404**: Instance doesn't exist 20 | 21 | -------------------------------------------------------------------------------- /docs/api/v2/compute/docker/projectsprojectiddockernodesnodeidstop.rst: -------------------------------------------------------------------------------- 1 | /v2/compute/projects/{project_id}/docker/nodes/{node_id}/stop 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | POST /v2/compute/projects/**{project_id}**/docker/nodes/**{node_id}**/stop 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Stop a Docker container 9 | 10 | Parameters 11 | ********** 12 | - **project_id**: Project UUID 13 | - **node_id**: Node UUID 14 | 15 | Response status codes 16 | ********************** 17 | - **204**: Instance stopped 18 | - **400**: Invalid request 19 | - **404**: Instance doesn't exist 20 | 21 | -------------------------------------------------------------------------------- /docs/api/v2/compute/docker/projectsprojectiddockernodesnodeidsuspend.rst: -------------------------------------------------------------------------------- 1 | /v2/compute/projects/{project_id}/docker/nodes/{node_id}/suspend 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | POST /v2/compute/projects/**{project_id}**/docker/nodes/**{node_id}**/suspend 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Suspend a Docker container 9 | 10 | Parameters 11 | ********** 12 | - **project_id**: Project UUID 13 | - **node_id**: Node UUID 14 | 15 | Response status codes 16 | ********************** 17 | - **204**: Instance suspended 18 | - **400**: Invalid request 19 | - **404**: Instance doesn't exist 20 | 21 | -------------------------------------------------------------------------------- /docs/api/v2/compute/docker/projectsprojectiddockernodesnodeidunpause.rst: -------------------------------------------------------------------------------- 1 | /v2/compute/projects/{project_id}/docker/nodes/{node_id}/unpause 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | POST /v2/compute/projects/**{project_id}**/docker/nodes/**{node_id}**/unpause 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Unpause a Docker container 9 | 10 | Parameters 11 | ********** 12 | - **project_id**: Project UUID 13 | - **node_id**: Node UUID 14 | 15 | Response status codes 16 | ********************** 17 | - **204**: Instance unpaused 18 | - **400**: Invalid request 19 | - **404**: Instance doesn't exist 20 | 21 | -------------------------------------------------------------------------------- /docs/api/v2/compute/dynamips_vm.rst: -------------------------------------------------------------------------------- 1 | Dynamips vm 2 | ----------------------------- 3 | 4 | .. toctree:: 5 | :glob: 6 | :maxdepth: 2 7 | 8 | dynamips_vm/* 9 | -------------------------------------------------------------------------------- /docs/api/v2/compute/dynamips_vm/dynamipsimages.rst: -------------------------------------------------------------------------------- 1 | /v2/compute/dynamips/images 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | GET /v2/compute/dynamips/images 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Retrieve the list of Dynamips IOS images 9 | 10 | Response status codes 11 | ********************** 12 | - **200**: List of Dynamips IOS images 13 | 14 | -------------------------------------------------------------------------------- /docs/api/v2/compute/dynamips_vm/projectsprojectiddynamipsnodesnodeidautoidlepc.rst: -------------------------------------------------------------------------------- 1 | /v2/compute/projects/{project_id}/dynamips/nodes/{node_id}/auto_idlepc 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | GET /v2/compute/projects/**{project_id}**/dynamips/nodes/**{node_id}**/auto_idlepc 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Retrieve the idlepc proposals 9 | 10 | Parameters 11 | ********** 12 | - **project_id**: Project UUID 13 | - **node_id**: Node UUID 14 | 15 | Response status codes 16 | ********************** 17 | - **200**: Best Idle-pc value found 18 | - **400**: Invalid request 19 | - **404**: Instance doesn't exist 20 | 21 | -------------------------------------------------------------------------------- /docs/api/v2/compute/dynamips_vm/projectsprojectiddynamipsnodesnodeidduplicate.rst: -------------------------------------------------------------------------------- 1 | /v2/compute/projects/{project_id}/dynamips/nodes/{node_id}/duplicate 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | POST /v2/compute/projects/**{project_id}**/dynamips/nodes/**{node_id}**/duplicate 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Duplicate a dynamips instance 9 | 10 | Parameters 11 | ********** 12 | - **project_id**: Project UUID 13 | - **node_id**: Node UUID 14 | 15 | Response status codes 16 | ********************** 17 | - **201**: Instance duplicated 18 | - **404**: Instance doesn't exist 19 | 20 | -------------------------------------------------------------------------------- /docs/api/v2/compute/dynamips_vm/projectsprojectiddynamipsnodesnodeididlepcproposals.rst: -------------------------------------------------------------------------------- 1 | /v2/compute/projects/{project_id}/dynamips/nodes/{node_id}/idlepc_proposals 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | GET /v2/compute/projects/**{project_id}**/dynamips/nodes/**{node_id}**/idlepc_proposals 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Retrieve the idlepc proposals 9 | 10 | Parameters 11 | ********** 12 | - **project_id**: Project UUID 13 | - **node_id**: Node UUID 14 | 15 | Response status codes 16 | ********************** 17 | - **200**: Idle-PCs retrieved 18 | - **400**: Invalid request 19 | - **404**: Instance doesn't exist 20 | 21 | -------------------------------------------------------------------------------- /docs/api/v2/compute/dynamips_vm/projectsprojectiddynamipsnodesnodeidreload.rst: -------------------------------------------------------------------------------- 1 | /v2/compute/projects/{project_id}/dynamips/nodes/{node_id}/reload 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | POST /v2/compute/projects/**{project_id}**/dynamips/nodes/**{node_id}**/reload 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Reload a Dynamips VM instance 9 | 10 | Parameters 11 | ********** 12 | - **project_id**: Project UUID 13 | - **node_id**: Node UUID 14 | 15 | Response status codes 16 | ********************** 17 | - **204**: Instance reloaded 18 | - **400**: Invalid request 19 | - **404**: Instance doesn't exist 20 | 21 | -------------------------------------------------------------------------------- /docs/api/v2/compute/dynamips_vm/projectsprojectiddynamipsnodesnodeidresume.rst: -------------------------------------------------------------------------------- 1 | /v2/compute/projects/{project_id}/dynamips/nodes/{node_id}/resume 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | POST /v2/compute/projects/**{project_id}**/dynamips/nodes/**{node_id}**/resume 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Resume a suspended Dynamips VM instance 9 | 10 | Parameters 11 | ********** 12 | - **project_id**: Project UUID 13 | - **node_id**: Node UUID 14 | 15 | Response status codes 16 | ********************** 17 | - **204**: Instance resumed 18 | - **400**: Invalid request 19 | - **404**: Instance doesn't exist 20 | 21 | -------------------------------------------------------------------------------- /docs/api/v2/compute/dynamips_vm/projectsprojectiddynamipsnodesnodeidstart.rst: -------------------------------------------------------------------------------- 1 | /v2/compute/projects/{project_id}/dynamips/nodes/{node_id}/start 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | POST /v2/compute/projects/**{project_id}**/dynamips/nodes/**{node_id}**/start 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Start a Dynamips VM instance 9 | 10 | Parameters 11 | ********** 12 | - **project_id**: Project UUID 13 | - **node_id**: Node UUID 14 | 15 | Response status codes 16 | ********************** 17 | - **204**: Instance started 18 | - **400**: Invalid request 19 | - **404**: Instance doesn't exist 20 | 21 | -------------------------------------------------------------------------------- /docs/api/v2/compute/dynamips_vm/projectsprojectiddynamipsnodesnodeidstop.rst: -------------------------------------------------------------------------------- 1 | /v2/compute/projects/{project_id}/dynamips/nodes/{node_id}/stop 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | POST /v2/compute/projects/**{project_id}**/dynamips/nodes/**{node_id}**/stop 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Stop a Dynamips VM instance 9 | 10 | Parameters 11 | ********** 12 | - **project_id**: Project UUID 13 | - **node_id**: Node UUID 14 | 15 | Response status codes 16 | ********************** 17 | - **204**: Instance stopped 18 | - **400**: Invalid request 19 | - **404**: Instance doesn't exist 20 | 21 | -------------------------------------------------------------------------------- /docs/api/v2/compute/dynamips_vm/projectsprojectiddynamipsnodesnodeidsuspend.rst: -------------------------------------------------------------------------------- 1 | /v2/compute/projects/{project_id}/dynamips/nodes/{node_id}/suspend 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | POST /v2/compute/projects/**{project_id}**/dynamips/nodes/**{node_id}**/suspend 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Suspend a Dynamips VM instance 9 | 10 | Parameters 11 | ********** 12 | - **project_id**: Project UUID 13 | - **node_id**: Node UUID 14 | 15 | Response status codes 16 | ********************** 17 | - **204**: Instance suspended 18 | - **400**: Invalid request 19 | - **404**: Instance doesn't exist 20 | 21 | -------------------------------------------------------------------------------- /docs/api/v2/compute/ethernet_hub.rst: -------------------------------------------------------------------------------- 1 | Ethernet hub 2 | ----------------------------- 3 | 4 | .. toctree:: 5 | :glob: 6 | :maxdepth: 2 7 | 8 | ethernet_hub/* 9 | -------------------------------------------------------------------------------- /docs/api/v2/compute/ethernet_hub/projectsprojectidethernethubnodesnodeidduplicate.rst: -------------------------------------------------------------------------------- 1 | /v2/compute/projects/{project_id}/ethernet_hub/nodes/{node_id}/duplicate 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | POST /v2/compute/projects/**{project_id}**/ethernet_hub/nodes/**{node_id}**/duplicate 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Duplicate an ethernet hub instance 9 | 10 | Parameters 11 | ********** 12 | - **project_id**: Project UUID 13 | - **node_id**: Node UUID 14 | 15 | Response status codes 16 | ********************** 17 | - **201**: Instance duplicated 18 | - **404**: Instance doesn't exist 19 | 20 | -------------------------------------------------------------------------------- /docs/api/v2/compute/ethernet_hub/projectsprojectidethernethubnodesnodeidstart.rst: -------------------------------------------------------------------------------- 1 | /v2/compute/projects/{project_id}/ethernet_hub/nodes/{node_id}/start 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | POST /v2/compute/projects/**{project_id}**/ethernet_hub/nodes/**{node_id}**/start 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Start an Ethernet hub 9 | 10 | Parameters 11 | ********** 12 | - **project_id**: Project UUID 13 | - **node_id**: Node UUID 14 | 15 | Response status codes 16 | ********************** 17 | - **204**: Instance started 18 | - **400**: Invalid request 19 | - **404**: Instance doesn't exist 20 | 21 | -------------------------------------------------------------------------------- /docs/api/v2/compute/ethernet_hub/projectsprojectidethernethubnodesnodeidstop.rst: -------------------------------------------------------------------------------- 1 | /v2/compute/projects/{project_id}/ethernet_hub/nodes/{node_id}/stop 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | POST /v2/compute/projects/**{project_id}**/ethernet_hub/nodes/**{node_id}**/stop 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Stop an Ethernet hub 9 | 10 | Parameters 11 | ********** 12 | - **project_id**: Project UUID 13 | - **node_id**: Node UUID 14 | 15 | Response status codes 16 | ********************** 17 | - **204**: Instance stopped 18 | - **400**: Invalid request 19 | - **404**: Instance doesn't exist 20 | 21 | -------------------------------------------------------------------------------- /docs/api/v2/compute/ethernet_switch.rst: -------------------------------------------------------------------------------- 1 | Ethernet switch 2 | ----------------------------- 3 | 4 | .. toctree:: 5 | :glob: 6 | :maxdepth: 2 7 | 8 | ethernet_switch/* 9 | -------------------------------------------------------------------------------- /docs/api/v2/compute/ethernet_switch/projectsprojectidethernetswitchnodesnodeidduplicate.rst: -------------------------------------------------------------------------------- 1 | /v2/compute/projects/{project_id}/ethernet_switch/nodes/{node_id}/duplicate 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | POST /v2/compute/projects/**{project_id}**/ethernet_switch/nodes/**{node_id}**/duplicate 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Duplicate an ethernet switch instance 9 | 10 | Parameters 11 | ********** 12 | - **project_id**: Project UUID 13 | - **node_id**: Node UUID 14 | 15 | Response status codes 16 | ********************** 17 | - **201**: Instance duplicated 18 | - **404**: Instance doesn't exist 19 | 20 | -------------------------------------------------------------------------------- /docs/api/v2/compute/ethernet_switch/projectsprojectidethernetswitchnodesnodeidstart.rst: -------------------------------------------------------------------------------- 1 | /v2/compute/projects/{project_id}/ethernet_switch/nodes/{node_id}/start 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | POST /v2/compute/projects/**{project_id}**/ethernet_switch/nodes/**{node_id}**/start 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Start an Ethernet switch 9 | 10 | Parameters 11 | ********** 12 | - **project_id**: Project UUID 13 | - **node_id**: Node UUID 14 | 15 | Response status codes 16 | ********************** 17 | - **204**: Instance started 18 | - **400**: Invalid request 19 | - **404**: Instance doesn't exist 20 | 21 | -------------------------------------------------------------------------------- /docs/api/v2/compute/ethernet_switch/projectsprojectidethernetswitchnodesnodeidstop.rst: -------------------------------------------------------------------------------- 1 | /v2/compute/projects/{project_id}/ethernet_switch/nodes/{node_id}/stop 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | POST /v2/compute/projects/**{project_id}**/ethernet_switch/nodes/**{node_id}**/stop 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Stop an Ethernet switch 9 | 10 | Parameters 11 | ********** 12 | - **project_id**: Project UUID 13 | - **node_id**: Node UUID 14 | 15 | Response status codes 16 | ********************** 17 | - **204**: Instance stopped 18 | - **400**: Invalid request 19 | - **404**: Instance doesn't exist 20 | 21 | -------------------------------------------------------------------------------- /docs/api/v2/compute/frame_relay_switch.rst: -------------------------------------------------------------------------------- 1 | Frame relay switch 2 | ----------------------------- 3 | 4 | .. toctree:: 5 | :glob: 6 | :maxdepth: 2 7 | 8 | frame_relay_switch/* 9 | -------------------------------------------------------------------------------- /docs/api/v2/compute/frame_relay_switch/projectsprojectidframerelayswitchnodesnodeidduplicate.rst: -------------------------------------------------------------------------------- 1 | /v2/compute/projects/{project_id}/frame_relay_switch/nodes/{node_id}/duplicate 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | POST /v2/compute/projects/**{project_id}**/frame_relay_switch/nodes/**{node_id}**/duplicate 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Duplicate a frame relay switch instance 9 | 10 | Parameters 11 | ********** 12 | - **project_id**: Project UUID 13 | - **node_id**: Node UUID 14 | 15 | Response status codes 16 | ********************** 17 | - **201**: Instance duplicated 18 | - **404**: Instance doesn't exist 19 | 20 | -------------------------------------------------------------------------------- /docs/api/v2/compute/frame_relay_switch/projectsprojectidframerelayswitchnodesnodeidstop.rst: -------------------------------------------------------------------------------- 1 | /v2/compute/projects/{project_id}/frame_relay_switch/nodes/{node_id}/stop 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | POST /v2/compute/projects/**{project_id}**/frame_relay_switch/nodes/**{node_id}**/stop 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Stop a Frame Relay switch 9 | 10 | Parameters 11 | ********** 12 | - **project_id**: Project UUID 13 | - **node_id**: Node UUID 14 | 15 | Response status codes 16 | ********************** 17 | - **204**: Instance stopped 18 | - **400**: Invalid request 19 | - **404**: Instance doesn't exist 20 | 21 | -------------------------------------------------------------------------------- /docs/api/v2/compute/iou.rst: -------------------------------------------------------------------------------- 1 | Iou 2 | ----------------------------- 3 | 4 | .. toctree:: 5 | :glob: 6 | :maxdepth: 2 7 | 8 | iou/* 9 | -------------------------------------------------------------------------------- /docs/api/v2/compute/iou/iouimages.rst: -------------------------------------------------------------------------------- 1 | /v2/compute/iou/images 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | GET /v2/compute/iou/images 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Retrieve the list of IOU images 9 | 10 | Response status codes 11 | ********************** 12 | - **200**: List of IOU images 13 | 14 | Sample session 15 | *************** 16 | 17 | 18 | .. literalinclude:: ../../../examples/compute_get_iouimages.txt 19 | 20 | -------------------------------------------------------------------------------- /docs/api/v2/compute/iou/projectsprojectidiounodesnodeidsuspend.rst: -------------------------------------------------------------------------------- 1 | /v2/compute/projects/{project_id}/iou/nodes/{node_id}/suspend 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | POST /v2/compute/projects/**{project_id}**/iou/nodes/**{node_id}**/suspend 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Suspend an IOU instance (does nothing) 9 | 10 | Parameters 11 | ********** 12 | - **project_id**: Project UUID 13 | - **node_id**: Node UUID 14 | 15 | Response status codes 16 | ********************** 17 | - **204**: Instance suspended 18 | - **400**: Invalid request 19 | - **404**: Instance doesn't exist 20 | 21 | -------------------------------------------------------------------------------- /docs/api/v2/compute/nat.rst: -------------------------------------------------------------------------------- 1 | Nat 2 | ----------------------------- 3 | 4 | .. toctree:: 5 | :glob: 6 | :maxdepth: 2 7 | 8 | nat/* 9 | -------------------------------------------------------------------------------- /docs/api/v2/compute/nat/projectsprojectidnatnodesnodeidstart.rst: -------------------------------------------------------------------------------- 1 | /v2/compute/projects/{project_id}/nat/nodes/{node_id}/start 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | POST /v2/compute/projects/**{project_id}**/nat/nodes/**{node_id}**/start 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Start a nat 9 | 10 | Parameters 11 | ********** 12 | - **project_id**: Project UUID 13 | - **node_id**: Node UUID 14 | 15 | Response status codes 16 | ********************** 17 | - **204**: Instance started 18 | - **400**: Invalid request 19 | - **404**: Instance doesn't exist 20 | 21 | -------------------------------------------------------------------------------- /docs/api/v2/compute/nat/projectsprojectidnatnodesnodeidstop.rst: -------------------------------------------------------------------------------- 1 | /v2/compute/projects/{project_id}/nat/nodes/{node_id}/stop 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | POST /v2/compute/projects/**{project_id}**/nat/nodes/**{node_id}**/stop 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Stop a nat 9 | 10 | Parameters 11 | ********** 12 | - **project_id**: Project UUID 13 | - **node_id**: Node UUID 14 | 15 | Response status codes 16 | ********************** 17 | - **204**: Instance stopped 18 | - **400**: Invalid request 19 | - **404**: Instance doesn't exist 20 | 21 | -------------------------------------------------------------------------------- /docs/api/v2/compute/nat/projectsprojectidnatnodesnodeidsuspend.rst: -------------------------------------------------------------------------------- 1 | /v2/compute/projects/{project_id}/nat/nodes/{node_id}/suspend 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | POST /v2/compute/projects/**{project_id}**/nat/nodes/**{node_id}**/suspend 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Suspend a nat (does nothing) 9 | 10 | Parameters 11 | ********** 12 | - **project_id**: Project UUID 13 | - **node_id**: Node UUID 14 | 15 | Response status codes 16 | ********************** 17 | - **204**: Instance suspended 18 | - **400**: Invalid request 19 | - **404**: Instance doesn't exist 20 | 21 | -------------------------------------------------------------------------------- /docs/api/v2/compute/network.rst: -------------------------------------------------------------------------------- 1 | Network 2 | ----------------------------- 3 | 4 | .. toctree:: 5 | :glob: 6 | :maxdepth: 2 7 | 8 | network/* 9 | -------------------------------------------------------------------------------- /docs/api/v2/compute/network/networkinterfaces.rst: -------------------------------------------------------------------------------- 1 | /v2/compute/network/interfaces 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | GET /v2/compute/network/interfaces 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | List all the network interfaces available on the server 9 | 10 | Response status codes 11 | ********************** 12 | - **200**: OK 13 | 14 | Sample session 15 | *************** 16 | 17 | 18 | .. literalinclude:: ../../../examples/compute_get_networkinterfaces.txt 19 | 20 | -------------------------------------------------------------------------------- /docs/api/v2/compute/network/networkports.rst: -------------------------------------------------------------------------------- 1 | /v2/compute/network/ports 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | GET /v2/compute/network/ports 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | List all the ports used by the server 9 | 10 | Response status codes 11 | ********************** 12 | - **200**: OK 13 | 14 | -------------------------------------------------------------------------------- /docs/api/v2/compute/network/projectsprojectidportsudp.rst: -------------------------------------------------------------------------------- 1 | /v2/compute/projects/{project_id}/ports/udp 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | POST /v2/compute/projects/**{project_id}**/ports/udp 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Allocate an UDP port on the server 9 | 10 | Parameters 11 | ********** 12 | - **project_id**: Project UUID 13 | 14 | Response status codes 15 | ********************** 16 | - **201**: UDP port allocated 17 | - **404**: The project doesn't exist 18 | 19 | Sample session 20 | *************** 21 | 22 | 23 | .. literalinclude:: ../../../examples/compute_post_projectsprojectidportsudp.txt 24 | 25 | -------------------------------------------------------------------------------- /docs/api/v2/compute/notification.rst: -------------------------------------------------------------------------------- 1 | Notification 2 | ----------------------------- 3 | 4 | .. toctree:: 5 | :glob: 6 | :maxdepth: 2 7 | 8 | notification/* 9 | -------------------------------------------------------------------------------- /docs/api/v2/compute/notification/notificationsws.rst: -------------------------------------------------------------------------------- 1 | /v2/compute/notifications/ws 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | GET /v2/compute/notifications/ws 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Send notifications using Websockets 9 | 10 | Response status codes 11 | ********************** 12 | - **200**: OK 13 | 14 | -------------------------------------------------------------------------------- /docs/api/v2/compute/project.rst: -------------------------------------------------------------------------------- 1 | Project 2 | ----------------------------- 3 | 4 | .. toctree:: 5 | :glob: 6 | :maxdepth: 2 7 | 8 | project/* 9 | -------------------------------------------------------------------------------- /docs/api/v2/compute/project/projectsprojectidclose.rst: -------------------------------------------------------------------------------- 1 | /v2/compute/projects/{project_id}/close 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | POST /v2/compute/projects/**{project_id}**/close 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Close a project 9 | 10 | Parameters 11 | ********** 12 | - **project_id**: Project UUID 13 | 14 | Response status codes 15 | ********************** 16 | - **204**: Project closed 17 | - **404**: The project doesn't exist 18 | 19 | Sample session 20 | *************** 21 | 22 | 23 | .. literalinclude:: ../../../examples/compute_post_projectsprojectidclose.txt 24 | 25 | -------------------------------------------------------------------------------- /docs/api/v2/compute/project/projectsprojectidfiles.rst: -------------------------------------------------------------------------------- 1 | /v2/compute/projects/{project_id}/files 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | GET /v2/compute/projects/**{project_id}**/files 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | List files of a project 9 | 10 | Parameters 11 | ********** 12 | - **project_id**: Project UUID 13 | 14 | Response status codes 15 | ********************** 16 | - **200**: Return a list of files 17 | - **404**: The project doesn't exist 18 | 19 | -------------------------------------------------------------------------------- /docs/api/v2/compute/project/projectsprojectidnotifications.rst: -------------------------------------------------------------------------------- 1 | /v2/compute/projects/{project_id}/notifications 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | GET /v2/compute/projects/**{project_id}**/notifications 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Receive notifications about the project 9 | 10 | Parameters 11 | ********** 12 | - **project_id**: Project UUID 13 | 14 | Response status codes 15 | ********************** 16 | - **200**: End of stream 17 | - **404**: The project doesn't exist 18 | 19 | -------------------------------------------------------------------------------- /docs/api/v2/compute/qemu.rst: -------------------------------------------------------------------------------- 1 | Qemu 2 | ----------------------------- 3 | 4 | .. toctree:: 5 | :glob: 6 | :maxdepth: 2 7 | 8 | qemu/* 9 | -------------------------------------------------------------------------------- /docs/api/v2/compute/qemu/qemuimages.rst: -------------------------------------------------------------------------------- 1 | /v2/compute/qemu/images 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | GET /v2/compute/qemu/images 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Retrieve the list of Qemu images 9 | 10 | Response status codes 11 | ********************** 12 | - **200**: List of Qemu images 13 | 14 | -------------------------------------------------------------------------------- /docs/api/v2/compute/qemu/qemuimgbinaries.rst: -------------------------------------------------------------------------------- 1 | /v2/compute/qemu/img-binaries 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | GET /v2/compute/qemu/img-binaries 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Get a list of available Qemu-img binaries 9 | 10 | Response status codes 11 | ********************** 12 | - **200**: Success 13 | - **400**: Invalid request 14 | - **404**: Instance doesn't exist 15 | 16 | -------------------------------------------------------------------------------- /docs/api/v2/compute/server.rst: -------------------------------------------------------------------------------- 1 | Server 2 | ----------------------------- 3 | 4 | .. toctree:: 5 | :glob: 6 | :maxdepth: 2 7 | 8 | server/* 9 | -------------------------------------------------------------------------------- /docs/api/v2/compute/server/debug.rst: -------------------------------------------------------------------------------- 1 | /v2/compute/debug 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | GET /v2/compute/debug 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Return debug information about the compute 9 | 10 | Response status codes 11 | ********************** 12 | - **201**: Written 13 | 14 | -------------------------------------------------------------------------------- /docs/api/v2/compute/traceng.rst: -------------------------------------------------------------------------------- 1 | Traceng 2 | ----------------------------- 3 | 4 | .. toctree:: 5 | :glob: 6 | :maxdepth: 2 7 | 8 | traceng/* 9 | -------------------------------------------------------------------------------- /docs/api/v2/compute/traceng/projectsprojectidtracengnodesnodeidsuspend.rst: -------------------------------------------------------------------------------- 1 | /v2/compute/projects/{project_id}/traceng/nodes/{node_id}/suspend 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | POST /v2/compute/projects/**{project_id}**/traceng/nodes/**{node_id}**/suspend 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Suspend a TraceNG instance (does nothing) 9 | 10 | Parameters 11 | ********** 12 | - **project_id**: Project UUID 13 | - **node_id**: Node UUID 14 | 15 | Response status codes 16 | ********************** 17 | - **204**: Instance suspended 18 | - **400**: Invalid request 19 | - **404**: Instance doesn't exist 20 | 21 | -------------------------------------------------------------------------------- /docs/api/v2/compute/virtualbox.rst: -------------------------------------------------------------------------------- 1 | Virtualbox 2 | ----------------------------- 3 | 4 | .. toctree:: 5 | :glob: 6 | :maxdepth: 2 7 | 8 | virtualbox/* 9 | -------------------------------------------------------------------------------- /docs/api/v2/compute/virtualbox/virtualboxvms.rst: -------------------------------------------------------------------------------- 1 | /v2/compute/virtualbox/vms 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | GET /v2/compute/virtualbox/vms 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Get all available VirtualBox VMs 9 | 10 | Response status codes 11 | ********************** 12 | - **200**: Success 13 | 14 | -------------------------------------------------------------------------------- /docs/api/v2/compute/vmware.rst: -------------------------------------------------------------------------------- 1 | Vmware 2 | ----------------------------- 3 | 4 | .. toctree:: 5 | :glob: 6 | :maxdepth: 2 7 | 8 | vmware/* 9 | -------------------------------------------------------------------------------- /docs/api/v2/compute/vmware/projectsprojectidvmwarenodesnodeidinterfacesvmnet.rst: -------------------------------------------------------------------------------- 1 | /v2/compute/projects/{project_id}/vmware/nodes/{node_id}/interfaces/vmnet 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | POST /v2/compute/projects/**{project_id}**/vmware/nodes/**{node_id}**/interfaces/vmnet 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Allocate a VMware VMnet interface on the server 9 | 10 | Parameters 11 | ********** 12 | - **project_id**: Project UUID 13 | - **node_id**: Node UUID 14 | 15 | Response status codes 16 | ********************** 17 | - **201**: VMnet interface allocated 18 | 19 | -------------------------------------------------------------------------------- /docs/api/v2/compute/vmware/vmwarevms.rst: -------------------------------------------------------------------------------- 1 | /v2/compute/vmware/vms 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | GET /v2/compute/vmware/vms 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Get all VMware VMs available 9 | 10 | Response status codes 11 | ********************** 12 | - **200**: Success 13 | 14 | -------------------------------------------------------------------------------- /docs/api/v2/compute/vpcs.rst: -------------------------------------------------------------------------------- 1 | Vpcs 2 | ----------------------------- 3 | 4 | .. toctree:: 5 | :glob: 6 | :maxdepth: 2 7 | 8 | vpcs/* 9 | -------------------------------------------------------------------------------- /docs/api/v2/compute/vpcs/projectsprojectidvpcsnodesnodeidsuspend.rst: -------------------------------------------------------------------------------- 1 | /v2/compute/projects/{project_id}/vpcs/nodes/{node_id}/suspend 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | POST /v2/compute/projects/**{project_id}**/vpcs/nodes/**{node_id}**/suspend 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Suspend a VPCS instance (does nothing) 9 | 10 | Parameters 11 | ********** 12 | - **project_id**: Project UUID 13 | - **node_id**: Node UUID 14 | 15 | Response status codes 16 | ********************** 17 | - **204**: Instance suspended 18 | - **400**: Invalid request 19 | - **404**: Instance doesn't exist 20 | 21 | -------------------------------------------------------------------------------- /docs/api/v2/controller/appliance.rst: -------------------------------------------------------------------------------- 1 | Appliance 2 | ----------------------------- 3 | 4 | .. toctree:: 5 | :glob: 6 | :maxdepth: 2 7 | 8 | appliance/* 9 | -------------------------------------------------------------------------------- /docs/api/v2/controller/appliance/appliances.rst: -------------------------------------------------------------------------------- 1 | /v2/appliances 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | GET /v2/appliances 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | List of appliances 9 | 10 | Response status codes 11 | ********************** 12 | - **200**: Appliance list returned 13 | 14 | Sample session 15 | *************** 16 | 17 | 18 | .. literalinclude:: ../../../examples/controller_get_appliances.txt 19 | 20 | -------------------------------------------------------------------------------- /docs/api/v2/controller/compute.rst: -------------------------------------------------------------------------------- 1 | Compute 2 | ----------------------------- 3 | 4 | .. toctree:: 5 | :glob: 6 | :maxdepth: 2 7 | 8 | compute/* 9 | -------------------------------------------------------------------------------- /docs/api/v2/controller/compute/sidautoidlepc.rst: -------------------------------------------------------------------------------- 1 | /v2/computes/{compute_id}/auto_idlepc 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | POST /v2/computes/**{compute_id}**/auto_idlepc 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Compute IDLE PC value 9 | 10 | Parameters 11 | ********** 12 | - **compute_id**: Compute UUID 13 | 14 | Response status codes 15 | ********************** 16 | - **200**: Idle PC computed 17 | 18 | -------------------------------------------------------------------------------- /docs/api/v2/controller/compute/sidemulatorimages.rst: -------------------------------------------------------------------------------- 1 | /v2/computes/{compute_id}/{emulator}/images 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | GET /v2/computes/**{compute_id}**/**{emulator}**/images 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Return the list of images available on compute for this emulator type 9 | 10 | Parameters 11 | ********** 12 | - **compute_id**: Compute UUID 13 | - **emulator**: Emulator type 14 | 15 | Response status codes 16 | ********************** 17 | - **200**: OK 18 | - **404**: Instance doesn't exist 19 | 20 | -------------------------------------------------------------------------------- /docs/api/v2/controller/drawing.rst: -------------------------------------------------------------------------------- 1 | Drawing 2 | ----------------------------- 3 | 4 | .. toctree:: 5 | :glob: 6 | :maxdepth: 2 7 | 8 | drawing/* 9 | -------------------------------------------------------------------------------- /docs/api/v2/controller/gns3_vm.rst: -------------------------------------------------------------------------------- 1 | Gns3 vm 2 | ----------------------------- 3 | 4 | .. toctree:: 5 | :glob: 6 | :maxdepth: 2 7 | 8 | gns3_vm/* 9 | -------------------------------------------------------------------------------- /docs/api/v2/controller/gns3_vm/gns3vmengines.rst: -------------------------------------------------------------------------------- 1 | /v2/gns3vm/engines 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | GET /v2/gns3vm/engines 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Return the list of engines supported for the GNS3VM 9 | 10 | Response status codes 11 | ********************** 12 | - **200**: OK 13 | 14 | Sample session 15 | *************** 16 | 17 | 18 | .. literalinclude:: ../../../examples/controller_get_gns3vmengines.txt 19 | 20 | -------------------------------------------------------------------------------- /docs/api/v2/controller/gns3_vm/gns3vmenginesenginevms.rst: -------------------------------------------------------------------------------- 1 | /v2/gns3vm/engines/{engine}/vms 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | GET /v2/gns3vm/engines/**{engine}**/vms 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Get all the available VMs for a specific virtualization engine 9 | 10 | Parameters 11 | ********** 12 | - **engine**: Virtualization engine name 13 | 14 | Response status codes 15 | ********************** 16 | - **200**: Success 17 | - **400**: Invalid request 18 | 19 | Sample session 20 | *************** 21 | 22 | 23 | .. literalinclude:: ../../../examples/controller_get_gns3vmenginesenginevms.txt 24 | 25 | -------------------------------------------------------------------------------- /docs/api/v2/controller/link.rst: -------------------------------------------------------------------------------- 1 | Link 2 | ----------------------------- 3 | 4 | .. toctree:: 5 | :glob: 6 | :maxdepth: 2 7 | 8 | link/* 9 | -------------------------------------------------------------------------------- /docs/api/v2/controller/link/projectsprojectidlinkslinkidpcap.rst: -------------------------------------------------------------------------------- 1 | /v2/projects/{project_id}/links/{link_id}/pcap 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | GET /v2/projects/**{project_id}**/links/**{link_id}**/pcap 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Stream the PCAP capture file from compute 9 | 10 | Parameters 11 | ********** 12 | - **project_id**: Project UUID 13 | - **link_id**: Link UUID 14 | 15 | Response status codes 16 | ********************** 17 | - **200**: File returned 18 | - **403**: Permission denied 19 | - **404**: The file doesn't exist 20 | 21 | -------------------------------------------------------------------------------- /docs/api/v2/controller/node.rst: -------------------------------------------------------------------------------- 1 | Node 2 | ----------------------------- 3 | 4 | .. toctree:: 5 | :glob: 6 | :maxdepth: 2 7 | 8 | node/* 9 | -------------------------------------------------------------------------------- /docs/api/v2/controller/node/projectsprojectidnodesnodeidlinks.rst: -------------------------------------------------------------------------------- 1 | /v2/projects/{project_id}/nodes/{node_id}/links 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | GET /v2/projects/**{project_id}**/nodes/**{node_id}**/links 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Return all the links connected to this node 9 | 10 | Parameters 11 | ********** 12 | - **project_id**: Project UUID 13 | - **node_id**: Node UUID 14 | 15 | Response status codes 16 | ********************** 17 | - **200**: Links returned 18 | - **400**: Invalid request 19 | - **404**: Instance doesn't exist 20 | 21 | -------------------------------------------------------------------------------- /docs/api/v2/controller/node/projectsprojectidnodesnodeidresizedisk.rst: -------------------------------------------------------------------------------- 1 | /v2/projects/{project_id}/nodes/{node_id}/resize_disk 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | POST /v2/projects/**{project_id}**/nodes/**{node_id}**/resize_disk 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Reload a node instance 9 | 10 | Parameters 11 | ********** 12 | - **project_id**: Project UUID 13 | - **node_id**: Node UUID 14 | 15 | Response status codes 16 | ********************** 17 | - **201**: Disk image resized 18 | - **400**: Invalid request 19 | - **404**: Instance doesn't exist 20 | 21 | -------------------------------------------------------------------------------- /docs/api/v2/controller/notification.rst: -------------------------------------------------------------------------------- 1 | Notification 2 | ----------------------------- 3 | 4 | .. toctree:: 5 | :glob: 6 | :maxdepth: 2 7 | 8 | notification/* 9 | -------------------------------------------------------------------------------- /docs/api/v2/controller/notification/notifications.rst: -------------------------------------------------------------------------------- 1 | /v2/notifications 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | GET /v2/notifications 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Receive notifications about the controller 9 | 10 | Response status codes 11 | ********************** 12 | - **200**: End of stream 13 | 14 | -------------------------------------------------------------------------------- /docs/api/v2/controller/notification/notificationsws.rst: -------------------------------------------------------------------------------- 1 | /v2/notifications/ws 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | GET /v2/notifications/ws 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Receive notifications about controller from a Websocket 9 | 10 | Response status codes 11 | ********************** 12 | - **200**: End of stream 13 | 14 | -------------------------------------------------------------------------------- /docs/api/v2/controller/project.rst: -------------------------------------------------------------------------------- 1 | Project 2 | ----------------------------- 3 | 4 | .. toctree:: 5 | :glob: 6 | :maxdepth: 2 7 | 8 | project/* 9 | -------------------------------------------------------------------------------- /docs/api/v2/controller/project/projectsprojectidexport.rst: -------------------------------------------------------------------------------- 1 | /v2/projects/{project_id}/export 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | GET /v2/projects/**{project_id}**/export 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Export a project as a portable archive 9 | 10 | Parameters 11 | ********** 12 | - **project_id**: Project UUID 13 | 14 | Response status codes 15 | ********************** 16 | - **200**: File returned 17 | - **404**: The project doesn't exist 18 | 19 | -------------------------------------------------------------------------------- /docs/api/v2/controller/project/projectsprojectidnotifications.rst: -------------------------------------------------------------------------------- 1 | /v2/projects/{project_id}/notifications 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | GET /v2/projects/**{project_id}**/notifications 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Receive notifications about projects 9 | 10 | Parameters 11 | ********** 12 | - **project_id**: Project UUID 13 | 14 | Response status codes 15 | ********************** 16 | - **200**: End of stream 17 | - **404**: The project doesn't exist 18 | 19 | -------------------------------------------------------------------------------- /docs/api/v2/controller/project/projectsprojectidnotificationsws.rst: -------------------------------------------------------------------------------- 1 | /v2/projects/{project_id}/notifications/ws 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | GET /v2/projects/**{project_id}**/notifications/ws 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Receive notifications about projects from a Websocket 9 | 10 | Parameters 11 | ********** 12 | - **project_id**: Project UUID 13 | 14 | Response status codes 15 | ********************** 16 | - **200**: End of stream 17 | - **404**: The project doesn't exist 18 | 19 | -------------------------------------------------------------------------------- /docs/api/v2/controller/project/projectsprojectidstats.rst: -------------------------------------------------------------------------------- 1 | /v2/projects/{project_id}/stats 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | GET /v2/projects/**{project_id}**/stats 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Get a project statistics 9 | 10 | Parameters 11 | ********** 12 | - **project_id**: Project UUID 13 | 14 | Response status codes 15 | ********************** 16 | - **200**: Project statistics returned 17 | - **404**: The project doesn't exist 18 | 19 | -------------------------------------------------------------------------------- /docs/api/v2/controller/server.rst: -------------------------------------------------------------------------------- 1 | Server 2 | ----------------------------- 3 | 4 | .. toctree:: 5 | :glob: 6 | :maxdepth: 2 7 | 8 | server/* 9 | -------------------------------------------------------------------------------- /docs/api/v2/controller/server/debug.rst: -------------------------------------------------------------------------------- 1 | /v2/debug 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | POST /v2/debug 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Dump debug information to disk (debug directory in config directory). Work only for local server 9 | 10 | Response status codes 11 | ********************** 12 | - **201**: Written 13 | 14 | -------------------------------------------------------------------------------- /docs/api/v2/controller/server/shutdown.rst: -------------------------------------------------------------------------------- 1 | /v2/shutdown 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | POST /v2/shutdown 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | Shutdown the local server 9 | 10 | Response status codes 11 | ********************** 12 | - **201**: Server is shutting down 13 | - **403**: Server shutdown refused 14 | 15 | Sample session 16 | *************** 17 | 18 | 19 | .. literalinclude:: ../../../examples/controller_post_shutdown.txt 20 | 21 | -------------------------------------------------------------------------------- /docs/api/v2/controller/snapshot.rst: -------------------------------------------------------------------------------- 1 | Snapshot 2 | ----------------------------- 3 | 4 | .. toctree:: 5 | :glob: 6 | :maxdepth: 2 7 | 8 | snapshot/* 9 | -------------------------------------------------------------------------------- /docs/api/v2/controller/symbol.rst: -------------------------------------------------------------------------------- 1 | Symbol 2 | ----------------------------- 3 | 4 | .. toctree:: 5 | :glob: 6 | :maxdepth: 2 7 | 8 | symbol/* 9 | -------------------------------------------------------------------------------- /docs/api/v2/controller/symbol/defaultsymbols.rst: -------------------------------------------------------------------------------- 1 | /v2/default_symbols 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | GET /v2/default_symbols 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | List of default symbols 9 | 10 | Response status codes 11 | ********************** 12 | - **200**: Default symbols list returned 13 | 14 | -------------------------------------------------------------------------------- /docs/api/v2/controller/symbol/symbols.rst: -------------------------------------------------------------------------------- 1 | /v2/symbols 2 | ------------------------------------------------------------------------------------------------------------------------------------------ 3 | 4 | .. contents:: 5 | 6 | GET /v2/symbols 7 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 8 | List of symbols 9 | 10 | Response status codes 11 | ********************** 12 | - **200**: Symbols list returned 13 | 14 | Sample session 15 | *************** 16 | 17 | 18 | .. literalinclude:: ../../../examples/controller_get_symbols.txt 19 | 20 | -------------------------------------------------------------------------------- /docs/api/v2/controller/template.rst: -------------------------------------------------------------------------------- 1 | Template 2 | ----------------------------- 3 | 4 | .. toctree:: 5 | :glob: 6 | :maxdepth: 2 7 | 8 | template/* 9 | -------------------------------------------------------------------------------- /docs/development.rst: -------------------------------------------------------------------------------- 1 | Development 2 | ############ 3 | 4 | Code convention 5 | =============== 6 | 7 | Respect all the PEP8 convention except the max line length rule. 8 | 9 | Source code 10 | =========== 11 | 12 | Source code is available on Github under the GPL V3 licence: 13 | https://github.com/GNS3/ 14 | 15 | The GNS3 server: https://github.com/GNS3/gns3-server 16 | The GNS3 user interface: https://github.com/GNS3/gns3-gui 17 | 18 | 19 | Documentation 20 | ============== 21 | 22 | The documentation can be found in the gns3-server project. 23 | 24 | Build doc 25 | ---------- 26 | 27 | .. code-block:: bash 28 | 29 | ./scripts/documentation.sh 30 | 31 | The output is available inside *docs/_build/html* 32 | 33 | Tests 34 | ====== 35 | 36 | Run tests 37 | ---------- 38 | 39 | .. code-block:: bash 40 | 41 | py.test -v 42 | -------------------------------------------------------------------------------- /docs/index.rst: -------------------------------------------------------------------------------- 1 | Welcome to API documentation! 2 | ====================================== 3 | 4 | .. WARNING:: 5 | This documentation is intended for developers. The user documentation is 6 | available on https://gns3.com/ 7 | 8 | 9 | This documentation describe the GNS3 API and provide information for GNS3 developers. 10 | 11 | For a quick demo on how to use the API read: :doc:`curl` 12 | 13 | API 14 | ---- 15 | .. toctree:: 16 | :maxdepth: 2 17 | 18 | general 19 | glossary 20 | curl 21 | controller_notifications 22 | project_notifications 23 | position 24 | endpoints 25 | 26 | GNS3 development 27 | ---------------- 28 | .. toctree:: 29 | development 30 | file_format 31 | 32 | -------------------------------------------------------------------------------- /docs/position.rst: -------------------------------------------------------------------------------- 1 | Positions 2 | ========= 3 | 4 | A project object contains the scene_height and scene_width properties. This defines the 5 | size of the drawing area in px. 6 | 7 | The position of the nodes are relative with 0,0 as center of the area. 8 | -------------------------------------------------------------------------------- /gns3server.bat: -------------------------------------------------------------------------------- 1 | SET PYTHONPATH=%~dp0 2 | python.exe %~dp0/gns3server/main.py --debug --local 3 | -------------------------------------------------------------------------------- /gns3server/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | # 3 | # Copyright (C) 2015 GNS3 Technologies Inc. 4 | # 5 | # This program is free software: you can redistribute it and/or modify 6 | # it under the terms of the GNU General Public License as published by 7 | # the Free Software Foundation, either version 3 of the License, or 8 | # (at your option) any later version. 9 | # 10 | # This program is distributed in the hope that it will be useful, 11 | # but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | # GNU General Public License for more details. 14 | # 15 | # You should have received a copy of the GNU General Public License 16 | # along with this program. If not, see . 17 | 18 | from .version import __version__ 19 | -------------------------------------------------------------------------------- /gns3server/__main__.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | # 3 | # Copyright (C) 2015 GNS3 Technologies Inc. 4 | # 5 | # This program is free software: you can redistribute it and/or modify 6 | # it under the terms of the GNU General Public License as published by 7 | # the Free Software Foundation, either version 3 of the License, or 8 | # (at your option) any later version. 9 | # 10 | # This program is distributed in the hope that it will be useful, 11 | # but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | # GNU General Public License for more details. 14 | # 15 | # You should have received a copy of the GNU General Public License 16 | # along with this program. If not, see . 17 | 18 | from .main import main 19 | 20 | main() 21 | -------------------------------------------------------------------------------- /gns3server/appliances/chromium.gns3a: -------------------------------------------------------------------------------- 1 | { 2 | "appliance_id": "c95b160b-4515-4cc9-81cc-92ac063dd250", 3 | "name": "Chromium", 4 | "category": "guest", 5 | "description": "The chromium browser", 6 | "vendor_name": "Chromium", 7 | "vendor_url": "https://www.chromium.org/", 8 | "vendor_logo_url": "https://raw.githubusercontent.com/GNS3/gns3-registry/master/vendor-logos/Chromium.jpg", 9 | "product_name": "Chromium", 10 | "registry_version": 4, 11 | "status": "stable", 12 | "maintainer": "GNS3 Team", 13 | "maintainer_email": "developers@gns3.net", 14 | "docker": { 15 | "adapters": 1, 16 | "image": "gns3/chromium:latest", 17 | "console_type": "vnc" 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /gns3server/appliances/endhost.gns3a: -------------------------------------------------------------------------------- 1 | { 2 | "appliance_id": "f59a5cf6-baaa-45a6-9685-989a2c3f3f4a", 3 | "name": "endhost", 4 | "category": "guest", 5 | "description": "General purpose alpine-based endhost", 6 | "vendor_name": "endhost", 7 | "vendor_url": "https://www.alpinelinux.org", 8 | "product_name": "endhost", 9 | "registry_version": 4, 10 | "status": "experimental", 11 | "maintainer": "GNS3 Team", 12 | "maintainer_email": "developers@gns3.net", 13 | "docker": { 14 | "adapters": 1, 15 | "image": "gns3/endhost:latest" 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /gns3server/appliances/haproxy.gns3a: -------------------------------------------------------------------------------- 1 | { 2 | "appliance_id": "79df483d-8cc9-48de-85ea-e6cb45b93e2a", 3 | "name": "haproxy", 4 | "category": "guest", 5 | "description": "haproxy alpine container", 6 | "vendor_name": "haproxy", 7 | "vendor_url": "https://www.haproxy.org", 8 | "product_name": "haproxy", 9 | "registry_version": 4, 10 | "status": "experimental", 11 | "maintainer": "GNS3 Team", 12 | "maintainer_email": "developers@gns3.net", 13 | "usage": "Modify /etc/haproxy/haproxy.cfg to suit your needs.", 14 | "docker": { 15 | "adapters": 1, 16 | "image": "gns3/haproxy:latest" 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /gns3server/appliances/ipterm.gns3a: -------------------------------------------------------------------------------- 1 | { 2 | "appliance_id": "7f58b246-c4f4-4db2-b4e6-f6180bf235ff", 3 | "name": "ipterm", 4 | "category": "guest", 5 | "description": "ipterm is a debian based networking toolbox.\nIt contains the following utilities: net-tools, iproute2, ping, traceroute, curl, host, iperf3, mtr, socat, ssh client, tcpdump and the multicast testing tools msend/mreceive.", 6 | "vendor_name": "ipterm", 7 | "vendor_url": "https://www.debian.org", 8 | "product_name": "ipterm", 9 | "registry_version": 4, 10 | "status": "stable", 11 | "maintainer": "Bernhard Ehlers", 12 | "maintainer_email": "dev-ehlers@mailbox.org", 13 | "usage": "The /root directory is persistent.", 14 | "symbol": "linux_guest.svg", 15 | "docker": { 16 | "adapters": 1, 17 | "image": "gns3/ipterm:latest" 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /gns3server/appliances/mcjoin.gns3a: -------------------------------------------------------------------------------- 1 | { 2 | "appliance_id": "c80f3423-20bf-4a12-b8fd-3eb2c747eabb", 3 | "name": "mcjoin", 4 | "category": "guest", 5 | "description": "mcjoin is a very simple and easy-to-use tool to test IPv4 and IPv6 multicast.", 6 | "vendor_name": "Joachim Nilsson", 7 | "vendor_url": "https://github.com/troglobit", 8 | "product_name": "mcjoin", 9 | "registry_version": 4, 10 | "status": "stable", 11 | "maintainer": "GNS3 Team", 12 | "maintainer_email": "developers@gns3.net", 13 | "symbol": "linux_guest.svg", 14 | "docker": { 15 | "adapters": 1, 16 | "image": "troglobit/mcjoin:latest", 17 | "console_type": "telnet" 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /gns3server/appliances/mikrotik-winbox.gns3a: -------------------------------------------------------------------------------- 1 | { 2 | "appliance_id": "b770027f-1822-4ab6-b2f9-73336ca0983d", 3 | "name": "Mikrotik WinBox", 4 | "category": "guest", 5 | "description": "Mikrotik's WinBox router management software for GNS3", 6 | "vendor_name": "Mikrotik", 7 | "vendor_url": "https://mikrotik.com", 8 | "product_name": "Mikrotik WinBox", 9 | "registry_version": 4, 10 | "status": "stable", 11 | "availability": "free", 12 | "maintainer": "Alexander Horner", 13 | "maintainer_email": "contact@alexhorner.cc", 14 | "docker": { 15 | "adapters": 1, 16 | "image": "gns3/mikrotik-winbox", 17 | "console_type": "vnc" 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /gns3server/appliances/network_automation.gns3a: -------------------------------------------------------------------------------- 1 | { 2 | "appliance_id": "a61b580a-99c5-4d77-bc25-61f4c60d214f", 3 | "name": "Network Automation", 4 | "category": "guest", 5 | "description": "This container provides the popular tools used for network automation: Netmiko, NAPALM, Pyntc, and Ansible.", 6 | "vendor_name": "GNS3", 7 | "vendor_url": "http://www.gns3.com", 8 | "product_name": "Network Automation", 9 | "registry_version": 4, 10 | "status": "stable", 11 | "maintainer": "GNS3 Team", 12 | "maintainer_email": "developers@gns3.net", 13 | "symbol": "linux_guest.svg", 14 | "docker": { 15 | "adapters": 1, 16 | "image": "adosztal/network_automation:latest", 17 | "console_type": "telnet" 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /gns3server/appliances/ostinato-wireshark.gns3a: -------------------------------------------------------------------------------- 1 | { 2 | "appliance_id": "8377ddaa-ecd1-4cde-a510-3ef2ddc48f11", 3 | "name": "Ostinato Wireshark", 4 | "category": "guest", 5 | "description": "Alpine Linux with Ostinato Network Traffic Generator and Wireshark Network Traffic Analyser pre-installed.", 6 | "vendor_name": "Ostinato/Wireshark", 7 | "vendor_url": "https://ostinato.org/", 8 | "documentation_url": "https://ostinato.org/docs/", 9 | "product_name": "Ostinato Wireshark", 10 | "registry_version": 4, 11 | "status": "stable", 12 | "availability": "free", 13 | "maintainer": "Mark Young", 14 | "maintainer_email": "miyoung999@hotmail.com", 15 | "docker": { 16 | "adapters": 2, 17 | "image": "gns3/ostinato-wireshark:latest", 18 | "console_type": "vnc" 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /gns3server/appliances/ovs-snmp.gns3a: -------------------------------------------------------------------------------- 1 | { 2 | "appliance_id": "bfafb392-bb2b-4078-8817-29c55273fff6", 3 | "name": "Open vSwitch with SNMP", 4 | "category": "multilayer_switch", 5 | "description": "Customized Open vSwtich with SNMP support", 6 | "vendor_name": "Open vSwitch", 7 | "vendor_url": "http://openvswitch.org/", 8 | "product_name": "Open vSwitch", 9 | "registry_version": 4, 10 | "status": "stable", 11 | "maintainer": "GNS3 Team", 12 | "maintainer_email": "developers@gns3.net", 13 | "usage": "", 14 | "docker": { 15 | "adapters": 8, 16 | "image": "gns3/ovs-snmp:latest" 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /gns3server/appliances/python-go-perl-php.gns3a: -------------------------------------------------------------------------------- 1 | { 2 | "appliance_id": "47ca3e1f-5a35-4631-b75d-010bd9452ca8", 3 | "name": "Python, Go, Perl, PHP", 4 | "category": "guest", 5 | "description": "Container with integrated Python 2 & 3, Perl, PHP, and PHP7.0 interpreters, and a Go compiler.", 6 | "vendor_name": "GNS3 Team", 7 | "vendor_url": "https://www.gns3.com", 8 | "product_name": "Python, Go, Perl, PHP", 9 | "registry_version": 4, 10 | "status": "stable", 11 | "maintainer": "GNS3 Team", 12 | "maintainer_email": "developers@gns3.net", 13 | "docker": { 14 | "adapters": 1, 15 | "image": "adosztal/python-go-perl-php:latest" 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /gns3server/compute/adapters/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/compute/adapters/__init__.py -------------------------------------------------------------------------------- /gns3server/compute/builtin/nodes/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/compute/builtin/nodes/__init__.py -------------------------------------------------------------------------------- /gns3server/compute/docker/resources/bin/udhcpc: -------------------------------------------------------------------------------- 1 | #!/gns3/bin/busybox sh 2 | 3 | SCRIPT="/gns3/etc/udhcpc/default.script" 4 | 5 | if [ "$(cat "/proc/$PPID/comm" 2>/dev/null)" = ifup ]; then 6 | # remove "-n" argument 7 | for arg do 8 | shift 9 | [ "$arg" = "-n" ] || set -- "$@" "$arg" 10 | done 11 | # add default parameters 12 | set -- -t 3 -T 2 -A 1 -b "$@" 13 | fi 14 | 15 | exec /tmp/gns3/bin/udhcpc -s "$SCRIPT" "$@" 16 | -------------------------------------------------------------------------------- /gns3server/compute/docker/resources/run-cmd.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # run docker startup, first arg is new PATH, remainder is command 3 | 4 | PATH="$1" 5 | shift 6 | exec "$@" 7 | -------------------------------------------------------------------------------- /gns3server/compute/dynamips/adapters/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/compute/dynamips/adapters/__init__.py -------------------------------------------------------------------------------- /gns3server/compute/dynamips/nios/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/compute/dynamips/nios/__init__.py -------------------------------------------------------------------------------- /gns3server/compute/dynamips/nodes/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/compute/dynamips/nodes/__init__.py -------------------------------------------------------------------------------- /gns3server/compute/iou/utils/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/compute/iou/utils/__init__.py -------------------------------------------------------------------------------- /gns3server/compute/nios/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/compute/nios/__init__.py -------------------------------------------------------------------------------- /gns3server/compute/qemu/resources/config.img.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/compute/qemu/resources/config.img.zip -------------------------------------------------------------------------------- /gns3server/compute/qemu/utils/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/compute/qemu/utils/__init__.py -------------------------------------------------------------------------------- /gns3server/configs/ios_base_startup-config.txt: -------------------------------------------------------------------------------- 1 | ! 2 | service timestamps debug datetime msec 3 | service timestamps log datetime msec 4 | no service password-encryption 5 | ! 6 | hostname %h 7 | ! 8 | ip cef 9 | no ip domain-lookup 10 | no ip icmp rate-limit unreachable 11 | ip tcp synwait 5 12 | no cdp log mismatch duplex 13 | ! 14 | line con 0 15 | exec-timeout 0 0 16 | logging synchronous 17 | privilege level 15 18 | no login 19 | line aux 0 20 | exec-timeout 0 0 21 | logging synchronous 22 | privilege level 15 23 | no login 24 | ! 25 | ! 26 | end 27 | -------------------------------------------------------------------------------- /gns3server/configs/vpcs_base_config.txt: -------------------------------------------------------------------------------- 1 | # This the configuration for %h 2 | # 3 | # Uncomment the following line to enable DHCP 4 | # dhcp 5 | # or the line below to manually setup an IP address and subnet mask 6 | # ip 192.168.1.1 255.0.0.0 7 | # 8 | 9 | set pcname %h 10 | -------------------------------------------------------------------------------- /gns3server/controller/ports/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/controller/ports/__init__.py -------------------------------------------------------------------------------- /gns3server/disks/OVMF_CODE.fd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/disks/OVMF_CODE.fd -------------------------------------------------------------------------------- /gns3server/disks/OVMF_CODE_4M.fd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/disks/OVMF_CODE_4M.fd -------------------------------------------------------------------------------- /gns3server/disks/OVMF_VARS.fd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/disks/OVMF_VARS.fd -------------------------------------------------------------------------------- /gns3server/disks/OVMF_VARS_4M.fd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/disks/OVMF_VARS_4M.fd -------------------------------------------------------------------------------- /gns3server/disks/empty100G.qcow2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/disks/empty100G.qcow2 -------------------------------------------------------------------------------- /gns3server/disks/empty10G.qcow2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/disks/empty10G.qcow2 -------------------------------------------------------------------------------- /gns3server/disks/empty150G.qcow2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/disks/empty150G.qcow2 -------------------------------------------------------------------------------- /gns3server/disks/empty1T.qcow2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/disks/empty1T.qcow2 -------------------------------------------------------------------------------- /gns3server/disks/empty200G.qcow2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/disks/empty200G.qcow2 -------------------------------------------------------------------------------- /gns3server/disks/empty20G.qcow2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/disks/empty20G.qcow2 -------------------------------------------------------------------------------- /gns3server/disks/empty250G.qcow2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/disks/empty250G.qcow2 -------------------------------------------------------------------------------- /gns3server/disks/empty30G.qcow2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/disks/empty30G.qcow2 -------------------------------------------------------------------------------- /gns3server/disks/empty40G.qcow2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/disks/empty40G.qcow2 -------------------------------------------------------------------------------- /gns3server/disks/empty500G.qcow2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/disks/empty500G.qcow2 -------------------------------------------------------------------------------- /gns3server/disks/empty50G.qcow2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/disks/empty50G.qcow2 -------------------------------------------------------------------------------- /gns3server/disks/empty8G.qcow2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/disks/empty8G.qcow2 -------------------------------------------------------------------------------- /gns3server/handlers/api/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/handlers/api/__init__.py -------------------------------------------------------------------------------- /gns3server/schemas/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/schemas/__init__.py -------------------------------------------------------------------------------- /gns3server/static/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/.gitkeep -------------------------------------------------------------------------------- /gns3server/static/web-ui/MaterialIcons-Regular.4674f8ded773cb03e824.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/MaterialIcons-Regular.4674f8ded773cb03e824.eot -------------------------------------------------------------------------------- /gns3server/static/web-ui/MaterialIcons-Regular.5e7382c63da0098d634a.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/MaterialIcons-Regular.5e7382c63da0098d634a.ttf -------------------------------------------------------------------------------- /gns3server/static/web-ui/MaterialIcons-Regular.83bebaf37c09c7e1c3ee.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/MaterialIcons-Regular.83bebaf37c09c7e1c3ee.woff -------------------------------------------------------------------------------- /gns3server/static/web-ui/MaterialIcons-Regular.cff684e59ffb052d72cb.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/MaterialIcons-Regular.cff684e59ffb052d72cb.woff2 -------------------------------------------------------------------------------- /gns3server/static/web-ui/NotoSans-Bold.364158e7b3016f83790a.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/NotoSans-Bold.364158e7b3016f83790a.woff -------------------------------------------------------------------------------- /gns3server/static/web-ui/NotoSans-Bold.3ea2282022a16bb2827b.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/NotoSans-Bold.3ea2282022a16bb2827b.woff2 -------------------------------------------------------------------------------- /gns3server/static/web-ui/NotoSans-Bold.82b1a58ddf26951345dc.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/NotoSans-Bold.82b1a58ddf26951345dc.ttf -------------------------------------------------------------------------------- /gns3server/static/web-ui/NotoSans-Bold.fe2c3263802c4469728b.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/NotoSans-Bold.fe2c3263802c4469728b.eot -------------------------------------------------------------------------------- /gns3server/static/web-ui/NotoSans-BoldItalic.9e49c91c40231a024afb.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/NotoSans-BoldItalic.9e49c91c40231a024afb.ttf -------------------------------------------------------------------------------- /gns3server/static/web-ui/NotoSans-BoldItalic.b40d78b2f9e2490108d0.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/NotoSans-BoldItalic.b40d78b2f9e2490108d0.eot -------------------------------------------------------------------------------- /gns3server/static/web-ui/NotoSans-BoldItalic.ed8d2295c0b2e0a854d8.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/NotoSans-BoldItalic.ed8d2295c0b2e0a854d8.woff -------------------------------------------------------------------------------- /gns3server/static/web-ui/NotoSans-BoldItalic.f2639d17cfb5c6e74edd.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/NotoSans-BoldItalic.f2639d17cfb5c6e74edd.woff2 -------------------------------------------------------------------------------- /gns3server/static/web-ui/NotoSans-Italic.08690ed789a5532ed7be.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/NotoSans-Italic.08690ed789a5532ed7be.ttf -------------------------------------------------------------------------------- /gns3server/static/web-ui/NotoSans-Italic.1506cb93f574152bda3d.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/NotoSans-Italic.1506cb93f574152bda3d.eot -------------------------------------------------------------------------------- /gns3server/static/web-ui/NotoSans-Italic.8a08f0f08e448e4f522e.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/NotoSans-Italic.8a08f0f08e448e4f522e.woff -------------------------------------------------------------------------------- /gns3server/static/web-ui/NotoSans-Italic.ca985d172a576d01c77e.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/NotoSans-Italic.ca985d172a576d01c77e.woff2 -------------------------------------------------------------------------------- /gns3server/static/web-ui/NotoSans-Regular.22c53c8686edcaecdf66.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/NotoSans-Regular.22c53c8686edcaecdf66.woff -------------------------------------------------------------------------------- /gns3server/static/web-ui/NotoSans-Regular.730e73a4d4556fa0efe8.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/NotoSans-Regular.730e73a4d4556fa0efe8.woff2 -------------------------------------------------------------------------------- /gns3server/static/web-ui/NotoSans-Regular.e962f548522aa99bb8f9.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/NotoSans-Regular.e962f548522aa99bb8f9.ttf -------------------------------------------------------------------------------- /gns3server/static/web-ui/NotoSans-Regular.f55982ed9f2bc3af6185.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/NotoSans-Regular.f55982ed9f2bc3af6185.eot -------------------------------------------------------------------------------- /gns3server/static/web-ui/assets/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/assets/favicon.ico -------------------------------------------------------------------------------- /gns3server/static/web-ui/assets/icons/mac/icon.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/assets/icons/mac/icon.icns -------------------------------------------------------------------------------- /gns3server/static/web-ui/assets/icons/png/1024x1024.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/assets/icons/png/1024x1024.png -------------------------------------------------------------------------------- /gns3server/static/web-ui/assets/icons/png/128x128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/assets/icons/png/128x128.png -------------------------------------------------------------------------------- /gns3server/static/web-ui/assets/icons/png/16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/assets/icons/png/16x16.png -------------------------------------------------------------------------------- /gns3server/static/web-ui/assets/icons/png/24x24.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/assets/icons/png/24x24.png -------------------------------------------------------------------------------- /gns3server/static/web-ui/assets/icons/png/256x256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/assets/icons/png/256x256.png -------------------------------------------------------------------------------- /gns3server/static/web-ui/assets/icons/png/32x32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/assets/icons/png/32x32.png -------------------------------------------------------------------------------- /gns3server/static/web-ui/assets/icons/png/48x48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/assets/icons/png/48x48.png -------------------------------------------------------------------------------- /gns3server/static/web-ui/assets/icons/png/512x512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/assets/icons/png/512x512.png -------------------------------------------------------------------------------- /gns3server/static/web-ui/assets/icons/png/64x64.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/assets/icons/png/64x64.png -------------------------------------------------------------------------------- /gns3server/static/web-ui/assets/icons/win/icon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/assets/icons/win/icon.ico -------------------------------------------------------------------------------- /gns3server/static/web-ui/assets/logo-header.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/assets/logo-header.png -------------------------------------------------------------------------------- /gns3server/static/web-ui/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/favicon.ico -------------------------------------------------------------------------------- /gns3server/static/web-ui/roboto-latin-100.a45108d3b34af91f9113.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/roboto-latin-100.a45108d3b34af91f9113.woff -------------------------------------------------------------------------------- /gns3server/static/web-ui/roboto-latin-100.c2aa4ab115bf9c6057cb.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/roboto-latin-100.c2aa4ab115bf9c6057cb.woff2 -------------------------------------------------------------------------------- /gns3server/static/web-ui/roboto-latin-100italic.451d4e559d6f57cdf6a1.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/roboto-latin-100italic.451d4e559d6f57cdf6a1.woff -------------------------------------------------------------------------------- /gns3server/static/web-ui/roboto-latin-100italic.7f839a8652da29745ce4.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/roboto-latin-100italic.7f839a8652da29745ce4.woff2 -------------------------------------------------------------------------------- /gns3server/static/web-ui/roboto-latin-300.37a7069dc30fc663c878.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/roboto-latin-300.37a7069dc30fc663c878.woff2 -------------------------------------------------------------------------------- /gns3server/static/web-ui/roboto-latin-300.865f928cbabcc9f8f2b5.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/roboto-latin-300.865f928cbabcc9f8f2b5.woff -------------------------------------------------------------------------------- /gns3server/static/web-ui/roboto-latin-300italic.bd5b7a13f2c52b531a2a.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/roboto-latin-300italic.bd5b7a13f2c52b531a2a.woff -------------------------------------------------------------------------------- /gns3server/static/web-ui/roboto-latin-300italic.c64e7e354c88e613c77c.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/roboto-latin-300italic.c64e7e354c88e613c77c.woff2 -------------------------------------------------------------------------------- /gns3server/static/web-ui/roboto-latin-400.176f8f5bd5f02b3abfcf.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/roboto-latin-400.176f8f5bd5f02b3abfcf.woff2 -------------------------------------------------------------------------------- /gns3server/static/web-ui/roboto-latin-400.49ae34d4cc6b98c00c69.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/roboto-latin-400.49ae34d4cc6b98c00c69.woff -------------------------------------------------------------------------------- /gns3server/static/web-ui/roboto-latin-400italic.b1d9d9904bfca8802a63.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/roboto-latin-400italic.b1d9d9904bfca8802a63.woff -------------------------------------------------------------------------------- /gns3server/static/web-ui/roboto-latin-400italic.d022bc70dc1bf7b3425d.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/roboto-latin-400italic.d022bc70dc1bf7b3425d.woff2 -------------------------------------------------------------------------------- /gns3server/static/web-ui/roboto-latin-500.cea99d3e3e13a3a599a0.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/roboto-latin-500.cea99d3e3e13a3a599a0.woff -------------------------------------------------------------------------------- /gns3server/static/web-ui/roboto-latin-500.f5b74d7ffcdf85b9dd60.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/roboto-latin-500.f5b74d7ffcdf85b9dd60.woff2 -------------------------------------------------------------------------------- /gns3server/static/web-ui/roboto-latin-500italic.0d8bb5b3ee5f5dac9e44.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/roboto-latin-500italic.0d8bb5b3ee5f5dac9e44.woff2 -------------------------------------------------------------------------------- /gns3server/static/web-ui/roboto-latin-500italic.18d00f739ff1e1c52db1.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/roboto-latin-500italic.18d00f739ff1e1c52db1.woff -------------------------------------------------------------------------------- /gns3server/static/web-ui/roboto-latin-700.2267169ee7270a22a963.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/roboto-latin-700.2267169ee7270a22a963.woff -------------------------------------------------------------------------------- /gns3server/static/web-ui/roboto-latin-700.c18ee39fb002ad58b6dc.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/roboto-latin-700.c18ee39fb002ad58b6dc.woff2 -------------------------------------------------------------------------------- /gns3server/static/web-ui/roboto-latin-700italic.7d8125ff7f707231fd89.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/roboto-latin-700italic.7d8125ff7f707231fd89.woff2 -------------------------------------------------------------------------------- /gns3server/static/web-ui/roboto-latin-700italic.9360531f9bb817f917f0.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/roboto-latin-700italic.9360531f9bb817f917f0.woff -------------------------------------------------------------------------------- /gns3server/static/web-ui/roboto-latin-900.870c8c1486f76054301a.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/roboto-latin-900.870c8c1486f76054301a.woff2 -------------------------------------------------------------------------------- /gns3server/static/web-ui/roboto-latin-900.bac8362e7a6ea60b6983.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/roboto-latin-900.bac8362e7a6ea60b6983.woff -------------------------------------------------------------------------------- /gns3server/static/web-ui/roboto-latin-900italic.c20d916c1a1b094c1cec.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/roboto-latin-900italic.c20d916c1a1b094c1cec.woff -------------------------------------------------------------------------------- /gns3server/static/web-ui/roboto-latin-900italic.cb5ad999740e9d8a8bd1.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/static/web-ui/roboto-latin-900italic.cb5ad999740e9d8a8bd1.woff2 -------------------------------------------------------------------------------- /gns3server/symbols/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/symbols/.gitkeep -------------------------------------------------------------------------------- /gns3server/symbols/affinity/circle/blue/camera.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /gns3server/symbols/affinity/circle/blue/hub.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /gns3server/symbols/affinity/circle/gray/camera.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /gns3server/symbols/affinity/circle/gray/hub.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /gns3server/symbols/affinity/circle/green/camera.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /gns3server/symbols/affinity/circle/green/hub.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /gns3server/symbols/affinity/circle/red/camera.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /gns3server/symbols/affinity/circle/red/hub.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /gns3server/templates/index.html: -------------------------------------------------------------------------------- 1 | {% extends "layout.html" %} 2 | {% block body %} 3 |

4 | Welcome to GNS3. 5 |

6 | 11 |

If you are looking for uploading the IOU. You can since 1.4 upload them directly from the client see: this documentation.

12 | {% endblock %} 13 | -------------------------------------------------------------------------------- /gns3server/templates/layout.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | {% block head %}{% endblock %} 5 | GNS3 Server 6 | 7 | 8 |
9 | Home 10 | | 11 | Controller status 12 | | 13 | Compute status 14 |
15 | {% block body %}{% endblock %} 16 | 17 | 18 | Powered by GNS3 {{gns3_version}} 19 | 20 | 21 | -------------------------------------------------------------------------------- /gns3server/templates/upload.html: -------------------------------------------------------------------------------- 1 | The upload form is deprecated since GNS3 1.4.
2 | GNS3 will upload the images for you when you select it in the interface. 3 |

4 | For the iourc file you just need to configure the file in the IOU section of the GUI. 5 |

6 | More informations on the documentation section of GNS3.com 7 | -------------------------------------------------------------------------------- /gns3server/ubridge/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/ubridge/__init__.py -------------------------------------------------------------------------------- /gns3server/web/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/gns3server/web/__init__.py -------------------------------------------------------------------------------- /init/gns3.conf.upstart: -------------------------------------------------------------------------------- 1 | description "GNS3 server" 2 | author "GNS3 Team" 3 | env LANG=en_US.UTF-8 4 | 5 | start on filesystem or runlevel [2345] 6 | stop on shutdown 7 | 8 | script 9 | exec start-stop-daemon --start -c gns3 --exec /usr/local/bin/gns3server -- --log /var/log/gns3.log --pid /var/run/gns3.pid --daemon 10 | end script 11 | 12 | pre-start script 13 | echo "[`date`] GNS3 Starting" >> /var/log/gns3.log 14 | end script 15 | 16 | pre-stop script 17 | echo "[`date`] GNS3 Stopping" >> /var/log/gns3.log 18 | end script 19 | -------------------------------------------------------------------------------- /init/gns3.service.systemd: -------------------------------------------------------------------------------- 1 | [Unit] 2 | Description=GNS3 server 3 | Wants=network-online.target 4 | After=network.target network-online.target 5 | 6 | [Service] 7 | User=gns3 8 | Group=gns3 9 | ExecStart=/usr/local/bin/gns3server 10 | 11 | [Install] 12 | WantedBy=multi-user.target 13 | -------------------------------------------------------------------------------- /mac-requirements.txt: -------------------------------------------------------------------------------- 1 | -rrequirements.txt 2 | -------------------------------------------------------------------------------- /pytest.ini: -------------------------------------------------------------------------------- 1 | [pytest] 2 | asyncio_mode=auto 3 | log_level=NOTSET 4 | -------------------------------------------------------------------------------- /readthedocs.yml: -------------------------------------------------------------------------------- 1 | version: 2 2 | 3 | build: 4 | os: "ubuntu-22.04" 5 | tools: 6 | python: "3.12" 7 | 8 | sphinx: 9 | configuration: docs/conf.py 10 | -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- 1 | jsonschema>=4.23,<4.24 2 | aiohttp>=3.10.11,<3.11 # version 3.10.11 is the last compatible version with Python 3.8 3 | aiohttp-cors>=0.7.0,<0.8 4 | aiofiles>=24.1.0,<25.0 5 | Jinja2>=3.1.6,<3.2 6 | sentry-sdk>=2.26.1,<2.27 # optional dependency 7 | psutil>=7.0.0 8 | async-timeout>=5.0.1,<5.1 9 | distro>=1.9.0 10 | py-cpuinfo>=9.0.0,<10.0 11 | platformdirs>=2.4.0,<3 # platformdirs >=3 conflicts when building Debian packages 12 | importlib-resources>=1.3; python_version < '3.9' 13 | truststore>=0.10.0; python_version >= '3.10' 14 | -------------------------------------------------------------------------------- /scripts/run_on_gns3vm.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | # This script will push current dev to a GNS3 VM and 4 | # will also start the server in console 5 | 6 | SERVER_ADDRESS=$1 7 | 8 | if [ "$SERVER_ADDRESS" == "" ] 9 | then 10 | echo "usage: run_on_gns3vm.sh VM_IP" 11 | exit 1 12 | fi 13 | 14 | ssh gns3@$SERVER_ADDRESS "sudo service gns3 stop" 15 | rsync -avz --exclude==".git/*" --exclude=='docs/*' --exclude="__pycache__" --exclude=='tests/*' . "gns3@$SERVER_ADDRESS:gns3server" 16 | 17 | ssh gns3@$SERVER_ADDRESS "killall python3;cd gns3server;python3 -m gns3server" 18 | -------------------------------------------------------------------------------- /tests/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/tests/__init__.py -------------------------------------------------------------------------------- /tests/controller/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/tests/controller/__init__.py -------------------------------------------------------------------------------- /tests/handlers/api/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/tests/handlers/api/__init__.py -------------------------------------------------------------------------------- /tests/handlers/api/compute/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/tests/handlers/api/compute/__init__.py -------------------------------------------------------------------------------- /tests/handlers/api/controller/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/tests/handlers/api/controller/__init__.py -------------------------------------------------------------------------------- /tests/resources/empty8G.qcow2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/tests/resources/empty8G.qcow2 -------------------------------------------------------------------------------- /tests/resources/gns3_icon_128x128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/tests/resources/gns3_icon_128x128.png -------------------------------------------------------------------------------- /tests/resources/gns3_icon_128x64.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/tests/resources/gns3_icon_128x64.gif -------------------------------------------------------------------------------- /tests/resources/gns3_icon_128x64.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/tests/resources/gns3_icon_128x64.jpg -------------------------------------------------------------------------------- /tests/resources/gns3_icon_128x64.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/tests/resources/gns3_icon_128x64.png -------------------------------------------------------------------------------- /tests/resources/linked.qcow2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/tests/resources/linked.qcow2 -------------------------------------------------------------------------------- /tests/resources/nvram_iou: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/tests/resources/nvram_iou -------------------------------------------------------------------------------- /tests/topologies/1_0_empty/after/1_0_empty.gns3: -------------------------------------------------------------------------------- 1 | { 2 | "version" : "ANYSTR", 3 | "name" : "Downloads", 4 | "topology" : { 5 | "links" : [], 6 | "drawings" : [], 7 | "nodes" : [], 8 | "computes" : [ 9 | { 10 | "protocol" : "http", 11 | "name" : "Local", 12 | "compute_id" : "local", 13 | "port" : 8000, 14 | "host" : "127.0.0.1" 15 | } 16 | ] 17 | }, 18 | "revision": 6, 19 | "project_id" : "ANYUUID", 20 | "type" : "topology", 21 | "auto_start" : false 22 | } 23 | -------------------------------------------------------------------------------- /tests/topologies/1_0_empty/before/1_0_empty.gns3: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Downloads", 3 | "resources_type": "local", 4 | "topology": { 5 | "servers": [ 6 | { 7 | "host": "127.0.0.1", 8 | "id": 1, 9 | "local": true, 10 | "port": 8000 11 | } 12 | ] 13 | }, 14 | "type": "topology", 15 | "version": "1.0" 16 | } -------------------------------------------------------------------------------- /tests/topologies/1_5_builtins/after/README.txt: -------------------------------------------------------------------------------- 1 | hello 2 | -------------------------------------------------------------------------------- /tests/topologies/1_5_builtins/before/instructions.txt: -------------------------------------------------------------------------------- 1 | hello 2 | -------------------------------------------------------------------------------- /tests/topologies/1_5_images/after/1_5_image.gns3: -------------------------------------------------------------------------------- 1 | { 2 | "auto_start": false, 3 | "name": "1_5_image", 4 | "project_id": "ANYUUID", 5 | "revision": 6, 6 | "topology": { 7 | "computes": [], 8 | "drawings": [ 9 | { 10 | "drawing_id": "ANYUUID", 11 | "rotation": 0, 12 | "svg": "gns3_logo.png", 13 | "x": -64, 14 | "y": -64, 15 | "z": 0 16 | } 17 | ], 18 | "links": [], 19 | "nodes": [] 20 | }, 21 | "type": "topology", 22 | "version": "ANYSTR" 23 | } 24 | -------------------------------------------------------------------------------- /tests/topologies/1_5_images/after/project-files/images/gns3_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/tests/topologies/1_5_images/after/project-files/images/gns3_logo.png -------------------------------------------------------------------------------- /tests/topologies/1_5_images/before/1_5_image.gns3: -------------------------------------------------------------------------------- 1 | { 2 | "auto_start": false, 3 | "name": "1_5_image", 4 | "project_id": null, 5 | "revision": 4, 6 | "topology": { 7 | "images": [ 8 | { 9 | "path": "images/gns3_logo.png", 10 | "x": -64, 11 | "y": -64 12 | } 13 | ] 14 | }, 15 | "type": "topology", 16 | "version": "1.5.1dev1" 17 | } 18 | -------------------------------------------------------------------------------- /tests/topologies/1_5_images/before/project-files/images/gns3_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/tests/topologies/1_5_images/before/project-files/images/gns3_logo.png -------------------------------------------------------------------------------- /tests/topologies/1_5_snapshot/after/project-files/vpcs/992c28fd-4bc3-4508-9300-48600148f64a/startup.vpc: -------------------------------------------------------------------------------- 1 | set pcname PC1 2 | -------------------------------------------------------------------------------- /tests/topologies/1_5_snapshot/after/snapshots/onedevice_280716_174116.gns3project: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/tests/topologies/1_5_snapshot/after/snapshots/onedevice_280716_174116.gns3project -------------------------------------------------------------------------------- /tests/topologies/1_5_snapshot/before/project-files/snapshots/onedevice_280716_174116/project-files/vpcs/992c28fd-4bc3-4508-9300-48600148f64a/startup.vpc: -------------------------------------------------------------------------------- 1 | set pcname PC1 2 | -------------------------------------------------------------------------------- /tests/topologies/1_5_snapshot/before/project-files/snapshots/onedevice_280716_174116/screenshot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/tests/topologies/1_5_snapshot/before/project-files/snapshots/onedevice_280716_174116/screenshot.png -------------------------------------------------------------------------------- /tests/topologies/1_5_snapshot/before/project-files/vpcs/992c28fd-4bc3-4508-9300-48600148f64a/startup.vpc: -------------------------------------------------------------------------------- 1 | set pcname PC1 2 | -------------------------------------------------------------------------------- /tests/topologies/1_5_vpcs/after/project-files/vpcs/0fd3dd4d-dc93-4a04-a9b9-7396a9e22e8b/startup.vpc: -------------------------------------------------------------------------------- 1 | set pcname PC1 2 | -------------------------------------------------------------------------------- /tests/topologies/1_5_vpcs/after/project-files/vpcs/b570a150-c09f-47d9-8d32-9ca5b03234d6/startup.vpc: -------------------------------------------------------------------------------- 1 | set pcname PC2 2 | -------------------------------------------------------------------------------- /tests/topologies/1_5_vpcs/before/project-files/vpcs/0fd3dd4d-dc93-4a04-a9b9-7396a9e22e8b/startup.vpc: -------------------------------------------------------------------------------- 1 | set pcname PC1 2 | -------------------------------------------------------------------------------- /tests/topologies/1_5_vpcs/before/project-files/vpcs/b570a150-c09f-47d9-8d32-9ca5b03234d6/startup.vpc: -------------------------------------------------------------------------------- 1 | set pcname PC2 2 | -------------------------------------------------------------------------------- /tests/topologies/README.rst: -------------------------------------------------------------------------------- 1 | This directories contain topologies made for previous version of GNS3 2 | 3 | Each directory is a GNS3 project. You have two directory inside: 4 | * before 5 | * after 6 | 7 | Before is the state of the project before conversion and after 8 | is the reference for checking if conversion is a success. 9 | 10 | To check if file are the same we check the file size except 11 | for .gns3 12 | 13 | .gns3 check 14 | ########### 15 | 16 | The .gns3 json is loaded and compare to the reference project. 17 | 18 | You have some special value in the after project: 19 | * "ANYSTR" allow for any string to match 20 | * "ANYUUID" allow for any uuid to match 21 | 22 | 23 | Run the tests 24 | ############### 25 | 26 | You can run the tests with: 27 | 28 | .. code:: bash 29 | 30 | py.test -vv -x tests/test_topologies.py 31 | -------------------------------------------------------------------------------- /tests/topologies/dynamips_2_0_0_b2/after/project-files/dynamips/b31bacb4-b251-47e3-b9e8-fe5596e7a8ba/c7200_i1_nvram: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/tests/topologies/dynamips_2_0_0_b2/after/project-files/dynamips/b31bacb4-b251-47e3-b9e8-fe5596e7a8ba/c7200_i1_nvram -------------------------------------------------------------------------------- /tests/topologies/dynamips_2_0_0_b2/after/project-files/dynamips/b31bacb4-b251-47e3-b9e8-fe5596e7a8ba/dynamips_i1_log.txt: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /tests/topologies/dynamips_2_0_0_b2/after/project-files/dynamips/f306df6f-dbe0-4be1-9a40-625b8d20fe6e/c7200_i2_nvram: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/tests/topologies/dynamips_2_0_0_b2/after/project-files/dynamips/f306df6f-dbe0-4be1-9a40-625b8d20fe6e/c7200_i2_nvram -------------------------------------------------------------------------------- /tests/topologies/dynamips_2_0_0_b2/after/project-files/dynamips/f306df6f-dbe0-4be1-9a40-625b8d20fe6e/dynamips_i2_log.txt: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /tests/topologies/dynamips_2_0_0_b2/before/project-files/dynamips/c7200_i1_nvram: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/tests/topologies/dynamips_2_0_0_b2/before/project-files/dynamips/c7200_i1_nvram -------------------------------------------------------------------------------- /tests/topologies/dynamips_2_0_0_b2/before/project-files/dynamips/c7200_i2_nvram: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GNS3/gns3-server/add8c4e8a2bd9647fecc06f321dcac51d6b403db/tests/topologies/dynamips_2_0_0_b2/before/project-files/dynamips/c7200_i2_nvram -------------------------------------------------------------------------------- /tests/topologies/dynamips_2_0_0_b2/before/project-files/dynamips/dynamips_i1_log.txt: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /tests/topologies/dynamips_2_0_0_b2/before/project-files/dynamips/dynamips_i2_log.txt: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /win-requirements.txt: -------------------------------------------------------------------------------- 1 | -rrequirements.txt 2 | 3 | pywin32==306 4 | wmi==1.5.1 5 | --------------------------------------------------------------------------------