Compare commits

..
131 Commits
Author SHA1 Message Date
grossmj 91dba66800 Release v2.2.38 2023-02-28 15:35:17 +10:00
grossmj 69b741a01e Sync appliance files 2023-02-28 15:31:02 +10:00
grossmj 8903ab8a47 Bundle web-ui v2.2.38 2023-02-28 15:29:17 +10:00
grossmj 4d62c6943b Merge branch 'master' into 2.2 2023-02-28 15:07:48 +10:00
grossmj 2a66f67b5f Merge remote-tracking branch 'origin/2.2' into 2.2 2023-02-27 22:59:08 +10:00
grossmj 8ef59c7832 Fix c7200_i0_log.txt is created in the current directory. Fixes #2191 2023-02-27 22:58:52 +10:00
Jeremy Grossmann cbdab1f0d7 Merge pull request #2190 from GNS3/check_tpm
Check swtpm version and start it before qemu
2023-02-26 18:59:08 +08:00
grossmj 7968ee7ff2 Check swtpm version and start swtpm before qemu 2023-02-26 20:51:24 +10:00
Jeremy Grossmann 3040e87a7d Merge pull request #2189 from GNS3/fix/2188
Fix broken websocket console with Python 3.11
2023-02-18 15:44:06 +08:00
grossmj 1f85abb036 Fix broken websocket console with Python 3.11 2023-02-18 15:32:57 +08:00
grossmj 30c85703c8 Attempt to fix "cannot reopen console". Ref #2182 2023-02-13 19:32:44 +08:00
Jeremy Grossmann 2b6bec1b93 Merge pull request #2178 from GNS3/fix/2177
Fix Qemu binary not set when adding appliance from template
2023-02-04 10:12:30 +05:45
grossmj 0f49911432 Fix Qemu binary not set when adding appliance from template 2023-02-04 12:18:52 +08:00
grossmj 3a6ff9b44f Add long description content type in setup.py 2023-02-01 09:56:02 +08:00
grossmj 83cb8693e6 Automatically add new issues to GNS3 project 2023-01-31 09:31:52 +08:00
grossmj e5ecdd270d Development 2.2.38.dev1 2023-01-25 18:36:39 +08:00
grossmj 260ac44e87 Release v2.2.37 2023-01-25 15:06:12 +08:00
grossmj 1fa4632b55 Merge branch 'master' into 2.2 2023-01-25 14:44:54 +08:00
grossmj a0cf711634 Bump version to 2.2.37.dev3 2023-01-25 14:13:07 +08:00
grossmj b83645c531 Add web-ui v2.2.37 2023-01-24 15:06:21 +08:00
grossmj a7daae1c6a Sync appliances 2023-01-24 14:57:58 +08:00
grossmj a7d19fd89a Fix StreamWriter doesn't have the wait_closed() method in Python3.6. Fixes #2170 2023-01-20 13:14:57 +08:00
grossmj 3c2ae5363c Install built-in appliances when no previous version has been detected. Fixes #2168 2023-01-17 13:39:01 +08:00
grossmj 24d1aeee32 Bump version to 2.2.37.dev2 2023-01-17 13:30:09 +08:00
grossmj 8d56b7b18c Fix sync_appliances.sh 2023-01-17 13:11:56 +08:00
grossmj 90d7478679 Sync appliances 2023-01-17 13:11:18 +08:00
grossmj fb4c04ac41 Update documentation to install gns3-server. Fixes #2124 2023-01-17 09:45:14 +08:00
Jeremy Grossmann dc1b98a1d0 Merge pull request #2166 from GNS3/fix/2165
Find Dynamips version before hypervisor is started
2023-01-17 07:15:33 +05:45
grossmj c57b0cbb53 Find Dynamips version before hypervisor launch and do not require Dynamips v0.2.23 2023-01-16 18:04:46 +08:00
grossmj 5a3b502024 Fix NIO update UDP test 2023-01-10 11:39:18 +08:00
grossmj 997e0ad6ee Fix more tests 2023-01-10 11:22:12 +08:00
grossmj eb3fc1bb3a Fix more tests 2023-01-10 11:09:27 +08:00
grossmj e9c95ff299 Fix tests 2023-01-10 10:07:26 +08:00
grossmj 78c301653f Convert README to Markdown 2023-01-10 08:23:06 +08:00
grossmj 535f89e29e Give udhcpc executable right. Fixes #2159 2023-01-06 20:09:17 +08:00
grossmj f8f5d7ec07 Development on 2.2.37.dev1 2023-01-05 09:13:30 +08:00
grossmj d0141c351b Merge branch '2.2' 2023-01-05 09:12:11 +08:00
grossmj 8e2992fbc7 Release v2.2.36 2023-01-04 19:46:30 +08:00
grossmj 8986f10506 Install web-ui v2.2.36 2023-01-04 19:05:24 +08:00
grossmj 10f3adcb60 Sync appliance files 2023-01-04 18:28:14 +08:00
grossmj 5459543eb5 Fix issue when detecting Dynamips version (version is not set until after Dynamips has started) 2023-01-04 18:21:17 +08:00
grossmj e15c36f05c Merge remote-tracking branch 'origin/2.2' into 2.2 2023-01-04 15:12:26 +08:00
grossmj da7c7d16e4 Fix starting Dynamips on Windows 2023-01-04 15:12:09 +08:00
Jeremy Grossmann 8d69f7f792 Merge pull request #2157 from GNS3/qemu-tpm-support
Trusted Platform Module (TPM) support for Qemu VMs
2023-01-04 10:55:52 +05:45
grossmj 297ada529c Prevent TPM to run on Windows 2023-01-04 12:57:48 +08:00
grossmj ae200d9add Add Trusted Platform Module (TPM) support for Qemu VMs 2023-01-04 12:13:19 +08:00
Jeremy Grossmann eb1b70456f Merge pull request #2155 from GNS3/fix/2143
Binding address for console
2023-01-04 07:00:33 +05:45
grossmj 9132002b80 Fix typos 2023-01-04 09:08:40 +08:00
grossmj 771a9a5ddb Require Dynamips 0.2.23 and bind Dynamips hypervisor on 127.0.0.1 2023-01-02 15:26:59 +08:00
Jeremy Grossmann 04ba3b6549 Merge pull request #2154 from GNS3/fix/2069
Use a stock BusyBox for the Docker integration
2023-01-01 16:18:37 +05:45
grossmj 8f9800f444 Update README.rst about static busybox 2023-01-01 18:24:42 +08:00
Jeremy Grossmann 90c971ed74 Merge pull request #2152 from GNS3/fix/2151
Install built-in appliance files at the first start of a newer version of the server
2023-01-01 15:40:48 +05:45
grossmj d2ad9dc5e2 Delete the built-in appliance directory before installing updated files 2023-01-01 17:49:00 +08:00
grossmj e5c8ae4bde Use a stock BusyBox for the Docker integration 2023-01-01 17:04:48 +08:00
grossmj 5bccf4841d Overwrite built-in appliance files when starting a more recent version of the server 2023-01-01 15:57:41 +08:00
grossmj b3a6b9173b Fix reset console. Fixes #1619 2022-12-31 09:43:17 +08:00
grossmj 2d6b260188 Revert "Install importlib-resources==1.3 with Python < 3.9"
This reverts commit 343022c63b.
2022-12-30 21:13:59 +08:00
grossmj c814245426 Revert "Change importlib-resources dependency to v1.4.0"
This reverts commit d787f38c21.
2022-12-30 21:13:49 +08:00
grossmj d787f38c21 Change importlib-resources dependency to v1.4.0 2022-12-30 21:09:54 +08:00
grossmj 343022c63b Install importlib-resources==1.3 with Python < 3.9 2022-12-30 21:05:18 +08:00
grossmj 1148dbc48e Fix issue when calling reset_console with running VPCS and Qemu nodes. Ref #1619 2022-12-30 20:54:37 +08:00
grossmj 85679aaa94 Try importlib-resources for Python 3.9 2022-12-30 11:44:29 +08:00
grossmj 5bcc247881 Make gns3server.appliances a package 2022-12-30 11:37:34 +08:00
grossmj b8d595928b Try to fix tests 2022-12-30 10:35:29 +08:00
grossmj 3804249d89 Fix tests 2022-12-30 10:01:43 +08:00
grossmj c56a8ef8f7 Only use importlib_resources for Python < 3.9. Fixes #2147 2022-12-30 09:15:40 +08:00
grossmj 076e85ddb3 Update sentry-sdk dependency 2022-12-28 15:13:26 +08:00
grossmj 2550fb3495 Support when the user field defined in Docker container is an ID. Fixes #2134 2022-12-28 11:05:22 +08:00
grossmj 9f75a49e0a Fix syntax error in .whitesource 2022-12-27 12:27:26 +08:00
grossmj 7f440f43d8 Add more base branches for Mend to scan 2022-12-27 12:25:49 +08:00
grossmj 649173b293 Merge remote-tracking branch 'origin/master' 2022-12-21 17:14:00 +08:00
grossmj 1c183e660f Downgrade Ubuntu to 20.04 to fix missing Python 3.6 2022-12-21 17:12:09 +08:00
Jeremy Grossmann 634e6a3549 Update SECURITY.md 2022-12-20 21:28:46 +08:00
grossmj a91ed34f43 Downgrade Ubuntu to 20.04 to fix missing Python 3.6 2022-12-18 14:24:50 +08:00
grossmj 5209009df9 Upgrade dependencies 2022-12-18 14:14:56 +08:00
grossmj 5ba526e175 Development on v2.2.36.dev2 2022-11-11 00:36:47 +08:00
grossmj d17c243b13 Release v2.2.35.1 2022-11-10 22:21:13 +08:00
grossmj 9e4ae6bc24 Sync appliance files 2022-11-10 22:10:21 +08:00
grossmj 4b410cfa42 Merge branch 'master' into 2.2 2022-11-10 22:06:09 +08:00
grossmj b9e415b6fe Push missing file for Web-Ui v2.2.35 2022-11-10 13:09:10 +08:00
grossmj d2d327cc76 Re-release Web-Ui v2.2.35 2022-11-10 12:38:33 +08:00
grossmj 0a046e43d7 Development on 2.2.36.dev1 2022-11-09 20:02:20 +08:00
grossmj a7036d14d5 Merge branch '2.2' 2022-11-09 20:00:48 +08:00
grossmj 1aca7dbe04 Release v2.2.35 2022-11-08 23:40:25 +08:00
grossmj 338128ca3e Upgrade pywin32 to v305 2022-11-08 23:39:10 +08:00
grossmj e165cc48e3 Use Visual Studio 2022 in appveyor.yml 2022-11-08 23:09:23 +08:00
grossmj c80a55b18c Install appliances and configs without importlib_resources for Windows only 2022-11-08 23:07:45 +08:00
grossmj 284a4b62fb Fix copying appliances and configs when app is frozen 2022-11-08 22:50:59 +08:00
grossmj d33fefa183 Merge branch 'master' into 2.2 2022-11-08 19:29:39 +08:00
grossmj dfb48c884b Release web-ui v2.2.35 2022-11-08 19:29:21 +08:00
grossmj 18ba60d1a3 Downgrade psutil to v5.9.2 2022-11-08 19:18:07 +08:00
grossmj 521132726e Upgrade psutil to v5.9.4 2022-11-08 18:49:31 +08:00
grossmj f80aca7633 Sync appliance files 2022-11-08 18:40:27 +08:00
grossmj 84914ecfa4 Add debug messages to fix VMnet interface list refresh. Ref https://github.com/GNS3/gns3-gui/issues/3381 2022-11-08 12:54:47 +08:00
grossmj 5696d1ccb7 Fix issues with VMnet interface on macOS >= 11.0. Ref #3381 2022-11-07 23:59:33 +08:00
grossmj 18b0863ba8 Merge remote-tracking branch 'origin/2.2' into 2.2
# Conflicts:
#	requirements.txt
2022-11-07 21:50:59 +08:00
grossmj ece47dc279 Upgrade dependencies 2022-11-07 21:48:45 +08:00
Jeremy Grossmann 6e1d49d8ca Merge pull request #2133 from GNS3/use-importlib-resources
Migrate to importlib_resources
2022-11-07 21:24:35 +08:00
grossmj 2e550d839e Fix tests 2022-11-07 20:33:02 +08:00
grossmj a4b24eaceb Use importlib_resources instead of pkg_resources and install built-in appliances in config dir. 2022-11-07 20:12:03 +08:00
grossmj f04702d607 Fix console vnc don't use configured ports in some case. Fixes #2111 2022-11-06 19:36:31 +08:00
grossmj 6f11df6189 Add missing VMware settings in gns3_server.conf 2022-11-06 19:30:24 +08:00
grossmj 9cf2e4f5a6 Make version PEP 440 compliant 2022-11-06 17:51:31 +08:00
Jeremy Grossmann 9316876f97 Merge pull request #2123 from blueneekone/patch-1
Update gns3.service.systemd
2022-11-04 23:01:57 +08:00
grossmj f3b8f43689 Fix creating asyncio task in Python 3.6 2022-10-30 22:21:28 +08:00
grossmj 2d74d1ad94 Fix tests for Python 3.11 2022-10-30 22:07:44 +08:00
grossmj ec50cc7c0d Support for Python 3.11 2022-10-30 19:04:54 +08:00
grossmj f8ee3b3d50 Upgrade pywin32 to v304 2022-10-19 18:31:17 +08:00
Jeremy Grossmann 67e42f9353 Merge pull request #2128 from GNS3/fix/3393
Update requirements.txt
2022-10-18 22:31:56 +08:00
Jeremy Grossmann 31a490211b Merge branch '2.2' into fix/3393 2022-10-18 22:31:04 +08:00
grossmj c7df8331ed Upgrade to Visual Studio 2022 in appveyor.yml 2022-10-18 21:47:10 +08:00
grossmj de1654a50f Upgrade pip and setuptools in appveyor.yml 2022-10-18 21:40:08 +08:00
grossmj a6959de1f8 Upgrade pytest. Fixes #2130 2022-10-18 21:14:53 +08:00
grossmj 8cfedce468 Use jsonschema v3.2.0 for Python 3.6 2022-10-12 22:13:34 +08:00
grossmj 77dd772314 Allow for more dependency versions at patch level 2022-10-12 22:07:37 +08:00
grossmj 9ff302592c Upgrade to aiohttp 3.8.3 2022-10-12 21:40:23 +08:00
grossmj 6b3d4feab8 Replace deprecated distro.linux_distribution() call 2022-10-11 23:28:11 +08:00
grossmj 78b2b93540 Update dev-requirements.txt 2022-10-11 23:23:15 +08:00
grossmj 0303e21059 Update requirements.txt 2022-10-11 23:01:24 +08:00
grossmj e20d1adb0e Downgrade aiohttp to v3.8.1 2022-10-10 16:30:28 +08:00
grossmj e5bee8ff52 Downgrade Jinja2 to support Python 3.6 2022-10-10 15:52:36 +08:00
grossmj 58471ea7f4 Downgrade aiofiles to support Python 3.6 2022-10-10 15:50:35 +08:00
grossmj 9fb0ba5a71 Upgrade dependencies 2022-10-10 14:29:04 +08:00
Evan Waechtler 3d738e83f5 Update gns3.service.systemd
In reference to bug #1918, the gns3.service.systemd file references ExecPath /usr/bin/gns3server which needs to be changed to /usr/local/bin/gns3server for the daemon/service to run without failure.

Please see the change I made to the service above.
2022-10-02 23:25:58 -06:00
grossmj 40c22e389e Merge branch 'master' into 2.2 2022-09-29 14:56:35 +02:00
Jeremy Grossmann 0419c081fe Merge pull request #2083 from a60814billy/fix/binding-on-wrong-interface-in-windows
fix: binding to wrong interface in windows
2022-09-28 17:36:31 +02:00
grossmj dced70a565 Merge branch 'master' into 2.2 2022-09-27 11:55:53 +02:00
grossmj eeae27ae0d Merge branch '2.2' 2022-08-29 11:11:29 +02:00
Jeremy Grossmann 3634cc8307 Merge pull request #2094 from mm1ke/master
gns3.service.openrc: make openrc script posix compliant
2022-08-08 19:29:30 +02:00
Michael Mair-Keimberger 3b108563a0 gns3.service.openrc: make openrc script posix compliant 2022-08-08 19:23:29 +02:00
BoHong Li 790bf4521d fix: use exact match to find interface in windows to avoid get wrong interface 2022-07-06 14:22:11 +08:00
1260 changed files with 102114 additions and 68247 deletions

No files matched your search

@@ -0,0 +1,16 @@
name: Add new issues to GNS3 project
on:
issues:
types:
- opened
jobs:
add-to-project:
name: Add issue to project
runs-on: ubuntu-latest
steps:
- uses: actions/add-to-project@v0.4.0
with:
project-url: https://github.com/orgs/GNS3/projects/3
github-token: ${{ secrets.ADD_NEW_ISSUES_TO_PROJECT }}
+6 -12
View File
@@ -4,20 +4,19 @@ on:
push:
branches:
- master
- 3.0
- 2.2
pull_request:
branches:
- master
- 3.0
- 2.2
jobs:
build:
runs-on: ubuntu-latest
runs-on: ubuntu-20.04 # Downgrade Ubuntu to 20.04 to fix missing Python 3.6
strategy:
matrix:
python-version: ["3.7", "3.8", "3.9", "3.10"]
python-version: ["3.6", "3.7", "3.8", "3.9", "3.10", "3.11"]
steps:
- uses: actions/checkout@v2
@@ -25,15 +24,10 @@ jobs:
uses: actions/setup-python@v2
with:
python-version: ${{ matrix.python-version }}
- name: Display Python version
run: python -c "import sys; print(sys.version)"
- name: Install dependencies
run: |
python -m pip install --upgrade pip
python -m pip install -r dev-requirements.txt
- name: Install Windows dependencies
if: matrix.os == 'windows-latest'
run: python -m pip install -r win-requirements.txt
if [ -f dev-requirements.txt ]; then pip install -r dev-requirements.txt; fi
- name: Lint with flake8
run: |
# stop the build if there are Python syntax errors or undefined names
@@ -42,4 +36,4 @@ jobs:
flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
- name: Test with pytest
run: |
python -m pytest -vv
pytest -vv
-7
View File
@@ -5,12 +5,6 @@ __pycache__
#py.test
.cache
# environment file
.env
# hypothesis files
.hypothesis
# C extensions
*.so
@@ -65,5 +59,4 @@ startup.vpcs
# Virtualenv
env
venv
*venv
.ropeproject
+2 -1
View File
@@ -2,7 +2,8 @@
"scanSettings": {
"configMode": "AUTO",
"configExternalURL": "",
"projectToken" : ""
"projectToken" : "",
"baseBranches": ["master", "2.2", "3.0"]
},
"checkRunSettings": {
"vulnerableCheckRunConclusionLevel": "failure"
+44 -144
View File
@@ -1,152 +1,52 @@
# Change Log
## 3.0.0a2 06/09/2022
## 2.2.38 28/02/2023
* Add web-ui v3.0.0a2
* Upgrade FastAPI to v0.82.0
* API endpoint to get the locked status of a project
* Global project lock and unlock
* Update appliance files
* Require name for custom adapters. Fixes #2098
* Allow empty adapter slots for Dynamips templates. Ref https://github.com/GNS3/gns3-gui/issues/3373
* Use original $PATH in init.sh for Docker containers. Ref #2069
* Bundle web-ui v2.2.38
* Fix c7200_i0_log.txt is created in the current directory. Fixes #2191
* Check swtpm version and start swtpm before qemu
* Fix broken websocket console with Python 3.11
* Fix "cannot reopen console". Ref #2182
* Fix Qemu binary not set when adding appliance from template
## 3.0.0a1 04/08/2022
## 2.2.37 25/01/2023
* Bundle gns3-web-ui v3.0.0a1
* Use default symbol theme if none is provided when loading appliances
* Allow default symbol theme to be configured in config file
* Optionally allow Qemu raw images
* Ignore image detection for IOU user libraries in image directory
* Don't show optional token param in API docs
* Fix check for 32-bit in ELF header
* Checks for valid hostname on server side for Dynamips, IOU, Qemu and Docker nodes
* Only check files (not directories) when looking for new images on file system.
* Support user defined loader/libraries to run IOU
* Make 'vendor_url' and 'maintainer_email' optional for template validation.
* Allow auth token to be passed as a URL param
* HTTP middleware create issues when streaming project archive
* Add zstandard compression support for project export
* Make sure that the temporary image file is removed after uploading an image
* Do not cache to md5sum file in some situations
* Detect new images added to the default image directory. * Images can be present before the server starts or while it is running * Images are recorded in the database
* Support delete Qemu disk image from API Return the real disk image name in the 'hdx_disk_image_backed' property for Qemu VMs
* Handle creating Qemu disk images and resizing
* Finish to clean up local setting usage. Ref #1460
* "Local" command line parameter is only for stopping a server that has been started by the desktop GUI
* Fix AsyncSession handling after breaking changes in FastAPI 0.74.0 See https://github.com/tiangolo/fastapi/releases/tag/0.74.0 for details.
* Detect image type instead of requesting it from user
* Drop Python 3.6 support and require Python >= 3.7
* Drop Windows support
* Add connect endpoint for computes Param to connect to compute after creation Report compute unauthorized HTTP errors to client
* Replace CORS origins by origin regex
* Change default config settings
* Update Docker image for tests
* Fix calls to static methods in server.py
* Do not require the local server param to open a .gns3 file. Fixes https://github.com/GNS3/gns3-gui/issues/2421 Ref #1460
* Do not automatically install appliance after uploading image
* Ignore OSError when closing websocket
* Allow empty compute_id. Ref #1657
* Secure controller to compute communication using HTTP basic authentication
* Secure websocket endpoints
* Fix issue when updating a template
* Allocate compute when compute_id is unset
* Return the current controller hostname/IP from any compute
* Remove Qemu legacy networking support
* Add a custom version to an appliance
* Appliance management refactoring: * Install an appliance based on selected version * Each template have unique name and version * Allow to download an appliance file
* Finalize image management refactoring and auto install appliance if possible
* Sqlite doesn't allow BigInteger to be used as an primary key with autoincrement
* Add isolate and unisolate endpoints. Ref https://github.com/GNS3/gns3-gui/issues/3190
* Small db tables adjustments
* Add index for "name" field in role table
* Allow images to be stored in subdirs and used by templates.
* Option to prune images when deleting template.
* Associate images when creating or updating a template.
* Add prune images endpoint. Use many-to-many relationship between images and templates.
* Check if user has the right to add a permission
* Only use the necessary HTTP methods for default permissions
* Add /permissions/prune to delete orphaned permissions
* Check a permission matches an existing route before it is allowed to be created.
* Remove busybox and copy system busybox in setup.py
* Save image size + start to automatic template creation based on image checksum.
* Upgrade dependencies
* Fix "-machine accel=tcg" check
* Allow logged in user to change some of its data. Administrators can lock users using the `is_active` field.
* Symbols endpoints (except upload) don't require authentication.
* Update to the udhcpc wrapper script. Ref #1890
* Fix link style merge
* Start refactoring for images management
* Allow controller to be reloaded using the API. Fixes #1743
* Use a stock BusyBox for the Docker Integration
* Move "/{project_id}/templates/{template_id}" endpoint.
* Add last login info for users.
* Change RBAC field names from builtin to is_builtin
* Add user permissions + RBAC tests.
* Add description for user permission.
* Save/restore appliances Etag.
* Allow to set the initial super admin username / password in server config file. Ref #1857
* Require authentication for get_user_memberships endpoint.
* Change method to prevent forbidden directory traversal. Ref #1894
* Add user groups support.
* Add delete cascade on foreign keys for appliance table
* Enable SQL foreign key support for SQLite
* Add missing CORS origins.
* Show topology path when check topology schema fails.
* Protect controller notification endpoints. Ref #1888 (WebSocket endpoint is not secured, it takes an optional token).
* Use uuid5 to create new compute_id. Fixes #1641 #1887
* Protect the API and add alternative authentication endpoint.
* Secure users API and handle manual password recovery.
* Add default super admin account in controller db.
* Complete type annotations for API endpoints.
* Detect the app is exiting and avoid reconnecting to computes.
* Move schemas between compute and controller subpackages
* Remove traceng code.
* Move error responses to API routers.
* Wait for local compute to be started. Don't reconnect to local compute when server is being stopped.
* Rename ssl and auth configuration file settings. Add enable SSL config validator. Strict configuration file validation: any error will prevent the server to start. Core server logic moved to a Server class.
* Generate new config for each test. Fixes tests.
* Use Pydantic to validate the server config file.
* Add symbol dimensions endpoint and SSL support for packet capture with remote HTTPS server.
* Save computes to database
* Generate a new list in template schema defaults.
* Generate JWT secret key if none is configured in the config file. Change location of the database.
* User authentication with tests.
* Refactor tests and start work on database integration.
* Move endpoints to routes & preparations to use a database.
* Providing the path to create a project is now deprecated.
* Add back script to create a self-signed SSL certificate.
* Make sure all HTTP exceptions return JSON with a "message" field instead of "detail"
* Make Swagger Ui the default for API documentation
* Move to version 3 of the REST API. Rename packet capture endpoints.
* Use pydantic for data validation (instead of jsonschema) Fix/improve various pydantic schema models.
* Automate API documentation publishing.
* Publish API documentation generated by FastAPI.
* Overwrite uvicorn loggers.
* Do not automatically connect to local compute.
* Add HTTP client to reuse the aiohttp session where needed. Remove unnecessary aiohttp exceptions.
* Warn not to use the private compute API. Fixes #1593.
* Migrate PCAP streaming code to work with FastAPI.
* Refactor WebSocket console code to work with FastAPI. Fix endpoint routes.
* Use dependencies and group common HTTP responses in endpoints.
* Migration to FastAPI
* Prioritize the config disk over HD-D for Qemu VMs. Fixes https://github.com/GNS3/gns3-gui/issues/3036
* Create config disk property false by default for Qemu templates
* Set default disk interface type to "none". Fail-safe: use "ide" if an image is set but no interface type is configured. Use the HDA disk interface type if none has been configured for HDD.
* Add explicit option to automatically create or not the config disk. Off by default.
* Auxiliary console support for Qemu. Ref #2873 Improvements for auxiliary console support for Docker and Dynamips.
* Fix AUX console not allocated for Dynamips IOS routers.
* Disallow to rename a running node. Fixes https://github.com/GNS3/gns3-gui/issues/2499
* Support to reset all console connections. Ref https://github.com/GNS3/gns3-server/issues/1619
* Support to reset links. Fixes https://github.com/GNS3/gns3-server/issues/1620
* Add maxcpus property for Qemu VMs. Ref #1674
* QEMU config disk support
* Read folder structure correctly for custom symbols. Fixes https://github.com/GNS3/gns3-gui/issues/2856
* Add total RAM, CPUs and disk size to servers summary as well as disk usage in percent. Fixes https://github.com/GNS3/gns3-server/issues/1532
* Resource constraints for Docker VMs.
* Update IOUtools. Ref #1627
* Use parent directory as working directory for project duplication and snapshots. Fixes https://github.com/GNS3/gns3-gui/issues/2909
* Support for "usage" for "Cloud" nodes. Fixes https://github.com/GNS3/gns3-gui/issues/2887 Allow "usage" for all builtin nodes (not exposed in Ui).
* Fix link communication issues on Windows with uBridge
* Fix StreamWriter doesn't have the wait_closed() method in Python3.6. Fixes #2170
* Install built-in appliances when no previous version has been detected. Fixes #2168
* Update documentation to install gns3-server. Fixes #2124
* Give udhcpc executable right. Fixes #2159
## 2.2.36 04/01/2023
* Install web-ui v2.2.36
* Add Trusted Platform Module (TPM) support for Qemu VMs
* Require Dynamips 0.2.23 and bind Dynamips hypervisor on 127.0.0.1
* Delete the built-in appliance directory before installing updated files
* Use a stock BusyBox for the Docker integration
* Overwrite built-in appliance files when starting a more recent version of the server
* Fix reset console. Fixes #1619
* Only use importlib_resources for Python <= 3.9. Fixes #2147
* Support when the user field defined in Docker container is an ID. Fixes #2134
## 2.2.35.1 10/11/2022
* Re-release Web-Ui v2.2.35
## 2.2.35 08/11/2022
* Release web-ui v2.2.35
* Fix issues with VMnet interface on macOS >= 11.0. Ref #3381
* Use importlib_resources instead of pkg_resources and install built-in appliances in config dir.
* Fix console vnc don't use configured ports in some case. Fixes #2111
* Add missing VMware settings in gns3_server.conf
* Make version PEP 440 compliant
* Support for Python 3.11
* Allow for more dependency versions at patch level
* Replace deprecated distro.linux_distribution() call
* Update gns3.service.systemd
* gns3.service.openrc: make openrc script posix compliant
* fix: use exact match to find interface in windows to avoid get wrong interface
## 2.2.34 28/08/2022
+26 -28
View File
@@ -1,37 +1,35 @@
FROM ubuntu:focal
# Dockerfile for GNS3 server development
WORKDIR /gns3server
FROM ubuntu:18.04
RUN apt update && DEBIAN_FRONTEND=noninteractive apt install -y \
ENV DEBIAN_FRONTEND noninteractive
# Set the locale
ENV LANG en_US.UTF-8
ENV LANGUAGE en_US:en
ENV LC_ALL en_US.UTF-8
RUN apt-get update && apt-get install -y software-properties-common
RUN add-apt-repository ppa:gns3/ppa
RUN apt-get update && apt-get install -y \
locales \
locales-all
ENV LANG en_US.UTF-8
ENV LANGUAGE en_US:en
ENV LC_ALL en_US.UTF-8
COPY ./requirements.txt /gns3server/requirements.txt
RUN DEBIAN_FRONTEND=noninteractive apt install -y \
locales \
software-properties-common \
python3-pip \
python3-all \
python3-setuptools \
python3-dev \
busybox-static \
gcc \
python3-dev \
qemu-system-x86 \
qemu-kvm \
libvirt-daemon-system
libvirt-bin \
x11vnc
RUN add-apt-repository ppa:gns3/ppa && apt update && DEBIAN_FRONTEND=noninteractive apt install -y \
vpcs \
ubridge \
dynamips
RUN locale-gen en_US.UTF-8
COPY . /gns3server
# Install uninstall to install dependencies
RUN apt-get install -y vpcs ubridge
RUN mkdir -p ~/.config/GNS3/3.0/
RUN cp scripts/gns3_server.conf ~/.config/GNS3/3.0/
ADD . /server
WORKDIR /server
RUN python3 setup.py install
RUN pip3 install --no-cache-dir -r /server/requirements.txt
EXPOSE 3080
CMD python3 -m gns3server
+1 -1
View File
@@ -1,4 +1,4 @@
include README.rst
include README.md
include AUTHORS
include LICENSE
include MANIFEST.in
+223 -100
View File
@@ -1,134 +1,257 @@
# GNS3 server repository
GNS3-server
===========
[![Style](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)
[![GitHub Actions tests](https://github.com/GNS3/gns3-server/workflows/testing/badge.svg?branch=3.0)](https://github.com/GNS3/gns3-server/actions?query=workflow%3Atesting+branch%3A3.0)
[![Latest PyPi version](https://img.shields.io/pypi/v/gns3-server.svg)](https://pypi.python.org/pypi/gns3-server)
[![Snyk scanning](https://snyk.io/test/github/GNS3/gns3-server/badge.svg)](https://snyk.io/test/github/GNS3/gns3-server)
[![image](https://github.com/GNS3/gns3-server/workflows/testing/badge.svg)](https://github.com/GNS3/gns3-server/actions?query=workflow%3Atesting)
The GNS3 server manages emulators and other virtualization software such as Dynamips, Qemu/KVM, Docker, VPCS, VirtualBox and VMware Workstation.
Clients like the [GNS3 GUI](https://github.com/GNS3/gns3-gui/) and the [GNS3 Web UI](https://github.com/GNS3/gns3-web-ui>) control the server using a HTTP REST API.
[![image](https://img.shields.io/pypi/v/gns3-server.svg)](https://pypi.python.org/pypi/gns3-server)
## Installation
[![image](https://snyk.io/test/github/GNS3/gns3-server/badge.svg)](https://snyk.io/test/github/GNS3/gns3-server)
These instructions are for using GNS3, please see below for development.
This is the GNS3 server repository.
### Windows & macOS
The GNS3 server manages emulators such as Dynamips, VirtualBox or
Qemu/KVM. Clients like the [GNS3 GUI](https://github.com/GNS3/gns3-gui/)
and the [GNS3 Web UI](https://github.com/GNS3/gns3-web-ui) control the
server using an HTTP REST API.
Please use our [Windows installer or DMG package](https://gns3.com/software/download) to install the stable build along with the GNS3 VM.
Note that as of GNS3 version above 3.0, you must run the server using the GNS3 VM or on a Linux system (remote, cloud or virtual machine).
Software dependencies
---------------------
### Linux
In addition of Python dependencies listed in a section below, other
software may be required, recommended or optional.
#### Ubuntu based distributions
- [uBridge](https://github.com/GNS3/ubridge/) is required, it
interconnects the nodes.
- [Dynamips](https://github.com/GNS3/dynamips/) is required for
running IOS routers (using real IOS images) as well as the internal
switches and hubs.
- [VPCS](https://github.com/GNS3/vpcs/) is recommended, it is a
builtin node simulating a very simple computer to perform
connectitivy tests using ping, traceroute etc.
- Qemu is strongly recommended on Linux, as most node types are based
on Qemu, for example Cisco IOSv and Arista vEOS.
- libvirt is recommended (Linux only), as it\'s needed for the NAT
cloud.
- Docker is optional (Linux only), some nodes are based on Docker.
- mtools is recommended to support data transfer to/from QEMU VMs
using virtual disks.
- i386-libraries of libc and libcrypto are optional (Linux only), they
are only needed to run IOU based nodes.
We build and test packages for actively supported Ubuntu versions.
Other distros based on Ubuntu, like Mint, should also be supported.
### Docker support
Packages can be installed from our Personal Package Archives (PPA) repository:
Docker support needs the script program (bsdutils or
util-linux package), when running a docker VM and a static
busybox during installation (python3 setup.py install / pip3 install /
package creation).
```shell
sudo apt update
sudo apt install software-properties-common
sudo add-apt-repository ppa:gns3/ppa
sudo apt update
sudo apt install gns3-gui gns3-server
Branches
--------
### master
master is the next stable release, you can test it in your day to day
activities. Bug fixes or small improvements pull requests go here.
### 2.x (2.3 for example)
Next major release
*Never* use this branch for production. Pull requests for major new
features go here.
Linux
-----
GNS3 is perhaps packaged for your distribution:
- Gentoo: <https://packages.gentoo.org/package/net-misc/gns3-server>
- Alpine:
<https://pkgs.alpinelinux.org/package/v3.10/community/x86_64/gns3-server>
- NixOS:
<https://search.nixos.org/packages?channel=21.11&from=0&size=50&sort=relevance&type=packages&query=gns3-server>
Linux (Debian based)
--------------------
The following instructions have been tested with Ubuntu and Mint. You
must be connected to the Internet in order to install the dependencies.
Dependencies:
- Python 3.6, setuptools and the ones listed
[here](https://github.com/GNS3/gns3-server/blob/master/requirements.txt)
The following commands will install some of these dependencies:
``` {.bash}
sudo apt-get install python3-setuptools python3-pip
```
#### Other Linux distributions
Finally, these commands will install the server as well as the rest of
the dependencies:
GNS3 is often packaged for other distributions by third-parties:
* [Gentoo](https://packages.gentoo.org/package/net-misc/gns3-server)
* [Alpine](https://pkgs.alpinelinux.org/package/v3.10/community/x86_64/gns3-server)
* [NixOS](https://search.nixos.org/packages?channel=21.11&from=0&size=50&sort=relevance&type=packages&query=gns3-server)
#### PyPi
You may use PyPi in case no package is provided, or you would like to do a manual installation:
* https://pypi.org/project/gns3-server/
* https://pypi.org/project/gns3-gui/
```shell
python3 -m pip install gns3-gui
python3 -m pip install gns3-server
``` {.bash}
cd gns3-server-master
python3 -m pip install -r requirements.txt
python3 -m pip install .
gns3server
```
The downside of this method is you will have to manually install all dependencies (see below).
To run tests use:
Please see our [documentation](https://docs.gns3.com/docs/getting-started/installation/linux) for more details.
### Software dependencies
In addition to Python dependencies, other software may be required, recommended or optional.
* [uBridge](https://github.com/GNS3/ubridge/) is required, it interconnects the nodes.
* [Dynamips](https://github.com/GNS3/dynamips/) is required for running IOS routers (using real IOS images) as well as the internal switches and hubs.
* [VPCS](https://github.com/GNS3/vpcs/) is recommended, it is a builtin node simulating a very simple computer to perform connectivity tests using ping, traceroute etc.
* Qemu is strongly recommended as most node types are based on Qemu, for example Cisco IOSv and Arista vEOS.
* libvirt is recommended as it's needed for the NAT cloud.
* Docker is optional, some nodes are based on Docker.
* mtools is recommended to support data transfer to/from QEMU VMs using virtual disks.
* i386-libraries of libc and libcrypto are optional, they are only needed to run IOU based nodes.
Note that Docker needs the script program (`bsdutils` or `util-linux` package), when running a Docker VM and a static busybox during installation (python3 setup.py install / pip3 install / package creation).
## Development
### Setting up
These commands will install the server as well as all Python dependencies:
```shell
git clone https://github.com/GNS3/gns3-server
cd gns3-server
git checkout 3.0
python3 -m venv venv-gns3server
source venv-gns3server/bin/activate
python3 setup.py install
python3 -m gns3server --local
``` {.bash}
python3 -m pytest tests
```
You will have to manually install other software dependencies (see above), for Dynamips, VPCS and uBridge the easiest is to install from our PPA.
### Docker container
Alternatively, you can run the GNS3 server in a container
For development, you can run the GNS3 server in a container
```shell
``` {.bash}
bash scripts/docker_dev_server.sh
```
### Run as daemon (Unix only)
You will find init sample scripts for various systems inside the init
directory.
Useful options:
- `--daemon`: start process as a daemon
- `--log logfile`: store output in a logfile
- `--pid pidfile`: store the pid of the running process in a file and
prevent double execution
All init scripts require the creation of a GNS3 user. You can change it
to another user.
``` {.bash}
sudo adduser gns3
```
upstart
-------
For ubuntu < 15.04
You need to copy init/gns3.conf.upstart to /etc/init/gns3.conf
``` {.bash}
sudo chown root /etc/init/gns3.conf
sudo service gns3 start
```
systemd
-------
You need to copy init/gns3.service.systemd to
/lib/systemd/system/gns3.service
``` {.bash}
sudo chown root /lib/systemd/system/gns3.service
sudo systemctl start gns3
```
Windows
-------
Please use our [all-in-one
installer](https://community.gns3.com/software/download) to install the
stable build.
If you install via source you need to first install:
- Python (3.3 or above) - <https://www.python.org/downloads/windows/>
- Pywin32 - <https://sourceforge.net/projects/pywin32/>
Then you can call
``` {.bash}
python setup.py install
```
to install the remaining dependencies.
To run the tests, you also need to call
``` {.bash}
pip install pytest pytest-capturelog
```
before actually running the tests with
``` {.bash}
python setup.py test
```
or with
``` {.bash}
py.test -v
```
Mac OS X
--------
Please use our DMG package for a simple installation.
If you want to test the current git version or contribute to the
project, you can follow these instructions with virtualenvwrapper:
<http://virtualenvwrapper.readthedocs.org/> and homebrew:
<http://brew.sh/>.
``` {.bash}
brew install python3
mkvirtualenv gns3-server --python=/usr/local/bin/python3.5
python3 setup.py install
gns3server
```
SSL
---
If you want enable SSL support on GNS3 you can generate a self signed
certificate:
``` {.bash}
bash gns3server/cert_utils/create_cert.sh
```
This command will put the files in \~/.config/GNS3/ssl
After you can start the server in SSL mode with:
``` {.bash}
python gns3server/main.py --certfile ~/.config/GNS3/ssl/server.cert --certkey ~/.config/GNS3/ssl/server.key --ssl
```
Or in your gns3\_server.conf by adding in the Server section:
``` {.ini}
[Server]
certfile=/Users/noplay/.config/GNS3/ssl/server.cert
certkey=/Users/noplay/.config/GNS3/ssl/server.key
ssl=True
```
### Running tests
First, install the development dependencies:
Just run:
```shell
python3 -m pip install -r dev-requirements.txt
``` {.bash}
py.test -vv
```
Then run the tests using pytest:
If you want test coverage:
```shell
python3 -m pytest -vv tests/
``` {.bash}
py.test --cov-report term-missing --cov=gns3server
```
### API documentation
Security issues
---------------
The API documentation can be accessed when running the server locally:
* On `http://IP:PORT/docs` to see with Swagger UI (i.e. `http://localhost:3080/docs`)
* On `http://IP:PORT/redoc` to see with ReDoc (i.e. `http://localhost:3080/redoc`)
The documentation can also be viewed [online](http://apiv3.gns3.net) however it may not be the most up-to-date version since it needs manually synchronization with the current code. Also, you cannot use this to interact with a GNS3 server.
### Branches
#### master
master is the next stable release, you can test it in your day-to -day activities.
Bug fixes or small improvements pull requests go here.
3.x development brand for the next major release.
**Never** use this branch for production. Pull requests for major new features go here.
Please contact us using contact form available here:
<http://docs.gns3.com/1ON9JBXSeR7Nt2-Qum2o3ZX0GU86BZwlmNSUgvmqNWGY/index.html>
+1 -1
View File
@@ -14,4 +14,4 @@ currently being supported with security updates.
## Reporting a Vulnerability
Please contact us at security@gns3.net
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
+22
View File
@@ -0,0 +1,22 @@
version: '{build}-{branch}'
image: Visual Studio 2022
platform: x64
environment:
PYTHON: "C:\\Python37-x64"
DISTUTILS_USE_SDK: "1"
API_TOKEN:
secure: VEKn4bYH3QO0ixtQW5ni4Enmn8cS1NlZV246ludBDgQ=
install:
- cinst nmap
- "%PYTHON%\\python.exe -m pip install -U pip setuptools" # upgrade pip & setuptools first
- "%PYTHON%\\python.exe -m pip install -r dev-requirements.txt"
- "%PYTHON%\\python.exe -m pip install -r win-requirements.txt"
build: off
test_script:
- "%PYTHON%\\python.exe -m pytest -v"
+21 -58
View File
@@ -1,42 +1,17 @@
[Controller]
; Options for JWT tokens (user authentication)
jwt_secret_key = efd08eccec3bd0a1be2e086670e5efa90969c68d07e072d7354a76cea5e33d4e
jwt_algorithm = HS256
jwt_access_token_expire_minutes = 1440
; Initial default super admin username
; It cannot be changed once the controller has started once
default_admin_username = admin
; Initial default super admin password
; It cannot be changed once the controller has started once
default_admin_password = admin
[Server]
; What protocol the server uses (http or https)
protocol = http
; IP where the server listen for connections
host = 0.0.0.0
; HTTP port for controlling the servers
port = 3080
; Secrets directory
secrets_dir = /home/gns3/.config/GNS3/secrets
; Options to enable SSL encryption
enable_ssl = False
certfile = /home/gns3/.config/GNS3/ssl/server.cert
certkey = /home/gns3/.config/GNS3/ssl/server.key
; Option to enable SSL encryption
ssl = False
certfile=/home/gns3/.config/GNS3/ssl/server.cert
certkey=/home/gns3/.config/GNS3/ssl/server.key
; Path where devices images are stored
images_path = /home/gns3/GNS3/images
; Additional paths to look for images
additional_images_paths = /opt/images;/mnt/disk1/images
; Path where user projects are stored
projects_path = /home/gns3/GNS3/projects
@@ -46,14 +21,6 @@ appliances_path = /home/gns3/GNS3/appliances
; Path where custom device symbols are stored
symbols_path = /home/gns3/GNS3/symbols
; Path where custom configs are stored
configs_path = /home/gns3/GNS3/configs
; Default symbol theme
; Currently available themes are "Classic", Affinity-square-blue", "Affinity-square-red"
; "Affinity-square-gray", "Affinity-circle-blue", "Affinity-circle-red" and "Affinity-circle-gray"
default_symbol_theme = Affinity-square-blue
; Option to automatically send crash reports to the GNS3 team
report_errors = True
@@ -77,10 +44,12 @@ udp_end_port_range = 30000
; uBridge executable location, default: search in PATH
;ubridge_path = ubridge
; Username for compute HTTP authentication.
compute_username = gns3
; Password for compute HTTP authentication.
compute_password = gns3
; Option to enable HTTP authentication.
auth = False
; Username for HTTP authentication.
user = gns3
; Password for HTTP authentication.
password = gns3
; Only allow these interfaces to be used by GNS3, for the Cloud node for example (Linux/OSX only)
; Do not forget to allow virbr0 in order for the NAT node to work
@@ -112,24 +81,18 @@ iourc_path = /home/gns3/.iourc
; Validate if the iourc license file is correct. If you turn this off and your licence is invalid IOU will not start and no errors will be shown.
license_check = True
[VirtualBox]
; Path to the VBoxManage binary used to manage VirtualBox
vboxmanage_path = vboxmanage
[VMware]
; Path to the vmrun binary used to manage VMware
vmrun_path = vmrun
vmnet_start_range = 2
vmnet_end_range = 255
block_host_traffic = False
[Qemu]
; Use Qemu monitor feature to communicate with Qemu VMs
enable_monitor = True
; IP used to listen for the monitor
monitor_host = 127.0.0.1
; !! Remember to add the gns3 user to the KVM group, otherwise you will not have read / write permissions to /dev/kvm !!
; !! Remember to add the gns3 user to the KVM group, otherwise you will not have read / write permissions to /dev/kvm !! (Linux only, has priority over enable_hardware_acceleration)
enable_kvm = True
; Require KVM to be installed in order to start VMs (Linux only, has priority over require_hardware_acceleration)
require_kvm = True
; Enable hardware acceleration (all platforms)
enable_hardware_acceleration = True
; Require hardware acceleration in order to start VMs
; Require hardware acceleration in order to start VMs (all platforms)
require_hardware_acceleration = False
[VMware]
; First vmnet interface of the range that can be managed by the GNS3 server
vmnet_start_range = 2
; Last vmnet interface of the range that can be managed by the GNS3 server. It must be maximum 19 on Windows.
vmnet_end_range = 255
+5 -5
View File
@@ -1,8 +1,8 @@
-r requirements.txt
-rrequirements.txt
pytest==7.1.2
pytest==7.2.0; python_version >= '3.7'
pytest==7.0.1; python_version < '3.7' # v7.0.1 is the last version to support Python 3.6
flake8==5.0.4
pytest-timeout==2.1.0
pytest-asyncio==0.19.0
requests==2.28.1
httpx==0.23.0
pytest-aiohttp==1.0.4; python_version >= '3.7'
pytest-aiohttp==0.3.0; python_version < '3.7' # last version to support Python 3.6
-15
View File
@@ -1,15 +0,0 @@
version: '3.7'
services:
gns3server:
privileged: true
build:
context: .
dockerfile: Dockerfile
volumes:
- ./gns3server:/server/
- /var/run/docker.sock:/var/run/docker.sock
command: python3 -m gns3server --local --port 3080
ports:
- 3080:3080
- 5000-5100:5000-5100
-1
View File
@@ -1 +0,0 @@
apiv3.gns3.net
+177
View File
@@ -0,0 +1,177 @@
# Makefile for Sphinx documentation
#
# You can set these variables from the command line.
SPHINXOPTS =
SPHINXBUILD = sphinx-build
PAPER =
BUILDDIR = _build
# User-friendly check for sphinx-build
ifeq ($(shell which $(SPHINXBUILD) >/dev/null 2>&1; echo $$?), 1)
$(error The '$(SPHINXBUILD)' command was not found. Make sure you have Sphinx installed, then set the SPHINXBUILD environment variable to point to the full path of the '$(SPHINXBUILD)' executable. Alternatively you can add the directory with the executable to your PATH. If you don't have Sphinx installed, grab it from http://sphinx-doc.org/)
endif
# Internal variables.
PAPEROPT_a4 = -D latex_paper_size=a4
PAPEROPT_letter = -D latex_paper_size=letter
ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) .
# the i18n builder cannot share the environment and doctrees with the others
I18NSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) .
.PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest gettext
help:
@echo "Please use \`make <target>' where <target> is one of"
@echo " html to make standalone HTML files"
@echo " dirhtml to make HTML files named index.html in directories"
@echo " singlehtml to make a single large HTML file"
@echo " pickle to make pickle files"
@echo " json to make JSON files"
@echo " htmlhelp to make HTML files and a HTML help project"
@echo " qthelp to make HTML files and a qthelp project"
@echo " devhelp to make HTML files and a Devhelp project"
@echo " epub to make an epub"
@echo " latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter"
@echo " latexpdf to make LaTeX files and run them through pdflatex"
@echo " latexpdfja to make LaTeX files and run them through platex/dvipdfmx"
@echo " text to make text files"
@echo " man to make manual pages"
@echo " texinfo to make Texinfo files"
@echo " info to make Texinfo files and run them through makeinfo"
@echo " gettext to make PO message catalogs"
@echo " changes to make an overview of all changed/added/deprecated items"
@echo " xml to make Docutils-native XML files"
@echo " pseudoxml to make pseudoxml-XML files for display purposes"
@echo " linkcheck to check all external links for integrity"
@echo " doctest to run all doctests embedded in the documentation (if enabled)"
clean:
rm -rf $(BUILDDIR)/*
html:
$(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html
@echo
@echo "Build finished. The HTML pages are in $(BUILDDIR)/html."
dirhtml:
$(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml
@echo
@echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml."
singlehtml:
$(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml
@echo
@echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml."
pickle:
$(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle
@echo
@echo "Build finished; now you can process the pickle files."
json:
$(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json
@echo
@echo "Build finished; now you can process the JSON files."
htmlhelp:
$(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp
@echo
@echo "Build finished; now you can run HTML Help Workshop with the" \
".hhp project file in $(BUILDDIR)/htmlhelp."
qthelp:
$(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp
@echo
@echo "Build finished; now you can run "qcollectiongenerator" with the" \
".qhcp project file in $(BUILDDIR)/qthelp, like this:"
@echo "# qcollectiongenerator $(BUILDDIR)/qthelp/GNS3.qhcp"
@echo "To view the help file:"
@echo "# assistant -collectionFile $(BUILDDIR)/qthelp/GNS3.qhc"
devhelp:
$(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp
@echo
@echo "Build finished."
@echo "To view the help file:"
@echo "# mkdir -p $$HOME/.local/share/devhelp/GNS3"
@echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/GNS3"
@echo "# devhelp"
epub:
$(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILDDIR)/epub
@echo
@echo "Build finished. The epub file is in $(BUILDDIR)/epub."
latex:
$(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
@echo
@echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex."
@echo "Run \`make' in that directory to run these through (pdf)latex" \
"(use \`make latexpdf' here to do that automatically)."
latexpdf:
$(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
@echo "Running LaTeX files through pdflatex..."
$(MAKE) -C $(BUILDDIR)/latex all-pdf
@echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex."
latexpdfja:
$(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
@echo "Running LaTeX files through platex and dvipdfmx..."
$(MAKE) -C $(BUILDDIR)/latex all-pdf-ja
@echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex."
text:
$(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILDDIR)/text
@echo
@echo "Build finished. The text files are in $(BUILDDIR)/text."
man:
$(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man
@echo
@echo "Build finished. The manual pages are in $(BUILDDIR)/man."
texinfo:
$(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo
@echo
@echo "Build finished. The Texinfo files are in $(BUILDDIR)/texinfo."
@echo "Run \`make' in that directory to run these through makeinfo" \
"(use \`make info' here to do that automatically)."
info:
$(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo
@echo "Running Texinfo files through makeinfo..."
make -C $(BUILDDIR)/texinfo info
@echo "makeinfo finished; the Info files are in $(BUILDDIR)/texinfo."
gettext:
$(SPHINXBUILD) -b gettext $(I18NSPHINXOPTS) $(BUILDDIR)/locale
@echo
@echo "Build finished. The message catalogs are in $(BUILDDIR)/locale."
changes:
$(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes
@echo
@echo "The overview file is in $(BUILDDIR)/changes."
linkcheck:
$(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck
@echo
@echo "Link check complete; look for any errors in the above output " \
"or in $(BUILDDIR)/linkcheck/output.txt."
doctest:
$(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest
@echo "Testing of doctests in the sources finished, look at the " \
"results in $(BUILDDIR)/doctest/output.txt."
xml:
$(SPHINXBUILD) -b xml $(ALLSPHINXOPTS) $(BUILDDIR)/xml
@echo
@echo "Build finished. The XML files are in $(BUILDDIR)/xml."
pseudoxml:
$(SPHINXBUILD) -b pseudoxml $(ALLSPHINXOPTS) $(BUILDDIR)/pseudoxml
@echo
@echo "Build finished. The pseudo-XML files are in $(BUILDDIR)/pseudoxml."
File renamed without changes.
File renamed without changes.
@@ -0,0 +1,14 @@
curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80'
DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80 HTTP/1.1
HTTP/1.1 204
Connection: close
Content-Length: 0
Content-Type: application/octet-stream
Date: Wed, 08 Jan 2020 02:26:17 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}
@@ -0,0 +1,14 @@
curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/a022e62a-a40b-42a5-8efd-3d8141806276'
DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/a022e62a-a40b-42a5-8efd-3d8141806276 HTTP/1.1
HTTP/1.1 204
Connection: close
Content-Length: 0
Content-Type: application/octet-stream
Date: Wed, 08 Jan 2020 02:25:49 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/cloud/nodes/{node_id}
@@ -0,0 +1,14 @@
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'
DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/8a5e5e38-6a8a-408a-9d8c-31315e11d6f2/adapters/0/ports/0/nio HTTP/1.1
HTTP/1.1 204
Connection: close
Content-Length: 0
Content-Type: application/octet-stream
Date: Wed, 08 Jan 2020 02:25:43 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/cloud/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio
@@ -0,0 +1,14 @@
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'
DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/c5e6e56f-2698-4bae-9365-0a9f9efd3418/adapters/0/ports/0/nio HTTP/1.1
HTTP/1.1 204
Connection: close
Content-Length: 0
Content-Type: application/octet-stream
Date: Wed, 08 Jan 2020 02:25:50 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/docker/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio
@@ -0,0 +1,14 @@
curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/81f7488a-6a28-46f0-8b26-331906bdcf2e'
DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/81f7488a-6a28-46f0-8b26-331906bdcf2e HTTP/1.1
HTTP/1.1 204
Connection: close
Content-Length: 0
Content-Type: application/octet-stream
Date: Wed, 08 Jan 2020 02:25:57 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/iou/nodes/{node_id}
@@ -0,0 +1,14 @@
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'
DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/04e77370-e8a1-4c6c-9c2a-d7d9076a6f63/adapters/1/ports/0/nio HTTP/1.1
HTTP/1.1 204
Connection: close
Content-Length: 0
Content-Type: application/octet-stream
Date: Wed, 08 Jan 2020 02:25:59 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/iou/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio
@@ -0,0 +1,14 @@
curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/b77c05e8-dd60-4772-aedf-066339baee14'
DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/b77c05e8-dd60-4772-aedf-066339baee14 HTTP/1.1
HTTP/1.1 204
Connection: close
Content-Length: 0
Content-Type: application/octet-stream
Date: Wed, 08 Jan 2020 02:26:16 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/nat/nodes/{node_id}
@@ -0,0 +1,14 @@
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'
DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/bd5f949e-b288-4e5f-97c7-f6a053898140/adapters/0/ports/0/nio HTTP/1.1
HTTP/1.1 204
Connection: close
Content-Length: 0
Content-Type: application/octet-stream
Date: Wed, 08 Jan 2020 02:26:10 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/nat/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio
@@ -0,0 +1,14 @@
curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/55307537-62a4-48ab-ac1c-ebd998794120'
DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/55307537-62a4-48ab-ac1c-ebd998794120 HTTP/1.1
HTTP/1.1 204
Connection: close
Content-Length: 0
Content-Type: application/octet-stream
Date: Wed, 08 Jan 2020 02:26:40 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/qemu/nodes/{node_id}
@@ -0,0 +1,14 @@
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'
DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/ab332598-68ef-4ef6-bb29-d2f31a961273/adapters/1/ports/0/nio HTTP/1.1
HTTP/1.1 204
Connection: close
Content-Length: 0
Content-Type: application/octet-stream
Date: Wed, 08 Jan 2020 02:26:50 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/qemu/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio
@@ -0,0 +1,14 @@
curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/36979ca4-4892-4b3e-9202-2143e261d128'
DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/36979ca4-4892-4b3e-9202-2143e261d128 HTTP/1.1
HTTP/1.1 204
Connection: close
Content-Length: 0
Content-Type: application/octet-stream
Date: Wed, 08 Jan 2020 02:27:26 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/traceng/nodes/{node_id}
@@ -0,0 +1,14 @@
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'
DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/09736166-0e3a-4fe5-b914-72151a6362e2/adapters/0/ports/0/nio HTTP/1.1
HTTP/1.1 204
Connection: close
Content-Length: 0
Content-Type: application/octet-stream
Date: Wed, 08 Jan 2020 02:27:26 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/traceng/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio
@@ -0,0 +1,14 @@
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'
DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/a0d3abeb-9538-4660-a6e5-677822f8f943/adapters/0/ports/0/nio HTTP/1.1
HTTP/1.1 204
Connection: close
Content-Length: 0
Content-Type: application/octet-stream
Date: Wed, 08 Jan 2020 02:27:28 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio
@@ -0,0 +1,14 @@
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'
DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/90f57222-bdca-4d92-867c-de3f945f83f5/adapters/0/ports/0/nio HTTP/1.1
HTTP/1.1 204
Connection: close
Content-Length: 0
Content-Type: application/octet-stream
Date: Wed, 08 Jan 2020 02:27:42 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/vmware/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio
@@ -0,0 +1,14 @@
curl -i -X DELETE 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/f84fd457-cc5c-4eb9-88b8-3ac691d1fe52'
DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/f84fd457-cc5c-4eb9-88b8-3ac691d1fe52 HTTP/1.1
HTTP/1.1 204
Connection: close
Content-Length: 0
Content-Type: application/octet-stream
Date: Wed, 08 Jan 2020 02:27:48 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/vpcs/nodes/{node_id}
@@ -0,0 +1,14 @@
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'
DELETE /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/358e43b9-c971-4a31-a42a-b62d18342bc6/adapters/0/ports/0/nio HTTP/1.1
HTTP/1.1 204
Connection: close
Content-Length: 0
Content-Type: application/octet-stream
Date: Wed, 08 Jan 2020 02:27:48 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/vpcs/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio
@@ -0,0 +1,34 @@
curl -i -X GET 'http://localhost:3080/v2/compute/capabilities'
GET /v2/compute/capabilities HTTP/1.1
HTTP/1.1 200
Connection: close
Content-Length: 366
Content-Type: application/json
Date: Wed, 08 Jan 2020 02:25:43 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/capabilities
{
"node_types": [
"cloud",
"ethernet_hub",
"ethernet_switch",
"nat",
"vpcs",
"virtualbox",
"dynamips",
"frame_relay_switch",
"atm_switch",
"qemu",
"vmware",
"traceng",
"docker",
"iou"
],
"platform": "linuxdebian",
"version": "2.2.4dev1"
}
@@ -0,0 +1,22 @@
curl -i -X GET 'http://localhost:3080/v2/compute/iou/images'
GET /v2/compute/iou/images HTTP/1.1
HTTP/1.1 200
Connection: close
Content-Length: 149
Content-Type: application/json
Date: Wed, 08 Jan 2020 02:25:59 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/iou/images
[
{
"filename": "iou.bin",
"filesize": 7,
"md5sum": "e573e8f5c93c6c00783f20c7a170aa6c",
"path": "iou.bin"
}
]
@@ -0,0 +1,79 @@
curl -i -X GET 'http://localhost:3080/v2/compute/network/interfaces'
GET /v2/compute/network/interfaces HTTP/1.1
HTTP/1.1 200
Connection: close
Content-Length: 1601
Content-Type: application/json
Date: Wed, 08 Jan 2020 02:26:16 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/network/interfaces
[
{
"id": "docker0",
"ip_address": "172.17.0.1",
"mac_address": "02:42:0f:c7:42:69",
"name": "docker0",
"netmask": "255.255.0.0",
"special": true,
"type": "ethernet"
},
{
"id": "lo",
"ip_address": "127.0.0.1",
"mac_address": "00:00:00:00:00:00",
"name": "lo",
"netmask": "255.0.0.0",
"special": true,
"type": "ethernet"
},
{
"id": "virbr0",
"ip_address": "192.168.122.1",
"mac_address": "52:54:00:d4:71:01",
"name": "virbr0",
"netmask": "255.255.255.0",
"special": true,
"type": "ethernet"
},
{
"id": "virbr0-nic",
"ip_address": "",
"mac_address": "52:54:00:d4:71:01",
"name": "virbr0-nic",
"netmask": "",
"special": true,
"type": "ethernet"
},
{
"id": "vmnet1",
"ip_address": "172.16.9.1",
"mac_address": "00:50:56:c0:00:01",
"name": "vmnet1",
"netmask": "255.255.255.0",
"special": true,
"type": "ethernet"
},
{
"id": "vmnet8",
"ip_address": "192.168.193.1",
"mac_address": "00:50:56:c0:00:08",
"name": "vmnet8",
"netmask": "255.255.255.0",
"special": true,
"type": "ethernet"
},
{
"id": "wlp2s0",
"ip_address": "192.168.1.175",
"mac_address": "9c:b6:d0:99:3c:07",
"name": "wlp2s0",
"netmask": "255.255.255.0",
"special": false,
"type": "ethernet"
}
]
@@ -0,0 +1,26 @@
curl -i -X GET 'http://localhost:3080/v2/compute/projects'
GET /v2/compute/projects HTTP/1.1
HTTP/1.1 200
Connection: close
Content-Length: 252
Content-Type: application/json
Date: Wed, 08 Jan 2020 02:26:17 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects
[
{
"name": "test",
"project_id": "51010203-0405-0607-0809-0a0b0c0d0e0f",
"variables": null
},
{
"name": "test",
"project_id": "52010203-0405-0607-0809-0a0b0c0d0e0b",
"variables": null
}
]
@@ -0,0 +1,19 @@
curl -i -X GET 'http://localhost:3080/v2/compute/projects/40010203-0405-0607-0809-0a0b0c0d0e02'
GET /v2/compute/projects/40010203-0405-0607-0809-0a0b0c0d0e02 HTTP/1.1
HTTP/1.1 200
Connection: close
Content-Length: 103
Content-Type: application/json
Date: Wed, 08 Jan 2020 02:26:17 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}
{
"name": "test",
"project_id": "40010203-0405-0607-0809-0a0b0c0d0e02",
"variables": null
}
@@ -0,0 +1,70 @@
curl -i -X GET 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/75228bef-1806-41fc-8b73-1c5752870ac6'
GET /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/75228bef-1806-41fc-8b73-1c5752870ac6 HTTP/1.1
HTTP/1.1 200
Connection: close
Content-Length: 1406
Content-Type: application/json
Date: Wed, 08 Jan 2020 02:25:43 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/cloud/nodes/{node_id}
{
"interfaces": [
{
"name": "docker0",
"special": true,
"type": "ethernet"
},
{
"name": "lo",
"special": true,
"type": "ethernet"
},
{
"name": "virbr0",
"special": true,
"type": "ethernet"
},
{
"name": "virbr0-nic",
"special": true,
"type": "ethernet"
},
{
"name": "vmnet1",
"special": true,
"type": "ethernet"
},
{
"name": "vmnet8",
"special": true,
"type": "ethernet"
},
{
"name": "wlp2s0",
"special": false,
"type": "ethernet"
}
],
"name": "Cloud 1",
"node_directory": "/tmp/pytest-of-grossmj/pytest-41/test_json4/project-files/builtin/75228bef-1806-41fc-8b73-1c5752870ac6",
"node_id": "75228bef-1806-41fc-8b73-1c5752870ac6",
"ports_mapping": [
{
"interface": "wlp2s0",
"name": "wlp2s0",
"port_number": 0,
"type": "ethernet"
}
],
"project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80",
"remote_console_host": "",
"remote_console_http_path": "/",
"remote_console_port": 23,
"remote_console_type": "none",
"status": "started"
}
@@ -0,0 +1,34 @@
curl -i -X GET 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/a4155e63-9b40-4c8e-bbbc-d93aad187b07'
GET /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/a4155e63-9b40-4c8e-bbbc-d93aad187b07 HTTP/1.1
HTTP/1.1 200
Connection: close
Content-Length: 631
Content-Type: application/json
Date: Wed, 08 Jan 2020 02:25:57 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/iou/nodes/{node_id}
{
"application_id": 1,
"command_line": "",
"console": 5004,
"console_type": "telnet",
"ethernet_adapters": 2,
"l1_keepalives": false,
"md5sum": "e573e8f5c93c6c00783f20c7a170aa6c",
"name": "PC TEST 1",
"node_directory": "/tmp/pytest-of-grossmj/pytest-41/test_json4/project-files/iou/a4155e63-9b40-4c8e-bbbc-d93aad187b07",
"node_id": "a4155e63-9b40-4c8e-bbbc-d93aad187b07",
"nvram": 128,
"path": "iou.bin",
"project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80",
"ram": 256,
"serial_adapters": 2,
"status": "stopped",
"usage": "",
"use_default_iou_values": true
}
@@ -0,0 +1,28 @@
curl -i -X GET 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/f76e8c5c-0a0c-451d-a4ba-f01286d06a16'
GET /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/f76e8c5c-0a0c-451d-a4ba-f01286d06a16 HTTP/1.1
HTTP/1.1 200
Connection: close
Content-Length: 335
Content-Type: application/json
Date: Wed, 08 Jan 2020 02:26:09 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/nat/nodes/{node_id}
{
"name": "Nat 1",
"node_id": "f76e8c5c-0a0c-451d-a4ba-f01286d06a16",
"ports_mapping": [
{
"interface": "virbr0",
"name": "nat0",
"port_number": 0,
"type": "ethernet"
}
],
"project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80",
"status": "started"
}
@@ -0,0 +1,59 @@
curl -i -X GET 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/c54889dc-8163-4fa4-8e7c-14eca8dd6474'
GET /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/c54889dc-8163-4fa4-8e7c-14eca8dd6474 HTTP/1.1
HTTP/1.1 200
Connection: close
Content-Length: 1381
Content-Type: application/json
Date: Wed, 08 Jan 2020 02:26:29 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/qemu/nodes/{node_id}
{
"adapter_type": "e1000",
"adapters": 1,
"bios_image": "",
"bios_image_md5sum": null,
"boot_priority": "c",
"cdrom_image": "",
"cdrom_image_md5sum": null,
"command_line": "",
"console": 5004,
"console_type": "telnet",
"cpu_throttling": 0,
"cpus": 1,
"hda_disk_image": "",
"hda_disk_image_md5sum": null,
"hda_disk_interface": "ide",
"hdb_disk_image": "",
"hdb_disk_image_md5sum": null,
"hdb_disk_interface": "ide",
"hdc_disk_image": "",
"hdc_disk_image_md5sum": null,
"hdc_disk_interface": "ide",
"hdd_disk_image": "",
"hdd_disk_image_md5sum": null,
"hdd_disk_interface": "ide",
"initrd": "",
"initrd_md5sum": null,
"kernel_command_line": "",
"kernel_image": "",
"kernel_image_md5sum": null,
"legacy_networking": false,
"mac_address": "0c:dd:80:64:74:00",
"name": "PC TEST 1",
"node_directory": "/tmp/tmp3gc2avyo/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/qemu/c54889dc-8163-4fa4-8e7c-14eca8dd6474",
"node_id": "c54889dc-8163-4fa4-8e7c-14eca8dd6474",
"on_close": "power_off",
"options": "",
"platform": "x86_64",
"process_priority": "low",
"project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80",
"qemu_path": "/tmp/tmphb4tqqk2/qemu-system-x86_64",
"ram": 256,
"status": "stopped",
"usage": ""
}
@@ -0,0 +1,26 @@
curl -i -X GET 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/c03cc894-a5e9-4359-b85a-1fd917184de4'
GET /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/c03cc894-a5e9-4359-b85a-1fd917184de4 HTTP/1.1
HTTP/1.1 200
Connection: close
Content-Length: 443
Content-Type: application/json
Date: Wed, 08 Jan 2020 02:27:26 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/traceng/nodes/{node_id}
{
"command_line": "",
"console": null,
"console_type": "none",
"default_destination": "",
"ip_address": "",
"name": "TraceNG TEST 1",
"node_directory": "/tmp/tmp3gc2avyo/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/traceng/c03cc894-a5e9-4359-b85a-1fd917184de4",
"node_id": "c03cc894-a5e9-4359-b85a-1fd917184de4",
"project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80",
"status": "stopped"
}
@@ -0,0 +1,32 @@
curl -i -X GET 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/bcd3206f-3edd-4b44-b5c8-e40f4a5c8909'
GET /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/bcd3206f-3edd-4b44-b5c8-e40f4a5c8909 HTTP/1.1
HTTP/1.1 200
Connection: close
Content-Length: 483
Content-Type: application/json
Date: Wed, 08 Jan 2020 02:27:27 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id}
{
"adapter_type": "Intel PRO/1000 MT Desktop (82540EM)",
"adapters": 0,
"console": 5004,
"console_type": "telnet",
"headless": false,
"linked_clone": false,
"name": "VMTEST",
"node_directory": null,
"node_id": "bcd3206f-3edd-4b44-b5c8-e40f4a5c8909",
"on_close": "power_off",
"project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80",
"ram": 0,
"status": "stopped",
"usage": "",
"use_any_adapter": false,
"vmname": "VMTEST"
}
@@ -0,0 +1,31 @@
curl -i -X GET 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/716f8727-4421-4ba9-9e24-031505533c36'
GET /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vmware/nodes/716f8727-4421-4ba9-9e24-031505533c36 HTTP/1.1
HTTP/1.1 200
Connection: close
Content-Length: 611
Content-Type: application/json
Date: Wed, 08 Jan 2020 02:27:29 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/vmware/nodes/{node_id}
{
"adapter_type": "e1000",
"adapters": 0,
"console": 5004,
"console_type": "telnet",
"headless": false,
"linked_clone": false,
"name": "VMTEST",
"node_directory": "/tmp/tmp3gc2avyo/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/vmware/716f8727-4421-4ba9-9e24-031505533c36",
"node_id": "716f8727-4421-4ba9-9e24-031505533c36",
"on_close": "power_off",
"project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80",
"status": "stopped",
"usage": "",
"use_any_adapter": false,
"vmx_path": "/tmp/pytest-of-grossmj/pytest-41/test_vmware_get0/test.vmx"
}
@@ -0,0 +1,24 @@
curl -i -X GET 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/aa44ff6f-52fa-4bf9-9b93-2e73c9eb8071'
GET /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/nodes/aa44ff6f-52fa-4bf9-9b93-2e73c9eb8071 HTTP/1.1
HTTP/1.1 200
Connection: close
Content-Length: 384
Content-Type: application/json
Date: Wed, 08 Jan 2020 02:27:47 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/vpcs/nodes/{node_id}
{
"command_line": "",
"console": 5004,
"console_type": "telnet",
"name": "PC TEST 1",
"node_directory": "/tmp/tmp3gc2avyo/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/vpcs/aa44ff6f-52fa-4bf9-9b93-2e73c9eb8071",
"node_id": "aa44ff6f-52fa-4bf9-9b93-2e73c9eb8071",
"project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80",
"status": "stopped"
}
@@ -0,0 +1,32 @@
curl -i -X GET 'http://localhost:3080/v2/compute/qemu/binaries' -d '{"archs": ["i386"]}'
GET /v2/compute/qemu/binaries HTTP/1.1
{
"archs": [
"i386"
]
}
HTTP/1.1 200
Connection: close
Content-Length: 212
Content-Type: application/json
Date: Wed, 08 Jan 2020 02:26:55 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/qemu/binaries
[
{
"path": "/tmp/x86_64",
"version": "2.2.0"
},
{
"path": "/tmp/alpha",
"version": "2.1.0"
},
{
"path": "/tmp/i386",
"version": "2.1.0"
}
]
@@ -0,0 +1,19 @@
curl -i -X GET 'http://localhost:3080/v2/compute/qemu/capabilities'
GET /v2/compute/qemu/capabilities HTTP/1.1
HTTP/1.1 200
Connection: close
Content-Length: 39
Content-Type: application/json
Date: Wed, 08 Jan 2020 02:27:19 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/qemu/capabilities
{
"kvm": [
"x86_64"
]
}
+18
View File
@@ -0,0 +1,18 @@
curl -i -X GET 'http://localhost:3080/v2/compute/version'
GET /v2/compute/version HTTP/1.1
HTTP/1.1 200
Connection: close
Content-Length: 49
Content-Type: application/json
Date: Wed, 08 Jan 2020 02:27:25 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/version
{
"local": true,
"version": "2.2.4dev1"
}
@@ -0,0 +1,22 @@
curl -i -X POST 'http://localhost:3080/v2/compute/projects' -d '{"name": "test", "project_id": "10010203-0405-0607-0809-0a0b0c0d0e0f"}'
POST /v2/compute/projects HTTP/1.1
{
"name": "test",
"project_id": "10010203-0405-0607-0809-0a0b0c0d0e0f"
}
HTTP/1.1 201
Connection: close
Content-Length: 103
Content-Type: application/json
Date: Wed, 08 Jan 2020 02:26:17 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects
{
"name": "test",
"project_id": "10010203-0405-0607-0809-0a0b0c0d0e0f",
"variables": null
}
@@ -0,0 +1,14 @@
curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/close' -d '{}'
POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/close HTTP/1.1
{}
HTTP/1.1 204
Connection: close
Content-Length: 0
Content-Type: application/octet-stream
Date: Wed, 08 Jan 2020 02:26:17 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/close
@@ -0,0 +1,72 @@
curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes' -d '{"name": "Cloud 1"}'
POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes HTTP/1.1
{
"name": "Cloud 1"
}
HTTP/1.1 201
Connection: close
Content-Length: 1406
Content-Type: application/json
Date: Wed, 08 Jan 2020 02:25:43 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/cloud/nodes
{
"interfaces": [
{
"name": "docker0",
"special": true,
"type": "ethernet"
},
{
"name": "lo",
"special": true,
"type": "ethernet"
},
{
"name": "virbr0",
"special": true,
"type": "ethernet"
},
{
"name": "virbr0-nic",
"special": true,
"type": "ethernet"
},
{
"name": "vmnet1",
"special": true,
"type": "ethernet"
},
{
"name": "vmnet8",
"special": true,
"type": "ethernet"
},
{
"name": "wlp2s0",
"special": false,
"type": "ethernet"
}
],
"name": "Cloud 1",
"node_directory": "/tmp/pytest-of-grossmj/pytest-41/test_json4/project-files/builtin/3cba86a4-73d7-4989-9c83-f0bb480ff950",
"node_id": "3cba86a4-73d7-4989-9c83-f0bb480ff950",
"ports_mapping": [
{
"interface": "wlp2s0",
"name": "wlp2s0",
"port_number": 0,
"type": "ethernet"
}
],
"project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80",
"remote_console_host": "",
"remote_console_http_path": "/",
"remote_console_port": 23,
"remote_console_type": "none",
"status": "started"
}
@@ -0,0 +1,25 @@
curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/5a669280-f313-421f-8d05-5cd30731964f/adapters/0/ports/0/nio' -d '{"lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}'
POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/5a669280-f313-421f-8d05-5cd30731964f/adapters/0/ports/0/nio HTTP/1.1
{
"lport": 4242,
"rhost": "127.0.0.1",
"rport": 4343,
"type": "nio_udp"
}
HTTP/1.1 201
Connection: close
Content-Length: 89
Content-Type: application/json
Date: Wed, 08 Jan 2020 02:25:43 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/cloud/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio
{
"lport": 4242,
"rhost": "127.0.0.1",
"rport": 4343,
"type": "nio_udp"
}
@@ -0,0 +1,20 @@
curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/3c524997-ecb4-43c8-b0eb-4978446be73d/adapters/0/ports/0/start_capture' -d '{"capture_file_name": "test.pcap", "data_link_type": "DLT_EN10MB"}'
POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/cloud/nodes/3c524997-ecb4-43c8-b0eb-4978446be73d/adapters/0/ports/0/start_capture HTTP/1.1
{
"capture_file_name": "test.pcap",
"data_link_type": "DLT_EN10MB"
}
HTTP/1.1 200
Connection: close
Content-Length: 104
Content-Type: application/json
Date: Wed, 08 Jan 2020 02:25:49 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/cloud/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/start_capture
{
"pcap_file_path": "/tmp/pytest-of-grossmj/pytest-41/test_json4/project-files/captures/test.pcap"
}
@@ -0,0 +1,14 @@
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 '{}'
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
{}
HTTP/1.1 204
Connection: close
Content-Length: 0
Content-Type: application/octet-stream
Date: Wed, 08 Jan 2020 02:25:49 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/cloud/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/stop_capture
@@ -0,0 +1,25 @@
curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/bfba66b2-35db-441e-8015-3041cf886105/adapters/0/ports/0/nio' -d '{"lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}'
POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/bfba66b2-35db-441e-8015-3041cf886105/adapters/0/ports/0/nio HTTP/1.1
{
"lport": 4242,
"rhost": "127.0.0.1",
"rport": 4343,
"type": "nio_udp"
}
HTTP/1.1 201
Connection: close
Content-Length: 89
Content-Type: application/json
Date: Wed, 08 Jan 2020 02:25:50 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/docker/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio
{
"lport": 4242,
"rhost": "127.0.0.1",
"rport": 4343,
"type": "nio_udp"
}
@@ -0,0 +1,20 @@
curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/937a4da0-7334-4fee-a351-5433acaaa298/adapters/0/ports/0/start_capture' -d '{"capture_file_name": "test.pcap", "data_link_type": "DLT_EN10MB"}'
POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/937a4da0-7334-4fee-a351-5433acaaa298/adapters/0/ports/0/start_capture HTTP/1.1
{
"capture_file_name": "test.pcap",
"data_link_type": "DLT_EN10MB"
}
HTTP/1.1 200
Connection: close
Content-Length: 104
Content-Type: application/json
Date: Wed, 08 Jan 2020 02:25:51 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/docker/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/start_capture
{
"pcap_file_path": "/tmp/pytest-of-grossmj/pytest-41/test_json4/project-files/captures/test.pcap"
}
@@ -0,0 +1,14 @@
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 '{}'
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
{}
HTTP/1.1 204
Connection: close
Content-Length: 0
Content-Type: application/octet-stream
Date: Wed, 08 Jan 2020 02:25:51 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/docker/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/stop_capture
@@ -0,0 +1,17 @@
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"}'
POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/docker/nodes/c5f0877d-6201-4fe8-8c0b-aaeb84222bee/duplicate HTTP/1.1
{
"destination_node_id": "72462999-933a-4be7-9ef5-0528f04c3870"
}
HTTP/1.1 201
Connection: close
Content-Length: 4
Content-Type: application/json
Date: Wed, 08 Jan 2020 02:25:51 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/docker/nodes/{node_id}/duplicate
true
@@ -0,0 +1,39 @@
curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes' -d '{"name": "PC TEST 1", "node_id": "0de29446-fa90-4e91-89f3-5ea84860f212", "path": "iou.bin", "startup_config_content": "hostname test"}'
POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes HTTP/1.1
{
"name": "PC TEST 1",
"node_id": "0de29446-fa90-4e91-89f3-5ea84860f212",
"path": "iou.bin",
"startup_config_content": "hostname test"
}
HTTP/1.1 201
Connection: close
Content-Length: 631
Content-Type: application/json
Date: Wed, 08 Jan 2020 02:25:56 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/iou/nodes
{
"application_id": 1,
"command_line": "",
"console": 5004,
"console_type": "telnet",
"ethernet_adapters": 2,
"l1_keepalives": false,
"md5sum": "e573e8f5c93c6c00783f20c7a170aa6c",
"name": "PC TEST 1",
"node_directory": "/tmp/pytest-of-grossmj/pytest-41/test_json4/project-files/iou/0de29446-fa90-4e91-89f3-5ea84860f212",
"node_id": "0de29446-fa90-4e91-89f3-5ea84860f212",
"nvram": 128,
"path": "iou.bin",
"project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80",
"ram": 256,
"serial_adapters": 2,
"status": "stopped",
"usage": "",
"use_default_iou_values": true
}
@@ -0,0 +1,21 @@
curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/fadca255-3eb8-44fa-9a14-31c52604d094/adapters/1/ports/0/nio' -d '{"ethernet_device": "docker0", "type": "nio_ethernet"}'
POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/fadca255-3eb8-44fa-9a14-31c52604d094/adapters/1/ports/0/nio HTTP/1.1
{
"ethernet_device": "docker0",
"type": "nio_ethernet"
}
HTTP/1.1 201
Connection: close
Content-Length: 64
Content-Type: application/json
Date: Wed, 08 Jan 2020 02:25:58 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/iou/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio
{
"ethernet_device": "docker0",
"type": "nio_ethernet"
}
@@ -0,0 +1,20 @@
curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/b63d611d-066b-4673-ad6c-c0e8a93cedbb/adapters/0/ports/0/start_capture' -d '{"capture_file_name": "test.pcap", "data_link_type": "DLT_EN10MB"}'
POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/b63d611d-066b-4673-ad6c-c0e8a93cedbb/adapters/0/ports/0/start_capture HTTP/1.1
{
"capture_file_name": "test.pcap",
"data_link_type": "DLT_EN10MB"
}
HTTP/1.1 200
Connection: close
Content-Length: 104
Content-Type: application/json
Date: Wed, 08 Jan 2020 02:25:59 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/iou/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/start_capture
{
"pcap_file_path": "/tmp/pytest-of-grossmj/pytest-41/test_json4/project-files/captures/test.pcap"
}
@@ -0,0 +1,14 @@
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 '{}'
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
{}
HTTP/1.1 204
Connection: close
Content-Length: 0
Content-Type: application/octet-stream
Date: Wed, 08 Jan 2020 02:25:59 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/iou/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/stop_capture
@@ -0,0 +1,17 @@
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"}'
POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/12cd096f-f0c1-45f9-ac57-360f1d379c48/duplicate HTTP/1.1
{
"destination_node_id": "3949cfaa-2574-4064-a088-5f48ae784e9b"
}
HTTP/1.1 201
Connection: close
Content-Length: 4
Content-Type: application/json
Date: Wed, 08 Jan 2020 02:26:09 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/iou/nodes/{node_id}/duplicate
true
@@ -0,0 +1,14 @@
curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/c9e6143c-cf69-416d-8935-8af81fb8ff1d/reload' -d '{}'
POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/c9e6143c-cf69-416d-8935-8af81fb8ff1d/reload HTTP/1.1
{}
HTTP/1.1 204
Connection: close
Content-Length: 0
Content-Type: application/octet-stream
Date: Wed, 08 Jan 2020 02:25:57 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/iou/nodes/{node_id}/reload
@@ -0,0 +1,36 @@
curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/03423f2a-311d-4436-8c9a-8b34945f6cd2/start' -d '{"iourc_content": "test"}'
POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/03423f2a-311d-4436-8c9a-8b34945f6cd2/start HTTP/1.1
{
"iourc_content": "test"
}
HTTP/1.1 200
Connection: close
Content-Length: 631
Content-Type: application/json
Date: Wed, 08 Jan 2020 02:25:57 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/iou/nodes/{node_id}/start
{
"application_id": 1,
"command_line": "",
"console": 5004,
"console_type": "telnet",
"ethernet_adapters": 2,
"l1_keepalives": false,
"md5sum": "e573e8f5c93c6c00783f20c7a170aa6c",
"name": "PC TEST 1",
"node_directory": "/tmp/pytest-of-grossmj/pytest-41/test_json4/project-files/iou/03423f2a-311d-4436-8c9a-8b34945f6cd2",
"node_id": "03423f2a-311d-4436-8c9a-8b34945f6cd2",
"nvram": 128,
"path": "iou.bin",
"project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80",
"ram": 256,
"serial_adapters": 2,
"status": "stopped",
"usage": "",
"use_default_iou_values": true
}
@@ -0,0 +1,14 @@
curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/5fcb7418-3e0c-4a47-8cff-c5e0b3e68000/stop' -d '{}'
POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/nodes/5fcb7418-3e0c-4a47-8cff-c5e0b3e68000/stop HTTP/1.1
{}
HTTP/1.1 204
Connection: close
Content-Length: 0
Content-Type: application/octet-stream
Date: Wed, 08 Jan 2020 02:25:57 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/iou/nodes/{node_id}/stop
@@ -0,0 +1,30 @@
curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes' -d '{"name": "Nat 1"}'
POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes HTTP/1.1
{
"name": "Nat 1"
}
HTTP/1.1 201
Connection: close
Content-Length: 335
Content-Type: application/json
Date: Wed, 08 Jan 2020 02:26:09 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/nat/nodes
{
"name": "Nat 1",
"node_id": "4b2c0443-0726-4507-a30b-7ac535b1bbaf",
"ports_mapping": [
{
"interface": "virbr0",
"name": "nat0",
"port_number": 0,
"type": "ethernet"
}
],
"project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80",
"status": "started"
}
@@ -0,0 +1,25 @@
curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/d8f89cb0-b60f-404a-8431-af581957e29c/adapters/0/ports/0/nio' -d '{"lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}'
POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/d8f89cb0-b60f-404a-8431-af581957e29c/adapters/0/ports/0/nio HTTP/1.1
{
"lport": 4242,
"rhost": "127.0.0.1",
"rport": 4343,
"type": "nio_udp"
}
HTTP/1.1 201
Connection: close
Content-Length: 89
Content-Type: application/json
Date: Wed, 08 Jan 2020 02:26:09 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/nat/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio
{
"lport": 4242,
"rhost": "127.0.0.1",
"rport": 4343,
"type": "nio_udp"
}
@@ -0,0 +1,20 @@
curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/bc78e678-408d-4d03-9670-c29da452f6c7/adapters/0/ports/0/start_capture' -d '{"capture_file_name": "test.pcap", "data_link_type": "DLT_EN10MB"}'
POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/nat/nodes/bc78e678-408d-4d03-9670-c29da452f6c7/adapters/0/ports/0/start_capture HTTP/1.1
{
"capture_file_name": "test.pcap",
"data_link_type": "DLT_EN10MB"
}
HTTP/1.1 200
Connection: close
Content-Length: 104
Content-Type: application/json
Date: Wed, 08 Jan 2020 02:26:16 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/nat/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/start_capture
{
"pcap_file_path": "/tmp/pytest-of-grossmj/pytest-41/test_json4/project-files/captures/test.pcap"
}
@@ -0,0 +1,14 @@
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 '{}'
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
{}
HTTP/1.1 204
Connection: close
Content-Length: 0
Content-Type: application/octet-stream
Date: Wed, 08 Jan 2020 02:26:16 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/nat/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/stop_capture
@@ -0,0 +1,17 @@
curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/ports/udp' -d '{}'
POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/ports/udp HTTP/1.1
{}
HTTP/1.1 201
Connection: close
Content-Length: 25
Content-Type: application/json
Date: Wed, 08 Jan 2020 02:26:16 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/ports/udp
{
"udp_port": 20000
}
@@ -0,0 +1,63 @@
curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes' -d '{"hda_disk_image": "hello.img", "name": "PC TEST 1", "qemu_path": "/tmp/tmphb4tqqk2/qemu-system-x86_64"}'
POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes HTTP/1.1
{
"hda_disk_image": "hello.img",
"name": "PC TEST 1",
"qemu_path": "/tmp/tmphb4tqqk2/qemu-system-x86_64"
}
HTTP/1.1 201
Connection: close
Content-Length: 1420
Content-Type: application/json
Date: Wed, 08 Jan 2020 02:26:28 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/qemu/nodes
{
"adapter_type": "e1000",
"adapters": 1,
"bios_image": "",
"bios_image_md5sum": null,
"boot_priority": "c",
"cdrom_image": "",
"cdrom_image_md5sum": null,
"command_line": "",
"console": 5004,
"console_type": "telnet",
"cpu_throttling": 0,
"cpus": 1,
"hda_disk_image": "hello.img",
"hda_disk_image_md5sum": "7d793037a0760186574b0282f2f435e7",
"hda_disk_interface": "ide",
"hdb_disk_image": "",
"hdb_disk_image_md5sum": null,
"hdb_disk_interface": "ide",
"hdc_disk_image": "",
"hdc_disk_image_md5sum": null,
"hdc_disk_interface": "ide",
"hdd_disk_image": "",
"hdd_disk_image_md5sum": null,
"hdd_disk_interface": "ide",
"initrd": "",
"initrd_md5sum": null,
"kernel_command_line": "",
"kernel_image": "",
"kernel_image_md5sum": null,
"legacy_networking": false,
"mac_address": "0c:dd:80:dd:e2:00",
"name": "PC TEST 1",
"node_directory": "/tmp/tmp3gc2avyo/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/qemu/2320a0b9-ed9b-45d9-9bef-c6d13bd9dde2",
"node_id": "2320a0b9-ed9b-45d9-9bef-c6d13bd9dde2",
"on_close": "power_off",
"options": "",
"platform": "x86_64",
"process_priority": "low",
"project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80",
"qemu_path": "/tmp/tmphb4tqqk2/qemu-system-x86_64",
"ram": 256,
"status": "stopped",
"usage": ""
}
@@ -0,0 +1,25 @@
curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/5048489f-46b4-4720-bee9-f4cf1ec7af49/adapters/1/ports/0/nio' -d '{"lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}'
POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/5048489f-46b4-4720-bee9-f4cf1ec7af49/adapters/1/ports/0/nio HTTP/1.1
{
"lport": 4242,
"rhost": "127.0.0.1",
"rport": 4343,
"type": "nio_udp"
}
HTTP/1.1 201
Connection: close
Content-Length: 89
Content-Type: application/json
Date: Wed, 08 Jan 2020 02:26:44 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/qemu/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio
{
"lport": 4242,
"rhost": "127.0.0.1",
"rport": 4343,
"type": "nio_udp"
}
@@ -0,0 +1,20 @@
curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/40fc7ce3-f4fe-469e-a94a-fb95906d9e22/adapters/0/ports/0/start_capture' -d '{"capture_file_name": "test.pcap", "data_link_type": "DLT_EN10MB"}'
POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/40fc7ce3-f4fe-469e-a94a-fb95906d9e22/adapters/0/ports/0/start_capture HTTP/1.1
{
"capture_file_name": "test.pcap",
"data_link_type": "DLT_EN10MB"
}
HTTP/1.1 200
Connection: close
Content-Length: 123
Content-Type: application/json
Date: Wed, 08 Jan 2020 02:27:24 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/qemu/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/start_capture
{
"pcap_file_path": "/tmp/tmp3gc2avyo/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/captures/test.pcap"
}
@@ -0,0 +1,14 @@
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 '{}'
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
{}
HTTP/1.1 204
Connection: close
Content-Length: 0
Content-Type: application/octet-stream
Date: Wed, 08 Jan 2020 02:27:24 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/qemu/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/stop_capture
@@ -0,0 +1,17 @@
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"}'
POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/839fb609-bd90-4a20-b496-6e225594c697/duplicate HTTP/1.1
{
"destination_node_id": "eb9e761d-0029-4644-b586-dc903e7abd71"
}
HTTP/1.1 201
Connection: close
Content-Length: 4
Content-Type: application/json
Date: Wed, 08 Jan 2020 02:27:21 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/qemu/nodes/{node_id}/duplicate
true
@@ -0,0 +1,14 @@
curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/314c42be-e138-42f3-a59e-a7c3c2e6514f/reload' -d '{}'
POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/314c42be-e138-42f3-a59e-a7c3c2e6514f/reload HTTP/1.1
{}
HTTP/1.1 204
Connection: close
Content-Length: 0
Content-Type: application/octet-stream
Date: Wed, 08 Jan 2020 02:26:33 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/qemu/nodes/{node_id}/reload
@@ -0,0 +1,14 @@
curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/ad58dbd9-6558-4750-bec5-1de4cf77ed70/resume' -d '{}'
POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/ad58dbd9-6558-4750-bec5-1de4cf77ed70/resume HTTP/1.1
{}
HTTP/1.1 204
Connection: close
Content-Length: 0
Content-Type: application/octet-stream
Date: Wed, 08 Jan 2020 02:26:35 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/qemu/nodes/{node_id}/resume
@@ -0,0 +1,59 @@
curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/9a4b2f04-74a6-4528-a6a7-b02365417fe9/start' -d '{}'
POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/9a4b2f04-74a6-4528-a6a7-b02365417fe9/start HTTP/1.1
{}
HTTP/1.1 200
Connection: close
Content-Length: 1381
Content-Type: application/json
Date: Wed, 08 Jan 2020 02:26:30 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/qemu/nodes/{node_id}/start
{
"adapter_type": "e1000",
"adapters": 1,
"bios_image": "",
"bios_image_md5sum": null,
"boot_priority": "c",
"cdrom_image": "",
"cdrom_image_md5sum": null,
"command_line": "",
"console": 5004,
"console_type": "telnet",
"cpu_throttling": 0,
"cpus": 1,
"hda_disk_image": "",
"hda_disk_image_md5sum": null,
"hda_disk_interface": "ide",
"hdb_disk_image": "",
"hdb_disk_image_md5sum": null,
"hdb_disk_interface": "ide",
"hdc_disk_image": "",
"hdc_disk_image_md5sum": null,
"hdc_disk_interface": "ide",
"hdd_disk_image": "",
"hdd_disk_image_md5sum": null,
"hdd_disk_interface": "ide",
"initrd": "",
"initrd_md5sum": null,
"kernel_command_line": "",
"kernel_image": "",
"kernel_image_md5sum": null,
"legacy_networking": false,
"mac_address": "0c:dd:80:7f:e9:00",
"name": "PC TEST 1",
"node_directory": "/tmp/tmp3gc2avyo/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/qemu/9a4b2f04-74a6-4528-a6a7-b02365417fe9",
"node_id": "9a4b2f04-74a6-4528-a6a7-b02365417fe9",
"on_close": "power_off",
"options": "",
"platform": "x86_64",
"process_priority": "low",
"project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80",
"qemu_path": "/tmp/tmphb4tqqk2/qemu-system-x86_64",
"ram": 256,
"status": "stopped",
"usage": ""
}
@@ -0,0 +1,14 @@
curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/6aacea07-76ca-4fb9-94d2-24da00e33037/stop' -d '{}'
POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/6aacea07-76ca-4fb9-94d2-24da00e33037/stop HTTP/1.1
{}
HTTP/1.1 204
Connection: close
Content-Length: 0
Content-Type: application/octet-stream
Date: Wed, 08 Jan 2020 02:26:31 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/qemu/nodes/{node_id}/stop
@@ -0,0 +1,14 @@
curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/073074f6-83d4-40b4-8042-771b3df49f60/suspend' -d '{}'
POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/nodes/073074f6-83d4-40b4-8042-771b3df49f60/suspend HTTP/1.1
{}
HTTP/1.1 204
Connection: close
Content-Length: 0
Content-Type: application/octet-stream
Date: Wed, 08 Jan 2020 02:26:33 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/qemu/nodes/{node_id}/suspend
@@ -0,0 +1,28 @@
curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes' -d '{"name": "TraceNG TEST 1"}'
POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes HTTP/1.1
{
"name": "TraceNG TEST 1"
}
HTTP/1.1 201
Connection: close
Content-Length: 443
Content-Type: application/json
Date: Wed, 08 Jan 2020 02:27:26 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/traceng/nodes
{
"command_line": "",
"console": null,
"console_type": "none",
"default_destination": "",
"ip_address": "",
"name": "TraceNG TEST 1",
"node_directory": "/tmp/tmp3gc2avyo/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/traceng/f27f5247-e419-4404-9150-b1bb9306d783",
"node_id": "f27f5247-e419-4404-9150-b1bb9306d783",
"project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80",
"status": "stopped"
}
@@ -0,0 +1,25 @@
curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/243bc8d3-6531-4e9e-99c6-23ad9a4898c8/adapters/0/ports/0/nio' -d '{"lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}'
POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/243bc8d3-6531-4e9e-99c6-23ad9a4898c8/adapters/0/ports/0/nio HTTP/1.1
{
"lport": 4242,
"rhost": "127.0.0.1",
"rport": 4343,
"type": "nio_udp"
}
HTTP/1.1 201
Connection: close
Content-Length: 89
Content-Type: application/json
Date: Wed, 08 Jan 2020 02:27:26 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/traceng/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio
{
"lport": 4242,
"rhost": "127.0.0.1",
"rport": 4343,
"type": "nio_udp"
}
@@ -0,0 +1,20 @@
curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/770d23d8-e568-4fc4-8497-216c2e129d53/adapters/0/ports/0/start_capture' -d '{"capture_file_name": "test.pcap", "data_link_type": "DLT_EN10MB"}'
POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/770d23d8-e568-4fc4-8497-216c2e129d53/adapters/0/ports/0/start_capture HTTP/1.1
{
"capture_file_name": "test.pcap",
"data_link_type": "DLT_EN10MB"
}
HTTP/1.1 200
Connection: close
Content-Length: 123
Content-Type: application/json
Date: Wed, 08 Jan 2020 02:27:27 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/traceng/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/start_capture
{
"pcap_file_path": "/tmp/tmp3gc2avyo/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/captures/test.pcap"
}
@@ -0,0 +1,14 @@
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 '{}'
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
{}
HTTP/1.1 204
Connection: close
Content-Length: 0
Content-Type: application/octet-stream
Date: Wed, 08 Jan 2020 02:27:27 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/traceng/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/stop_capture
@@ -0,0 +1,17 @@
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"}'
POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/fe70324f-78a3-4ada-a675-bd693250d403/duplicate HTTP/1.1
{
"destination_node_id": "64e0db26-82e6-416a-ac11-97add4614131"
}
HTTP/1.1 201
Connection: close
Content-Length: 4
Content-Type: application/json
Date: Wed, 08 Jan 2020 02:27:27 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/traceng/nodes/{node_id}/duplicate
true
@@ -0,0 +1,14 @@
curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/d12252b3-0698-441d-b7a8-cf0f5c8de536/reload' -d '{}'
POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/d12252b3-0698-441d-b7a8-cf0f5c8de536/reload HTTP/1.1
{}
HTTP/1.1 204
Connection: close
Content-Length: 0
Content-Type: application/octet-stream
Date: Wed, 08 Jan 2020 02:27:26 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/traceng/nodes/{node_id}/reload
@@ -0,0 +1,28 @@
curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/9ba1f859-a8f5-46b7-beda-ce49116bdce7/start' -d '{"destination": "192.168.1.2"}'
POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/9ba1f859-a8f5-46b7-beda-ce49116bdce7/start HTTP/1.1
{
"destination": "192.168.1.2"
}
HTTP/1.1 200
Connection: close
Content-Length: 443
Content-Type: application/json
Date: Wed, 08 Jan 2020 02:27:26 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/traceng/nodes/{node_id}/start
{
"command_line": "",
"console": null,
"console_type": "none",
"default_destination": "",
"ip_address": "",
"name": "TraceNG TEST 1",
"node_directory": "/tmp/tmp3gc2avyo/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/traceng/9ba1f859-a8f5-46b7-beda-ce49116bdce7",
"node_id": "9ba1f859-a8f5-46b7-beda-ce49116bdce7",
"project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80",
"status": "stopped"
}
@@ -0,0 +1,14 @@
curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/797b0b03-d612-437a-91cc-f6b6a2e1341f/stop' -d '{}'
POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/traceng/nodes/797b0b03-d612-437a-91cc-f6b6a2e1341f/stop HTTP/1.1
{}
HTTP/1.1 204
Connection: close
Content-Length: 0
Content-Type: application/octet-stream
Date: Wed, 08 Jan 2020 02:27:26 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/traceng/nodes/{node_id}/stop
@@ -0,0 +1,36 @@
curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes' -d '{"linked_clone": false, "name": "VM1", "vmname": "VM1"}'
POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes HTTP/1.1
{
"linked_clone": false,
"name": "VM1",
"vmname": "VM1"
}
HTTP/1.1 201
Connection: close
Content-Length: 477
Content-Type: application/json
Date: Wed, 08 Jan 2020 02:27:27 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/virtualbox/nodes
{
"adapter_type": "Intel PRO/1000 MT Desktop (82540EM)",
"adapters": 0,
"console": 5004,
"console_type": "telnet",
"headless": false,
"linked_clone": false,
"name": "VM1",
"node_directory": null,
"node_id": "e7a8f831-0fb0-4946-a188-d3ac4112e097",
"on_close": "power_off",
"project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80",
"ram": 0,
"status": "stopped",
"usage": "",
"use_any_adapter": false,
"vmname": "VM1"
}
@@ -0,0 +1,25 @@
curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/85a79b7b-1c7a-49a9-bdda-b97c036420b5/adapters/0/ports/0/nio' -d '{"lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}'
POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/85a79b7b-1c7a-49a9-bdda-b97c036420b5/adapters/0/ports/0/nio HTTP/1.1
{
"lport": 4242,
"rhost": "127.0.0.1",
"rport": 4343,
"type": "nio_udp"
}
HTTP/1.1 201
Connection: close
Content-Length: 89
Content-Type: application/json
Date: Wed, 08 Jan 2020 02:27:27 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio
{
"lport": 4242,
"rhost": "127.0.0.1",
"rport": 4343,
"type": "nio_udp"
}
@@ -0,0 +1,20 @@
curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/e99d891a-06ed-4923-9110-4dfae366af6d/adapters/0/ports/0/start_capture' -d '{"capture_file_name": "test.pcap", "data_link_type": "DLT_EN10MB"}'
POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/e99d891a-06ed-4923-9110-4dfae366af6d/adapters/0/ports/0/start_capture HTTP/1.1
{
"capture_file_name": "test.pcap",
"data_link_type": "DLT_EN10MB"
}
HTTP/1.1 200
Connection: close
Content-Length: 123
Content-Type: application/json
Date: Wed, 08 Jan 2020 02:27:28 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/start_capture
{
"pcap_file_path": "/tmp/tmp3gc2avyo/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/captures/test.pcap"
}
@@ -0,0 +1,14 @@
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 '{}'
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
{}
HTTP/1.1 204
Connection: close
Content-Length: 0
Content-Type: application/octet-stream
Date: Wed, 08 Jan 2020 02:27:28 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/stop_capture
@@ -0,0 +1,14 @@
curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/2e55edb4-1f15-4b41-8107-bf931e81f779/reload' -d '{}'
POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/2e55edb4-1f15-4b41-8107-bf931e81f779/reload HTTP/1.1
{}
HTTP/1.1 204
Connection: close
Content-Length: 0
Content-Type: application/octet-stream
Date: Wed, 08 Jan 2020 02:27:27 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id}/reload
@@ -0,0 +1,14 @@
curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/7e8bf660-9d03-4005-80b6-f63666aa1a1d/resume' -d '{}'
POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/7e8bf660-9d03-4005-80b6-f63666aa1a1d/resume HTTP/1.1
{}
HTTP/1.1 204
Connection: close
Content-Length: 0
Content-Type: application/octet-stream
Date: Wed, 08 Jan 2020 02:27:27 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id}/resume
@@ -0,0 +1,14 @@
curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/311dba8a-1030-46da-94d8-76cf6430cc5e/start' -d '{}'
POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/311dba8a-1030-46da-94d8-76cf6430cc5e/start HTTP/1.1
{}
HTTP/1.1 204
Connection: close
Content-Length: 0
Content-Type: application/octet-stream
Date: Wed, 08 Jan 2020 02:27:27 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id}/start
@@ -0,0 +1,14 @@
curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/40d1d4a5-7e95-41fc-8c51-1883dc9eb71b/stop' -d '{}'
POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/40d1d4a5-7e95-41fc-8c51-1883dc9eb71b/stop HTTP/1.1
{}
HTTP/1.1 204
Connection: close
Content-Length: 0
Content-Type: application/octet-stream
Date: Wed, 08 Jan 2020 02:27:27 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id}/stop
@@ -0,0 +1,14 @@
curl -i -X POST 'http://localhost:3080/v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/079cef97-d46e-4033-b1b5-96e032817a0e/suspend' -d '{}'
POST /v2/compute/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/nodes/079cef97-d46e-4033-b1b5-96e032817a0e/suspend HTTP/1.1
{}
HTTP/1.1 204
Connection: close
Content-Length: 0
Content-Type: application/octet-stream
Date: Wed, 08 Jan 2020 02:27:27 GMT
Server: Python/3.6 GNS3/2.2.4dev1
X-Route: /v2/compute/projects/{project_id}/virtualbox/nodes/{node_id}/suspend
Loaded 100 of 1260 files, more files were not shown because too many files have changed in this diff. Show more