Compare commits

..

315 Commits

Author SHA1 Message Date
976154fd0b 1.4.2 2016-02-17 19:38:34 +01:00
dea68bcb28 Fix missing format in IOU export 2016-02-11 09:15:48 +01:00
1fb4d191c9 Fix number of arguments to the UDP errors on VBOX 2016-02-11 09:02:38 +01:00
167a0b8435 Add verification when UDP tunnel is created in a VirtualBox VM. Ref #899. 2016-02-10 19:08:34 -07:00
5842487cd0 Fixes VMware linked clone cleanup bug. Fixes #420. 2016-02-10 11:26:40 -07:00
942d07c8ce Removed docker support from 1.4 (drop unused code) 2016-02-08 13:40:14 +01:00
3fc64bced2 Fix a crash if you create a file named IOS in the image dir
Fix #419
2016-02-05 10:29:27 +01:00
373113545f Code cleanup 2016-02-05 10:07:13 +01:00
5bee927481 Disallow creating project with " in the path
It's not supported by dynamips.

Fix https://github.com/GNS3/gns3-gui/issues/987
2016-02-04 11:47:48 +01:00
4f61443b20 Always look at the registry to find vmrun.exe on Windows. 2016-02-03 19:08:41 -07:00
4673424da7 Check for VMware VIX library version. Fixes #413. 2016-02-03 18:15:33 -07:00
40261ec99c Fixes VDE not working #345. 2016-02-03 16:26:15 -07:00
3e4423f663 Merge pull request #418 from GNS3/no_spice
Do not list qemu binary with -spice in the name
2016-02-03 13:45:03 -08:00
88e8c36d1c Merge pull request #416 from GNS3/command_line
Send command line used to start the VM to client
2016-02-03 11:10:37 -08:00
537122daba Do not list qemu binary with -spice in the name
It's create confusion and you can enable spice with the -spice
options.

Fix https://github.com/GNS3/gns3-gui/issues/981
2016-02-03 16:40:39 +01:00
fd22cd8361 Send command line used to start the VM to client
Add a command_line attribute to the VM object with
the command line used to start the VM.

Now /start return the object in order to get
this new attribute. And the HTTP status code
is 200 instead of 204 because 204 disallow body.

Support:
* Qemu
* Dynamips
* IOU

Ref https://github.com/GNS3/gns3-gui/issues/513
2016-02-02 18:25:17 +01:00
71c3bda0a5 Fix crash if you have a { in your user name
Fix #414
2016-02-02 10:05:08 +01:00
53d60bc71a 1.4.2dev1 2016-02-01 17:48:10 +01:00
ce7ac0505a 1.4.1 2016-02-01 17:46:05 +01:00
bf316f35cc VMware raise error if version is not found
Fix #972
2016-02-01 14:26:55 +01:00
29089f1884 Cleanup an old kvm-ok test 2016-01-28 17:54:29 +01:00
889ea14973 For topologies before 1.4 manage qemu missing
If qemu is missing for topologies before 1.4 we try
to search it in the path.

Ref #921
2016-01-28 16:24:24 +01:00
2e05290206 Fixes issue with packet capture on VMware VMs. Fixes #396. 2016-01-26 14:45:55 -07:00
39ddc4e8c1 Fixes concurrency issue when closing multiple VMware linked clone VMs. Fixes #410. 2016-01-26 14:23:01 -07:00
a279bfe1d9 Fixes "can only use tap interfaces that both already exist and are up". Fixes #399. 2016-01-26 13:48:58 -07:00
35e045a22e Merge pull request #412 from GNS3/stats_stream
Send machine stats via the notification stream
2016-01-26 08:52:16 -08:00
58b998600e Send machine stats via the notification stream
Fix #252
2016-01-26 16:35:00 +01:00
119a2a3b66 Add test for unicode char in images path
Ref #401
2016-01-26 15:32:40 +01:00
ee2104ba35 Check for /dev/kvm instead of kvm-ok
Fix #411
2016-01-26 13:58:29 +01:00
425a05ecd8 Bump to 1.4.1dev2 2016-01-26 13:50:13 +01:00
cd9cb3eb6a Merge pull request #408 from GNS3/asa8_warning
Show a warning when starting ASA8
2016-01-22 10:53:19 -08:00
5617ddc4cc Show a warning when starting ASA8 2016-01-22 19:46:05 +01:00
e9c2a76f43 Fix error when setting Qemu VM boot to 'cd' (HDD or CD/DVD-ROM)
Fix #400
2016-01-20 13:19:33 +01:00
65a05791ce Merge pull request #394 from boenrobot/vmware_VMsFolder_fix
VMware default VM location
2016-01-19 19:02:06 -08:00
a9eae691f6 Fixed the VMware default VM location on Windows, so that it doesn't assume the "Documents" folder is within the %USERPROFILE% folder, and also support Windows Server's folder (which is "My Virtual Machines" instead of "Virtual Machines"). 2016-01-18 00:48:24 +02:00
0a4a01fed0 Merge pull request #393 from GNS3/avoid_losing_config
Improve dynamips startup_config dump
2016-01-17 09:45:00 -08:00
2938b97bd4 Improve dynamips startup_config dump
Two change:
1) Dump the config when you stop the node. This avoid scenar
2) Disallow empty startup config. If it's empty send ! it's
avoid dynamips crash

Fix #914
2016-01-15 18:02:52 +01:00
f83e878d89 Dump environnement to server debug log
Ref https://github.com/GNS3/gns3-gui/issues/921
2016-01-15 10:11:32 +01:00
8225bad76b Fix usage of qemu 0.10 on Windows
Fix #392
2016-01-14 17:40:58 +01:00
ba4128f57b Show hostname when the hostname is missing in the iourc.txt 2016-01-13 16:37:50 +01:00
bc3016eec5 Merge branch '1.4' 2016-01-13 11:39:00 +01:00
a8c03f754b 1.4.1dev1 2016-01-13 09:22:28 +01:00
e3beea0378 1.4.0 2016-01-12 17:40:47 +01:00
bcd9851eee 1.4.0dev14 2016-01-06 14:32:39 +01:00
e599c28c1c 1.4.0rc3 2016-01-05 18:43:58 +01:00
afb5b6d6e8 API documentation update 2016-01-04 17:04:15 +01:00
e73f81c9a3 Merge pull request #388 from GNS3/boenrobot-addCapabilities
Add  qemu capabilities
2016-01-04 16:34:33 +01:00
d184b65800 Improve PR #386
* Add more test
* Check to kvmi-ok is asynchronous
2016-01-04 16:30:06 +01:00
fba049767a Merge branch 'addCapabilities' of https://github.com/boenrobot/gns3-server into boenrobot-addCapabilities 2016-01-04 12:09:44 +01:00
fab8b3f46f Fix race condition when killing iouyap
Fix #387
2016-01-04 10:42:46 +01:00
137cf59e97 Catch exception if we can't change process priority on Windows
Fix #380
2016-01-03 21:24:18 +01:00
d00efbfb0f Adds a handler for getting the Qemu related capabilities of the server. Currently includes just a check for KVM architectures. 2016-01-03 19:38:16 +02:00
061a6e3b25 Merge pull request #385 from boenrobot/qemuHdbInterfaceFix
Fixed showing of Qemu hdb_disk_interface
2016-01-01 13:17:19 -08:00
a4d9f95c9b Fixed showing of Qemu hdb_disk_interface - it showed hda_disk_interface instead, which resulted in an odd visual glitch in the GUI. 2016-01-01 02:44:23 +02:00
38622c4da3 Merge pull request #381 from boenrobot/noCwdBat
CWD independance
2015-12-24 14:56:45 -08:00
e5e96ee8b4 Made the gns3server.bat successfully start the server independent of the CWD at the time of running. It's now relative to the location of the .bat file itself. 2015-12-24 16:45:02 +02:00
31046358cc Add more informations in the debug status page
* Number of VM in a project
* Number of client connected
2015-12-22 15:19:38 +01:00
a0987bbc92 Fix status link in GNS3 homepage 2015-12-22 14:58:51 +01:00
61cf91d83c Fix tests on Windows
Fix #377
2015-12-22 13:16:30 +01:00
28533cfdac Cleanup 2015-12-22 12:51:43 +01:00
095ef7994a Support building any branch 2015-12-21 11:35:29 +01:00
8312a54615 Fix missing boot priority order 2015-12-21 10:17:22 +01:00
286cd7a3ac A debug status page embed in the server 2015-12-18 14:38:26 +01:00
c2d313f5a7 Lock py.test versions 2015-12-16 14:58:16 +01:00
48678506f7 Ignore py.test .cache directory 2015-12-16 14:48:03 +01:00
7ce17cc48f Install dependencies before setup.py install
This fix issues with aiohttp recent versions not supported
on Python 3.4.0
2015-12-16 14:46:26 +01:00
480ca037cd Fix test on Windows
Sadly python crash on my Windows and I can't run the full test
suite.

Fix #377
2015-12-14 16:06:51 +01:00
ad4501838b Merge branch 'master' into unstable 2015-12-11 14:35:08 +01:00
ce5a29b29a 1.4.0dev13 2015-12-11 14:34:13 +01:00
a2f0745e81 1.3.14dev1 2015-12-11 14:33:37 +01:00
38745be5fe 1.3.13 2015-12-11 09:21:20 +01:00
a827f6b2de 1.3.12 2015-12-11 09:18:27 +01:00
55034dd24f Update links for new website. 2015-12-10 15:00:16 -07:00
55dc0d587d 1.4.0rc2 2015-12-10 19:41:28 +01:00
a9e1801e7d Merge pull request #374 from GNS3/patch_used_port
Replace by another TCP port if port is already used
2015-12-09 21:24:04 -08:00
1e97a544e6 1.4.0dev12 2015-12-08 16:27:37 +01:00
7dfb386a66 Add log about wher iou capture packet 2015-12-08 16:11:40 +01:00
2aaad4749b Replace by another TCP port if port is already used
Another version of #370

This time we replace a free TCP port if port is used and raise
a warning to the user.
2015-12-07 12:26:46 +01:00
f3b71dcdef Fix ProcessLookupError in Qemu
Fix #373
2015-12-07 10:50:34 +01:00
a67b218bde Increase vmrun timeout to 120 seconds. Ref #360. 2015-12-05 18:37:34 -07:00
1071b6366f Fixes termination notification to indicate the right process name (IOU vs iouyap). Ref #359. 2015-12-05 18:24:08 -07:00
19d5c1c05b Fixes error with non initialized uBridge. Fixes #367. 2015-12-05 17:36:55 -07:00
a6826fe0bf Remove debug that can crash qemu
Fix #365
2015-12-01 19:30:39 +01:00
42a4df5079 Support VM usage for qemu
Ref https://github.com/GNS3/gns3-gui/issues/829
2015-12-01 10:54:51 +01:00
e626c0b55c Raise an error if psutil version is invalid
Fix #361
2015-12-01 09:42:36 +01:00
02cabfbffa Contributing instructions 2015-11-30 14:15:54 +01:00
535afdba5e 1.4.0rc1 2015-11-12 17:52:15 +01:00
5b347fe48f Raise error if server received windows path 2015-11-12 15:38:47 +01:00
58e7fa2f01 Update sentry key
Fix #357
2015-11-12 11:25:23 +01:00
c7cc155b78 Merge branch 'master' into unstable 2015-11-12 10:55:19 +01:00
11cf2294da Remove NIO FIFO and Mcast (unused). Fixes #348. 2015-11-11 16:20:28 -07:00
3f4da9050c Support VPCS 0.6.1 2015-11-11 21:57:58 +01:00
63edcc1c34 Fix duplicate of -no-kvm options
Fix #356
2015-11-10 16:25:02 +01:00
caade47e16 Fix tests about images paths security 2015-11-10 15:21:10 +01:00
390c88d7cd Raise an error if user send a non local path to remote server 2015-11-09 19:02:10 +01:00
669295131b Fix qemu tests on Linux 2015-11-09 15:01:02 +01:00
ab4c8665e4 Fix backup projects and a qemu broken tests 2015-11-09 14:17:19 +01:00
ac16ee5bc6 Fix minor issues 2015-11-09 12:32:36 +01:00
da240f21ba Apply pep8 fix 2015-11-09 12:28:00 +01:00
f01a6dcaaf Fix qemu tests 2015-11-09 12:23:50 +01:00
1248584841 Cleanup unused and duplicates 2015-11-09 12:14:25 +01:00
58d2a5d4b0 Support VPCS 0.6.1
Fix #347
2015-11-09 10:26:16 +01:00
bd47c21514 Sets console end port to 7000. Fixes #343. 2015-11-08 18:14:55 -07:00
c3e99bfc1d Drop netifaces (replaced by psutil). Fixes #344. 2015-11-08 13:34:27 -07:00
9ca72f3bbc Correctly display log messages. 2015-11-08 12:01:25 -07:00
e4735308f8 Merge remote-tracking branch 'origin/master' 2015-11-07 12:18:05 -07:00
13a3e8f324 Tentative fix for "WinError 64 The specified network name is no longer available" issues. 2015-11-07 12:17:53 -07:00
6fbc84c0dc Return relative path for dynamips images
Fix https://github.com/GNS3/gns3-gui/issues/775
2015-11-05 16:47:37 +01:00
7ee12edb5c Fix add existing IOS not working
Fix https://github.com/GNS3/gns3-gui/issues/775
2015-11-05 16:28:11 +01:00
7e7c8a5450 Correctly enable faulthandler for dev version 2015-11-05 10:50:37 +01:00
d9f94e653b Allow vpcs 0.8b 2015-11-04 14:37:27 +01:00
f1e9262c94 Avoid test crash if GNS3 is running on the same computer 2015-11-03 21:06:30 +01:00
12f027a882 Allow to return an empty project name because it's allowed in creation 2015-11-03 17:11:58 +01:00
7967a922bc Merge branch 'master' into unstable 2015-11-03 12:39:01 +01:00
bd54c55ae1 Fix minor errors reported by codacy.com 2015-11-03 12:34:22 +01:00
a9d0951bb6 Test with python 3.5 2015-11-03 10:59:03 +01:00
ef5ce99125 1.4.0dev11 2015-11-02 21:30:22 +01:00
f313ac10c3 1.4.0b5 2015-11-02 10:55:32 -07:00
69c38c6414 Use pytest 2.8 so it's work with Python 3.5 without warning 2015-11-02 16:35:12 +01:00
82540e5366 Fixes wait for named pipe creation. 2015-11-01 20:52:07 -07:00
32f9baf682 Fixes Windows named pipe issue. Fixes #340. 2015-11-01 18:51:12 -07:00
a961387af9 Add doc on how to got code coverage 2015-10-31 21:27:10 +01:00
6edb41ded7 Merge branch 'master' into unstable 2015-10-30 15:17:17 +01:00
42c8fb7c29 Raise an error when you use a port outside the ranges
Fix #739
2015-10-30 15:15:28 +01:00
c2a08a391c Fix crash in IOU config export
Fix #335
2015-10-21 14:28:39 +02:00
7d82a77ba7 Freeze requirements for aiohttp because 0.18 doesn't support Python
3.4.0
2015-10-20 08:39:15 +02:00
db2aa56e98 1.4.0dev10 2015-10-19 19:13:58 +02:00
d5dba699c5 1.4.0b4 2015-10-19 11:09:18 -06:00
ce4727e51a Support for modifications to a base Qemu VM (not a linked clone). 2015-10-18 19:19:27 -06:00
2fbc391319 Force canceling all task when shutdown server
https://bugs.python.org/issue24080

Fix #705
2015-10-16 20:42:13 +02:00
d979f08c93 Update api documentation 2015-10-16 19:05:29 +02:00
504a4af4ab Enforce console port for VNC
Ref https://github.com/GNS3/gns3-gui/issues/721
2015-10-16 18:16:07 +02:00
6e36687347 Fixes issue when loading a project using VMware vmnet interfaces. Fixes #319. 2015-10-14 21:39:17 -06:00
57bbd63085 Support for NAT connection with cloud for VMware VMs. Fixes #322. 2015-10-12 17:07:39 -06:00
b53f0e89ce Change message when VMware is not installed on Linux. Ref #326. 2015-10-12 16:27:31 -06:00
ac75977ae0 Send a warning notification if there is not enough RAM left to start a VM. Implements #329. 2015-10-12 15:57:37 -06:00
c700804014 Merge branch 'master' into unstable 2015-10-12 17:09:33 +02:00
91c2bd7e98 Asyncio qemu fix and raise error if coroutine not used 2015-10-12 17:06:50 +02:00
0a536278fc Fix asyncio error when closing the app
Fix #310, https://github.com/GNS3/gns3-gui/issues/705
2015-10-12 16:16:44 +02:00
5cb2b33a99 Removes VMware lock check. Fixes #328. 2015-10-11 16:41:55 -06:00
133b01b2a6 Merge remote-tracking branch 'origin/unstable' into unstable 2015-10-11 15:51:05 -06:00
ee6ef9f3d5 Wait for pipe file to be created before starting the remote console for VMware and VirtualBox VMs. Fixes #331. 2015-10-11 15:50:50 -06:00
ccd45c2f45 Merge branch 'master' into unstable 2015-10-08 11:30:16 +02:00
a6286db7b1 Release UDP ports when closing a Qemu VM. Fixes #323. 2015-10-07 20:48:36 -06:00
6cd790880c 1.3.12dev1 2015-10-07 18:26:18 +02:00
b19bfa0270 1.3.11 release 2015-10-07 18:24:03 +02:00
9c23093510 Merge branch 'master' into unstable 2015-10-07 16:44:50 +02:00
98ac295e2e Escape other usage of glob
Fix #332
2015-10-07 16:42:34 +02:00
c50c735e86 Merge branch 'master' into unstable 2015-10-07 13:51:28 +02:00
acd5c992ba Fix Dynamips identifier is already used by another router
Fix #327
2015-10-07 13:50:40 +02:00
9b740e85d0 Fix Dynamips identifier is already used by another router
Fix #327
2015-10-07 11:34:27 +02:00
da7f910482 glob.escape is available with Python 3.4 2015-10-07 10:27:42 +02:00
4c13f8e6ea Merge branch 'master' into unstable 2015-10-07 10:27:06 +02:00
4232ea8a00 Protect dynamips against bad glob
Fix #332
2015-10-07 10:26:37 +02:00
ec7a9615ac Fix issue with Qemu networking following merge 2015-10-07 09:01:17 +02:00
5e3ce48a52 Merge branch 'master' into unstable 2015-10-06 19:19:56 +02:00
3d7d8682ee OVA file support 2015-10-06 17:50:54 +02:00
034ac392b7 Support listing images in subdirectories
It's a part of the OVA support:
https://github.com/GNS3/gns3-gui/issues/700
2015-10-05 11:07:15 +02:00
bfe9c117ba Fix tests 2015-10-05 09:14:55 +02:00
fc5afa6676 Catch ProcessLookupError in Qemu VM. 2015-10-04 14:20:44 -06:00
3f86df5169 Fixes uncalled coroutine. 2015-10-04 07:00:47 -06:00
970f22a83e Use the correct UDP tunnel Qemu syntax for version > 1.1.0 when legacy networking is enabled. 2015-10-04 06:41:39 -06:00
dd7f6eb021 Fix crash 2015-10-02 15:04:42 +02:00
d19b3f15ed VMware player linux support
Fix #326
2015-10-02 11:04:54 +02:00
80d99ec395 Fixes some minor issues. 2015-09-29 14:15:01 -06:00
8560521028 Merge remote-tracking branch 'origin/master' 2015-09-29 06:58:33 -06:00
e63e3280a1 Prevent launching a packet capture with a non-ASCII path when using Dynamips. 2015-09-29 06:56:01 -06:00
9737783eb6 Do not require a TAP interface to already exist. Fixes #321. 2015-09-26 10:09:50 -06:00
09aa31fb43 Do not automatically delete Dynamips bootflash file because they are necessary to restore VLANs on the c3600 platform. 2015-09-23 13:42:37 +02:00
d01a8bfb34 Bump version to 1.4.0.dev9 2015-09-22 16:07:21 -06:00
6ca0154435 Prepare 1.4.0b3 2015-09-22 17:37:44 +02:00
e7ea9e8047 Merge branch 'master' into unstable 2015-09-22 14:40:13 +02:00
bfe3b12342 Fix dynamips configuration lost when you delete a node
Fix #316
2015-09-22 14:39:21 +02:00
bf0813b4b9 Merge branch 'master' into unstable 2015-09-22 13:46:08 +02:00
c43960fbfd Clarify error message when we got UTF-8 chars in the iourc file
Fix #307
2015-09-22 13:45:10 +02:00
6a6beb752a Merge remote-tracking branch 'origin/master' into unstable 2015-09-22 11:03:41 +02:00
2c3d7510be Fixes version mismatch issue. 2015-09-20 13:28:37 -06:00
5bcabc705f Use custom VMnet interfaces without host adapter when uBridge is not used. Fixes #673. 2015-09-20 13:19:57 -06:00
c5ce6af872 Bump version to 1.4.0dev8 2015-09-18 15:41:34 -06:00
b90df5806d Automatically add the -no-kvm option if -icount is detected to help with the migration of ASA VMs created before version 1.4 2015-09-18 15:40:56 -06:00
a016c458a6 1.4.0 beta2 2015-09-17 16:46:22 +02:00
b1f3210a4c Fix a crash at vmware stop
Fix https://github.com/GNS3/gns3-gui/issues/665
2015-09-17 15:51:46 +02:00
bb080fa96a Fix a crash when starting a VMware vm
Fix #314
2015-09-17 15:46:06 +02:00
e236f63162 Add how to add vmnet interfaces explantion in the error message 2015-09-17 15:18:55 +02:00
3e71529702 Fix path of VMinventory for fusion
Fix #313
2015-09-17 11:04:24 +02:00
802d0628bd Force close the keep alive when sending a 401
Work around a Qt issue where Qt
timeout instead of handling the 401
this happen only for the first query send by the
client.
2015-09-16 15:53:38 +02:00
958274e8f6 Do not automatically delete Dynamips bootflash file because they are necessary to restore VLANs on the c3600 platform. 2015-09-16 06:09:14 -06:00
5136083853 Wait that an user press a key to stop gns3vmnet.exe on Windows. 2015-09-16 05:26:17 -06:00
e374e52745 Bump version to 1.4.0dev7. 2015-09-14 15:19:57 -06:00
47abba3c9c Fixes tests. 2015-09-14 15:16:54 -06:00
59f5de5de2 Throw an error if ubridge as incorrect permissions. Fixes #312. 2015-09-14 15:05:25 -06:00
a9ac0d3380 This may fix "The semaphore timeout period has expired" error on Windows. #311. 2015-09-13 15:47:43 -06:00
65fa4036c6 Fixes bug with VMware VM connections + moves some uBridge code to BaseVM. 2015-09-13 14:52:25 -06:00
0ee31361c0 Support for packet capture on VMware VM links. 2015-09-13 09:40:09 -06:00
c7b17039cb Update docker-py version 2015-09-11 17:18:57 +02:00
22e4fec2e2 Fix ProcessLookupError on _checkAlive Qemu
Fix #308
2015-09-11 14:16:56 +02:00
cc7fe1a477 VMware Fusion support with uBridge. 2015-09-10 03:44:56 -06:00
46698924fd Merge remote-tracking branch 'origin/unstable' into unstable 2015-09-09 02:39:06 -06:00
8e29ad4493 Updates vmnet script to support Windows. 2015-09-09 02:38:11 -06:00
5aa9d4d7b9 Do not block on .lock for VMware OSX 2015-09-08 21:31:21 +02:00
1e722254f7 Merge remote-tracking branch 'origin/unstable' into unstable 2015-09-08 03:03:38 -06:00
8031cf1030 Require Dynamips version 0.2.16 to change the default QinQ Ethernet type. 2015-09-08 03:03:11 -06:00
92e05e144a Merge branch 'docker' into unstable 2015-09-08 11:00:59 +02:00
0fa300cb99 Initial Docker support from Google Summer of Code 2015-09-08 10:57:28 +02:00
9ee1d9d71a fixed the way docker containers are terminated 2015-09-08 10:54:27 +02:00
0ab95ae043 basic docker container support 2015-09-08 10:54:27 +02:00
6dd381a745 Merge branch 'Bevaz-qinq_ethertype' into unstable 2015-09-08 02:29:30 -06:00
0ddef78127 Merge branch 'qinq_ethertype' of https://github.com/Bevaz/gns3-server into Bevaz-qinq_ethertype 2015-09-08 02:27:21 -06:00
2a0f1586c8 Merge remote-tracking branch 'origin/master' 2015-09-08 02:08:32 -06:00
2c5b2a19f6 Check for valid FR or ATM switch mappings. Fixes #300. 2015-09-08 02:07:06 -06:00
a779fa7462 Check for valid FR or ATM switch mappings. Fixes #300. 2015-09-08 02:00:39 -06:00
c992cabb28 VirtualBox VMs can only be started if powered off. Fixes #299. 2015-09-08 01:20:46 -06:00
4d6626e849 Support of VPCS 0.8
Fix #306
2015-09-07 17:35:21 +02:00
4efec03448 Allows VMware VMs to use vmnet interfaces for connections without using uBridge. Fixes #295. 2015-09-05 14:38:11 -06:00
476e033a78 Fixes path to vmnet-cli on Mac OS X. 2015-09-05 11:30:26 -06:00
a70775a238 Updates vmnet script to support Mac OS X. 2015-09-05 11:20:25 -06:00
5fa5e7227d Prepare next release 2015-09-04 21:33:48 +02:00
2689b6b7bb Prepare 1.3.10 2015-09-04 18:22:59 +02:00
c16d237176 Fix test 2015-09-04 09:13:57 +02:00
3cf609303d Slack support for Travis 2015-09-04 09:05:44 +02:00
fda33c56de Catch exception when a process cannot be killed. Fixes #296. 2015-09-03 16:18:27 -06:00
5388d43695 Fix closing project when multiple project is open
Fix #305
2015-09-03 17:41:27 +02:00
986ab649d7 Fix project not closing
Fix #303
2015-09-03 16:46:34 +02:00
b1ef49672e Qemu user options are at the end. It's allow user to add his own net
interfaces
2015-08-27 18:46:02 +02:00
d853ffe791 Change the way we look for Qemu path
Fix #302
2015-08-27 18:27:17 +02:00
c361d27531 Lock qemu vm during start / stop operations
Fix #301
2015-08-27 16:06:11 +02:00
699647dbda In the error message explain how to turn off KVM support 2015-08-26 17:17:40 +02:00
4cc66a3801 Fix when you stop qemu on windows you have an error
Fix #625
2015-08-26 17:01:16 +02:00
8085080e41 Merge branch 'master' into unstable 2015-08-26 14:36:55 +02:00
fea7a8a9ab Fix Qemu cannot be used on Windows
Fix #291
2015-08-26 13:47:12 +02:00
70f62cd5eb Allow to start server with python -m gns3server 2015-08-25 22:31:45 +02:00
796ca86df9 Fix random failures in tests on OSX and Windows 2015-08-25 10:13:49 +02:00
f0f901a15d Should solve the BufferError by avoiding using thread
Fix #293
2015-08-24 19:59:11 +02:00
34e64fe5d8 Catch UnicodeEncodeError when passing unicode char as qemu options
Fix #292
2015-08-24 18:09:01 +02:00
1a04417e84 1.4.0dev6 2015-08-24 17:16:46 +02:00
1283f8bde8 EthernetSwitch: Allow to choose ethertype for QinQ outer tag. 2015-08-20 09:42:30 +03:00
eb5f9c48f2 Backport: fixes NAT NIO for Qemu VMs (do not launch any legacy scripts) 2015-08-14 22:16:02 -06:00
98112f7fac Fixes NAT NIO for Qemu VMs (do not launch any legacy scripts) 2015-08-14 22:15:01 -06:00
a16d6ac88f Lower VMware requirements to Workstation version 10 and Player version 6. 2015-08-14 20:35:04 -06:00
83a7e25389 Fixes Unicode error. Fixes #290. 2015-08-13 20:15:50 -06:00
ab3700854c Don't delete Dynamips ROM files. They are used to restore the nvram. 2015-08-10 21:23:05 -06:00
2ce01fafc0 Don't delete Dynamips ROM files. They are used to restore the nvram. 2015-08-10 21:22:21 -06:00
764e0df29a Adds pywin32 dependency in setup.py for Windows. 2015-08-10 18:36:25 -06:00
31b91e1ccb 1.4.0beta1 2015-08-07 18:39:59 +02:00
0018658f60 Fix ram setting for Qemu 2015-08-07 17:08:22 +02:00
55f7c79918 Explicit set qemu memory as MB 2015-08-07 17:03:06 +02:00
323674ba5c Turn off KVM for non x86 architectures
Fix #289
2015-08-07 16:49:45 +02:00
8b46a1a4ab Fix tests 2015-08-07 09:21:09 +02:00
05ab18f295 Send an error when vmware executable cannot be found on Linux. Fixes #288. 2015-08-06 23:05:10 -06:00
5121753232 Support for CPUs setting for Qemu VMs. 2015-08-05 17:17:55 -06:00
217945339e Bump version to 1.4.0dev5. 2015-08-04 11:59:35 -06:00
f161bf42fa Bump version to 1.4.0alpha4. 2015-08-04 11:58:34 -06:00
e46ecdc37c Bump version to 1.4.0dev5. 2015-08-04 11:53:59 -06:00
2e6c438208 1.4.0alpha4 2015-08-04 11:51:25 -06:00
1613999689 Quote command in qemu debug logs so you can copy/paste them 2015-08-04 17:06:42 +02:00
e91a7cebd4 Merge branch 'master' into unstable 2015-08-03 19:29:32 +02:00
39c1d2d2dd Prepare 1.3.10 2015-08-03 19:25:56 +02:00
d942f52f7d 1.3.9 2015-08-03 18:52:22 +02:00
dbc4f05465 Fix tests 2015-08-03 12:10:36 +02:00
0923ed5d85 Support for Qemu disk interfaces, cd/dvd-rom image and boot priority. Fixes #278. 2015-08-02 23:02:02 -06:00
7bccf9e554 Check for VMware Player version >= 7 and VMware Workstation >= 11. Fixes #286. 2015-08-01 13:49:02 -06:00
bb69f02da6 Catch GeneratorExit exception when trying to create a Ghost IOS image. 2015-08-01 11:50:16 -06:00
06a6287dff Backport: removes code that deletes IOS router instance files. 2015-07-31 14:37:23 -06:00
7c1dd75ad7 1.4.0dev4 2015-07-31 15:33:22 +02:00
87ec90cdaf Removes code that deletes IOS router instance files. 2015-07-30 18:50:59 -06:00
c2807c39f9 1.4.0alpha3 2015-07-29 18:17:03 +02:00
1fd2332796 PEP8 2015-07-28 17:57:36 +02:00
78ef6e3032 Validation schema for qemu-img 2015-07-28 17:50:57 +02:00
1eecae2027 Changelog 1.4.0alpha3 2015-07-28 17:26:54 +02:00
058a13ce87 Merge branch 'master' into unstable 2015-07-28 16:50:31 +02:00
003c2f5f0b New crash report key 2015-07-28 16:48:22 +02:00
e92d9ca5ff Raise error if qemu image already exist when creating disk 2015-07-28 16:15:01 +02:00
54448ab936 Prevent user to create a qemu to a different directory on non local
server
2015-07-28 16:07:13 +02:00
1ebc287b5f VMnet manager on Linux: check that VMware has been installed. 2015-07-27 17:10:20 -06:00
f761fb77f8 Fixes UnicodeDecodeError when reading a VMware file. 2015-07-27 16:29:02 -06:00
a721d7d910 Fixes KeyError: "ethernet0.connectiontype". Fixes #276. 2015-07-27 15:50:09 -06:00
1419b7c8dc Fixes replace errors. Fixes #284. 2015-07-27 15:31:42 -06:00
c2ba3f923e 1.3.9dev1 2015-07-27 20:11:49 +02:00
bdb23d6d3b 1.3.8 2015-07-27 12:10:01 -06:00
2ed0ef770e Catch ProcessLookupError when updating iouyap config. Fixes #255. 2015-07-27 11:41:13 -06:00
5986849b67 Catch ProcessLookupError when updating iouyap config. Fixes #255. 2015-07-27 11:40:01 -06:00
5b0c36c0d6 API for creating a qemu disk image 2015-07-27 19:18:36 +02:00
5d8c90d138 Rename qemu image type to qemu image format 2015-07-27 17:32:27 +02:00
b94a4e2308 Add code for creating qemu image on server side
Ref https://github.com/GNS3/gns3-gui/issues/558
2015-07-27 16:27:14 +02:00
fcd4fda68e Prevent starting different hypervisors that leverage hardware virtualization (VT-x/AMD-V). Fixes #548. 2015-07-26 19:21:30 -06:00
eb5e019a26 Fixes IOS adapters and WICS cannot be removed. Fixes #282. 2015-07-26 15:52:43 -06:00
76fe0cb316 Fixes IOS adapters and WICS cannot be removed. Fixes #282. 2015-07-26 15:51:55 -06:00
4aeb451ffd Makes sure the loop is running when closing the app. 2015-07-26 15:28:14 -06:00
5f5d9347b9 Makes sure the loop is running when closing the app. 2015-07-26 15:27:47 -06:00
31b168aa42 Catch Permission denied when writing to VMX file while closing VMware VM. Fixes #277. 2015-07-25 17:09:10 -06:00
382747a2f2 Catch GeneratorExit exception. Fixes #231. 2015-07-25 16:55:37 -06:00
64bf935222 Fixes missing chipset info for VirtualBox VM (maybe some older VirtualBox version don't have it). Fixes #254. 2015-07-25 16:54:31 -06:00
7b001e4d36 Catch GeneratorExit exception. Fixes #231. 2015-07-25 16:46:23 -06:00
b1b602db3b Merge remote-tracking branch 'origin/master' 2015-07-25 16:39:45 -06:00
cf5af8a6f7 Fixes missing chipset info for VirtualBox VM (maybe some older VirtualBox version don't have it). Fixes #254. 2015-07-25 16:39:38 -06:00
8a257b3b2e Changes how to look for the vmrun.exe location. 2015-07-24 16:50:36 -06:00
c3c971921d Update documentation 2015-07-24 10:15:15 +02:00
d9f1a7c7d3 API for listing current projects
Fix #274
2015-07-24 10:09:16 +02:00
cbe593f4a4 Fix virtualbox test crash on Linux 2015-07-23 12:06:35 +02:00
c0befe8a8a Merge branch 'master' into unstable 2015-07-23 11:38:23 +02:00
4814bc6c65 Fix IOURC upload 2015-07-23 11:36:11 +02:00
cbc859a03b Merge remote-tracking branch 'origin/master' into unstable 2015-07-23 11:35:15 +02:00
0f369bc40b ifconfig is not available on travis new architecture 2015-07-23 10:58:34 +02:00
631ad76149 Switch from travis legacy architecture to the new one 2015-07-23 10:56:15 +02:00
3f25bfcb27 Fix qemu tests 2015-07-23 10:46:43 +02:00
e07c3215f5 Merge remote-tracking branch 'origin/unstable' into unstable
Conflicts:
	gns3server/version.py
2015-07-22 20:56:43 -06:00
9b3b5f1884 Bump version to 1.4.0dev3 2015-07-22 20:55:54 -06:00
2655d426c2 Backport: option to drop nvram & disk files for IOS routers in order to save disk space. 2015-07-22 16:02:08 -06:00
f1bbacecd6 Backport: Remove timeout to wait for connections to finish. 2015-07-21 18:00:31 -06:00
a8142a04f8 Merge remote-tracking branch 'origin/master' 2015-07-21 16:02:52 -06:00
19425b1e9c Backport: Fixes RuntimeError: Event loop is closed. 2015-07-21 16:02:44 -06:00
1b066bef92 Merge pull request #272 from GNS3/backup_upload_images_projects
Backup upload images projects
2015-07-21 11:21:12 -07:00
6bf7a6aa38 Fix after jeremy feedback 2015-07-21 20:19:29 +02:00
fc14deee1b Restore images & projects tarballs 2015-07-21 16:14:03 +02:00
270017d945 Allow user to backup projects and images 2015-07-21 14:20:58 +02:00
190 changed files with 4798 additions and 1448 deletions

4
.gitignore vendored
View File

@ -1,5 +1,8 @@
*.py[cod]
#py.test
.cache
# C extensions
*.so
@ -24,6 +27,7 @@ pip-log.txt
# Unit test / coverage reports
.coverage
.tox
.cache
nosetests.xml
# Translations

View File

@ -1,36 +1,14 @@
language: python
python:
- "3.4"
before_install:
- sudo add-apt-repository ppa:gns3/ppa -y
- sudo apt-get update -q
- sudo apt-get install dynamips
- sudo add-apt-repository --yes ppa:ubuntu-sdk-team/ppa
- sudo apt-get update -qq
- sudo apt-get install -qq qt5-qmake qtbase5-dev qtdeclarative5-dev libqt5webkit5-dev libsqlite3-dev
- '3.4'
- '3.5'
sudo: false
cache: pip
install:
- python setup.py install
- pip install -rdev-requirements.txt
- pip install coveralls
- python setup.py install
- pip install -rdev-requirements.txt
- pip install coveralls
script:
- ifconfig
- py.test -v -s tests --cov gns3server --cov-report term-missing
#branches:
# only:
# - master
notifications:
email:
- julien@gns3.net
# irc:
# channels:
# - "chat.freenode.net#gns3"
# on_success: change
# on_failure: always
- py.test -v -s tests --cov gns3server --cov-report term-missing
after_success:
- coveralls
- coveralls

268
CHANGELOG
View File

@ -1,5 +1,273 @@
# Change Log
## 1.4.2 17/02/2016
* Fix missing format in IOU export
* Fix number of arguments to the UDP errors on VBOX
* Add verification when UDP tunnel is created in a VirtualBox VM. Ref #899.
* Fixes VMware linked clone cleanup bug. Fixes #420.
* Removed docker support from 1.4 (drop unused code)
* Fix a crash if you create a file named IOS in the image dir
* Disallow creating project with " in the path
* Always look at the registry to find vmrun.exe on Windows.
* Check for VMware VIX library version. Fixes #413.
* Fixes VDE not working #345.
* Do not list qemu binary with -spice in the name
* Send command line used to start the VM to client
* Fix crash if you have a { in your user name
## 1.4.1 01/02/2016
* VMware raise error if version is not found
* For topologies before 1.4 manage qemu missing
* Fixes issue with packet capture on VMware VMs. Fixes #396.
* Fixes concurrency issue when closing multiple VMware linked clone VMs. Fixes #410.
* Fixes "can only use tap interfaces that both already exist and are up". Fixes #399.
* Send machine stats via the notification stream
* Check for /dev/kvm instead of kvm-ok
* Show a warning when starting ASA8
* Fix error when setting Qemu VM boot to 'cd' (HDD or CD/DVD-ROM)
* Fixed the VMware default VM location on Windows, so that it doesn't assume the "Documents" folder is within the %USERPROFILE% folder, and also support Windows Server's folder (which is "My Virtual Machines" instead of "Virtual Machines").
* Improve dynamips startup_config dump
* Dump environnement to server debug log
* Fix usage of qemu 0.10 on Windows
* Show hostname when the hostname is missing in the iourc.txt
## 1.4.0 12/01/2016
* Release 1.4.0
## 1.4.0rc3 05/01/2016
* API documentation update
* Fix race condition when killing iouyap
* Catch exception if we can't change process priority on Windows
* Adds a handler for getting the Qemu related capabilities of the server. Currently includes just a check for KVM architectures.
* Fixed showing of Qemu hdb_disk_interface - it showed hda_disk_interface instead, which resulted in an odd visual glitch in the GUI.
* Made the gns3server.bat successfully start the server independent of the CWD at the time of running. It's now relative to the location of the .bat file itself.
* Add more informations in the debug status page
* Fix status link in GNS3 homepage
* Fix tests on Windows
* Fix missing boot priority order
* A debug status page embed in the server
* Fix test on Windows
* Update links for new website.
* Contributing instructions
## 1.3.13 11/12/2015
* Update links for new website.
## 1.3.12 11/12/2015
* Contributing instructions
* Correctly display log messages.
* Tentative fix for "WinError 64 The specified network name is no longer available" issues.
* Fix minor errors reported by codacy.com
* Add doc on how to got code coverage
* Raise an error when you use a port outside the ranges
* Fix asyncio error when closing the app
* Release UDP ports when closing a Qemu VM. Fixes #323.
## 1.4.0rc2 10/12/2015
* Add log about wher iou capture packet
* Replace by another TCP port if port is already used
* Fix ProcessLookupError in Qemu
* Increase vmrun timeout to 120 seconds. Ref #360.
* Fixes termination notification to indicate the right process name (IOU vs iouyap). Ref #359.
* Fixes error with non initialized uBridge. Fixes #367.
* Remove debug that can crash qemu
* Support VM usage for qemu
* Raise an error if psutil version is invalid
## 1.4.0rc1 12/11/2015
* Raise error if server received windows path
* Update sentry key
* Remove NIO FIFO and Mcast (unused). Fixes #348.
* Support VPCS 0.6.1
* Fix duplicate of -no-kvm options
* Raise an error if user send a non local path to remote server
* Fix minor issues
* Apply pep8 fix
* Sets console end port to 7000. Fixes #343.
* Drop netifaces (replaced by psutil). Fixes #344.
* Correctly display log messages.
* Tentative fix for "WinError 64 The specified network name is no longer available" issues.
* Return relative path for dynamips images
* Fix add existing IOS not working
* Correctly enable faulthandler for dev version
* Avoid test crash if GNS3 is running on the same computer
* Allow to return an empty project name because it's allowed in creation
* Test with python 3.5
* Add doc on how to got code coverage
## 1.4.0b5 02/11/2015
* Freeze requirements for aiohttp because 0.18 doesn't support Python 3.4.
* Fix crash in IOU config export.
* Raise an error when you use a port outside the ranges. Fixes #739.
* Fixes Windows named pipe issue. Fixes #340.
## 1.4.0b4 19/10/2015
* Support for modifications to a base Qemu VM (not a linked clone).
* Force canceling all task when shutdown server
* Update api documentation
* Enforce console port for VNC
* Fixes issue when loading a project using VMware vmnet interfaces. Fixes #319.
* Support for NAT connection with cloud for VMware VMs. Fixes #322.
* Change message when VMware is not installed on Linux. Ref #326.
* Send a warning notification if there is not enough RAM left to start a VM. Implements #329.
* Asyncio Qemu fix and raise error if coroutine not used
* Fix asyncio error when closing the app
* Removes VMware lock check. Fixes #328.
* Wait for pipe file to be created before starting the remote console for VMware and VirtualBox VMs. Fixes #331.
* Release UDP ports when closing a Qemu VM. Fixes #323.
* Escape other usage of glob
* Fix Dynamips identifier is already used by another router
* Protect Dynamips against bad glob.
* Fix issue with Qemu networking following merge.
* OVA file support
* Support listing images in subdirectories.
* Catch ProcessLookupError in Qemu VM.
* Fixes uncalled coroutine.
* Use the correct UDP tunnel Qemu syntax for version > 1.1.0 when legacy networking is enabled.
* VMware player linux support.
* Prevent launching a packet capture with a non-ASCII path when using Dynamips.
* Do not require a TAP interface to already exist. Fixes #321.
* Do not automatically delete Dynamips bootflash file because they are necessary to restore VLANs on the c3600 platform.
## 1.3.11 07/10/2015
* Escape other usage of glob
* Fix Dynamips identifier is already used by another router
* Protect dynamips against bad glob
* Catch ProcessLookupError in Qemu VM.
* Use the correct UDP tunnel Qemu syntax for version > 1.1.0 when legacy networking is enabled.
* Prevent launching a packet capture with a non-ASCII path when using Dynamips.
* Do not automatically delete Dynamips bootflash file because they are necessary to restore VLANs on the c3600 platform.
* Fix dynamips configuration lost when you delete a node
* Clarify error message when we got UTF-8 chars in the iourc file
* Check for valid FR or ATM switch mappings. Fixes #300.
## 1.4.0b3 22/09/2015
* Fix dynamips configuration lost when you delete a node
* Clarify error message when we got UTF-8 chars in the iourc file
* Use custom VMnet interfaces without host adapter when uBridge is not used. Fixes #673.
* Automatically add the -no-kvm option if -icount is detected to help with the migration of ASA VMs created before version 1.4
* Check for valid FR or ATM switch mappings. Fixes #300.
* Catch exception when a process cannot be killed. Fixes #296.
## 1.4.0beta2 17/09/2015
* Fix a crash at vmware stop
* Fix a crash when starting a VMware vm
* Add how to add vmnet interfaces explantion in the error message
* Fix path of VMinventory for fusion
* Force close the keep alive when sending a 401
* Do not automatically delete Dynamips bootflash file because they are necessary to restore VLANs on the c3600 platform.
* Wait that an user press a key to stop gns3vmnet.exe on Windows.
* Throw an error if ubridge as incorrect permissions. Fixes #312.
* This may fix "The semaphore timeout period has expired" error on Windows. #311.
* Fixes bug with VMware VM connections + moves some uBridge code to BaseVM.
* Support for packet capture on VMware VM links.
* Fix ProcessLookupError on _checkAlive Qemu
* VMware Fusion support with uBridge.
* Updates vmnet script to support Windows.
* Do not block on .lock for VMware OSX
* Require Dynamips version 0.2.16 to change the default QinQ Ethernet type.
* Initial Docker support from Google Summer of Code (not enabled)
* Check for valid FR or ATM switch mappings. Fixes #300.
* VirtualBox VMs can only be started if powered off. Fixes #299.
* Support of VPCS 0.8
* Allows VMware VMs to use vmnet interfaces for connections without using uBridge. Fixes #295.
* Fixes path to vmnet-cli on Mac OS X.
* Updates vmnet script to support Mac OS X.
* Fix closing project when multiple project is open
* Fix project not closing
* Qemu user options are at the end. It's allow user to add his own net interfaces
* Change the way we look for Qemu path
* Lock qemu vm during start / stop operations
* In the error message explain how to turn off KVM support
* Fix when you stop qemu on windows you have an error
* Fix Qemu cannot be used on Windows
* Allow to start server with python -m gns3server
* Should solve the BufferError by avoiding using thread
* Catch UnicodeEncodeError when passing unicode char as qemu options
* EthernetSwitch: Allow to choose ethertype for QinQ outer tag.
* Backport: fixes NAT NIO for Qemu VMs (do not launch any legacy scripts)
* Fixes NAT NIO for Qemu VMs (do not launch any legacy scripts)
* Lower VMware requirements to Workstation version 10 and Player version 6.
* Fixes Unicode error. Fixes #290.
* Don't delete Dynamips ROM files. They are used to restore the nvram.
* Adds pywin32 dependency in setup.py for Windows.
## 1.3.10 04/09/2015
* Catch exception when a process cannot be killed. Fixes #296.
* Backport: fixes NAT NIO for Qemu VMs (do not launch any legacy scripts)
* Fixes Unicode error. Fixes #290.
* Don't delete Dynamips ROM files. They are used to restore the nvram.
## 1.4.0beta1 07/08/2015
* Fix ram setting for Qemu
* Explicit set qemu memory as MB
* Turn off KVM for non x86 architectures
* Send an error when vmware executable cannot be found on Linux. Fixes #288.
* Support for CPUs setting for Qemu VMs.
## 1.4.0alpha4 04/08/2015
* Quote command in qemu debug logs so you can copy/paste them
* Support for Qemu disk interfaces, cd/dvd-rom image and boot priority. Fixes #278.
* Check for VMware Player version >= 7 and VMware Workstation >= 11. Fixes #286.
* Catch GeneratorExit exception when trying to create a Ghost IOS image.
* Backport: removes code that deletes IOS router instance files.
## 1.3.9 03/08/2015
* Backport: removes code that deletes IOS router instance files.
## 1.4.0alpha3 28/07/2015
* Raise error if qemu image already exist when creating disk
* Prevent user to create a qemu to a different directory on non local server
* VMnet manager on Linux: check that VMware has been installed.
* Fixes UnicodeDecodeError when reading a VMware file.
* Fixes KeyError: "ethernet0.connectiontype". Fixes #276.
* Fixes replace errors. Fixes #284.
* Catch ProcessLookupError when updating iouyap config. Fixes #255.
* API for creating a qemu disk image
* Prevent starting different hypervisors that leverage hardware virtualization (VT-x/AMD-V). Fixes #548.
* Fixes IOS adapters and WICS cannot be removed. Fixes #282.
* Makes sure the loop is running when closing the app.
* Catch Permission denied when writing to VMX file while closing VMware VM. Fixes #277.
* Catch GeneratorExit exception. Fixes #231.
* Fixes missing chipset info for VirtualBox VM (maybe some older VirtualBox version don't have it). Fixes #254.
* Changes how to look for the vmrun.exe location.
* Update documentation
* API for listing current projects
## 1.3.8 27/07/2015
* Catch ProcessLookupError when updating iouyap config. Fixes #255.
* Fixes IOS adapters and WICS cannot be removed. Fixes #282.
* Makes sure the loop is running when closing the app.
* Catch GeneratorExit exception. Fixes #231.
* Fixes missing chipset info for VirtualBox VM. Fixes #254.
* Fixes IOURC upload.
* Restore images & projects tarballs
* Allow users to backup projects and images.
* Update gns3.conf.upstart.
* Fix incorrect vboxmanage sudo command.
* Backport from 1.4: option to drop nvram & disk files for IOS routers in order to save disk space.
* Backport from 1.4: Remove timeout to wait for connections to finish.
* Backport from 1.4: Fixes RuntimeError: Event loop is closed.
* Backport from 1.4: Bind host on 0.0.0.0 when checking for a free UDP port.
## 1.4.0alpha2 22/07/2015
* Deactivate uBridge process monitoring (process returns 1 on Windows when stopping).

50
CONTRIBUTING.md Normal file
View File

@ -0,0 +1,50 @@
# Contributing to GNS3
We welcome contributions and bugs reports from everyone.
We are friendly so don't be afraid to ask questions.
## Bug reports
Before reporting an issue:
* check our website over at https://gns3.com
* check if an issue already exists on https://github.com/GNS3/gns3-gui
* check if an issue already exists on https://github.com/GNS3/gns3-server
Please post on our community website if you are unsure you found a bug,
you will get faster support and be able to exchange with more users.
If you are unsure which project you should create an issue for, just do
it on https://github.com/GNS3/gns3-gui we will take care of the triage.
For bugs specific to the GNS3 VM, please report on https://github.com/GNS3/gns3-vm
## Asking for new features
The best is to start a discussion on the community website in order to get feedback
from the whole community.
## Contributing code
We welcome code contribution from everyone including beginners.
Don't be afraid to submit a half finished or mediocre contribution and we will help you.
Don't hesitate to share your plans before starting working on a contribution, we can help
you to find the best approach.
### Contributors License Agreements
We at GNS3 are eager to work with you. For small changeslittle bugfixes, correcting typos, and the likeplease just submit pull requests to any of our projects. For larger changes, though, we have to ask you to jump through a little hoop.
In particular, in order for us to accept any major patches from you, you will have to electronically sign a statement that indicates two things:
- You are willingly licensing your contributions under the terms of the open source license of the project that youre contributing to.
- You are legally able to license your contributions as stated.
The reason we do this is to ensure, to the extent possible, that we dont “taint” the projects we manage with contributions that turn out to be improper. This protects everyone who wants to use the projects, including you!
More information there: https://github.com/GNS3/cla
### Pull requests
Creating a pull request is the easiest way to contribute code. Do not hesitate to create one early when contributing for new feature in order to get our feedback.

View File

@ -22,8 +22,10 @@ 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.
unstable
1.x (1.4 for example)
********
Next major release
*Never* use this branch for production. Pull requests for major new features go here.
Linux
@ -45,7 +47,7 @@ Dependencies:
- Python 3.4 or above
- aiohttp
- setuptools
- netifaces
- psutil
- jsonschema
The following commands will install some of these dependencies:
@ -163,7 +165,6 @@ and homebrew: http://brew.sh/.
python3 setup.py install
gns3server
SSL
---
@ -190,3 +191,18 @@ Or in your gns3_server.conf by adding in the Server section:
certfile=/Users/noplay/.config/GNS3/ssl/server.cert
certkey=/Users/noplay/.config/GNS3/ssl/server.key
ssl=True
Running tests
*************
Just run:
.. code:: bash
py.test -vv
If you want test coverage:
.. code:: bash
py.test --cov=gns3server

View File

@ -1,8 +1,8 @@
-rrequirements.txt
sphinx==1.2.3
pytest==2.6.4
pytest==2.8.2
pep8==1.5.7
pytest-timeout
pytest-capturelog
pytest-cov
pytest-capturelog==0.7
pytest-cov==2.2.0
pytest-timeout==0.5

View File

@ -9,6 +9,6 @@ ACCESS-CONTROL-ALLOW-ORIGIN: *
CONNECTION: keep-alive
CONTENT-LENGTH: 0
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/projects/{project_id}

View File

@ -1,6 +1,6 @@
curl -i -X DELETE 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/518cad4b-76e8-41fb-8cb9-6e9af9af62e8'
curl -i -X DELETE 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/0813062d-a796-44ef-a5ed-e690c633012e'
DELETE /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/518cad4b-76e8-41fb-8cb9-6e9af9af62e8 HTTP/1.1
DELETE /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/0813062d-a796-44ef-a5ed-e690c633012e HTTP/1.1
@ -9,6 +9,6 @@ ACCESS-CONTROL-ALLOW-ORIGIN: *
CONNECTION: keep-alive
CONTENT-LENGTH: 0
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/projects/{project_id}/iou/vms/{vm_id}

View File

@ -1,6 +1,6 @@
curl -i -X DELETE 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/8105baad-5569-4955-867f-2b1ee01f6f9c/adapters/1/ports/0/nio'
curl -i -X DELETE 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/8759140f-eb6f-4f3b-9a7f-86c79ec747b9/adapters/1/ports/0/nio'
DELETE /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/8105baad-5569-4955-867f-2b1ee01f6f9c/adapters/1/ports/0/nio HTTP/1.1
DELETE /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/8759140f-eb6f-4f3b-9a7f-86c79ec747b9/adapters/1/ports/0/nio HTTP/1.1
@ -9,6 +9,6 @@ ACCESS-CONTROL-ALLOW-ORIGIN: *
CONNECTION: keep-alive
CONTENT-LENGTH: 0
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/projects/{project_id}/iou/vms/{vm_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio

View File

@ -1,6 +1,6 @@
curl -i -X DELETE 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/a9ea89c4-b33b-492d-bcf8-c2d4dedaf218'
curl -i -X DELETE 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/1b1a72b7-97ea-4598-8c02-2edc285f7987'
DELETE /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/a9ea89c4-b33b-492d-bcf8-c2d4dedaf218 HTTP/1.1
DELETE /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/1b1a72b7-97ea-4598-8c02-2edc285f7987 HTTP/1.1
@ -9,6 +9,6 @@ ACCESS-CONTROL-ALLOW-ORIGIN: *
CONNECTION: keep-alive
CONTENT-LENGTH: 0
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/projects/{project_id}/qemu/vms/{vm_id}

View File

@ -1,6 +1,6 @@
curl -i -X DELETE 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/d9b2c5b8-255f-4734-9a3a-0faec8b12316/adapters/1/ports/0/nio'
curl -i -X DELETE 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/b5c23125-ea22-4008-a89e-72565ae9f746/adapters/1/ports/0/nio'
DELETE /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/d9b2c5b8-255f-4734-9a3a-0faec8b12316/adapters/1/ports/0/nio HTTP/1.1
DELETE /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/b5c23125-ea22-4008-a89e-72565ae9f746/adapters/1/ports/0/nio HTTP/1.1
@ -9,6 +9,6 @@ ACCESS-CONTROL-ALLOW-ORIGIN: *
CONNECTION: keep-alive
CONTENT-LENGTH: 0
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/projects/{project_id}/qemu/vms/{vm_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio

View File

@ -1,6 +1,6 @@
curl -i -X DELETE 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms/d95f4966-150e-48c5-a133-1924525853d9/adapters/0/ports/0/nio'
curl -i -X DELETE 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms/3f79083e-3da8-433e-9e9b-fe72a602ab4e/adapters/0/ports/0/nio'
DELETE /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms/d95f4966-150e-48c5-a133-1924525853d9/adapters/0/ports/0/nio HTTP/1.1
DELETE /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms/3f79083e-3da8-433e-9e9b-fe72a602ab4e/adapters/0/ports/0/nio HTTP/1.1
@ -9,6 +9,6 @@ ACCESS-CONTROL-ALLOW-ORIGIN: *
CONNECTION: keep-alive
CONTENT-LENGTH: 0
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/projects/{project_id}/virtualbox/vms/{vm_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio

View File

@ -1,6 +1,6 @@
curl -i -X DELETE 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms/6a839a96-90c4-4736-8841-eda3f518f3f0'
curl -i -X DELETE 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms/6f9f4ab8-1b77-4eee-b0fb-e8d299b843a7'
DELETE /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms/6a839a96-90c4-4736-8841-eda3f518f3f0 HTTP/1.1
DELETE /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms/6f9f4ab8-1b77-4eee-b0fb-e8d299b843a7 HTTP/1.1
@ -9,6 +9,6 @@ ACCESS-CONTROL-ALLOW-ORIGIN: *
CONNECTION: keep-alive
CONTENT-LENGTH: 0
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/projects/{project_id}/vpcs/vms/{vm_id}

View File

@ -1,6 +1,6 @@
curl -i -X DELETE 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms/9f197704-d8f6-45b3-affd-0f9579878077/adapters/0/ports/0/nio'
curl -i -X DELETE 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms/6666f3a7-d805-4572-a35c-bc15213f0b52/adapters/0/ports/0/nio'
DELETE /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms/9f197704-d8f6-45b3-affd-0f9579878077/adapters/0/ports/0/nio HTTP/1.1
DELETE /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms/6666f3a7-d805-4572-a35c-bc15213f0b52/adapters/0/ports/0/nio HTTP/1.1
@ -9,6 +9,6 @@ ACCESS-CONTROL-ALLOW-ORIGIN: *
CONNECTION: keep-alive
CONTENT-LENGTH: 0
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/projects/{project_id}/vpcs/vms/{vm_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio

View File

@ -7,66 +7,56 @@ GET /v1/interfaces HTTP/1.1
HTTP/1.1 200
ACCESS-CONTROL-ALLOW-ORIGIN: *
CONNECTION: keep-alive
CONTENT-LENGTH: 1253
CONTENT-LENGTH: 1012
CONTENT-TYPE: application/json
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/interfaces
[
{
"id": "lo0",
"ip_address": "127.0.0.1",
"name": "lo0"
},
{
"id": "gif0",
"id": "bridge0",
"ip_address": "",
"name": "gif0"
},
{
"id": "stf0",
"ip_address": "",
"name": "stf0"
"name": "bridge0"
},
{
"id": "en0",
"ip_address": "192.168.84.118",
"ip_address": "",
"name": "en0"
},
{
"id": "en1",
"ip_address": "",
"ip_address": "192.168.84.114",
"name": "en1"
},
{
"id": "fw0",
"ip_address": "",
"name": "fw0"
},
{
"id": "en2",
"ip_address": "",
"name": "en2"
},
{
"id": "fw0",
"ip_address": "",
"name": "fw0"
},
{
"id": "lo0",
"ip_address": "127.0.0.1",
"name": "lo0"
},
{
"id": "p2p0",
"ip_address": "",
"name": "p2p0"
},
{
"id": "bridge0",
"ip_address": "",
"name": "bridge0"
},
{
"id": "vboxnet0",
"ip_address": "",
"ip_address": "172.16.43.1",
"name": "vboxnet0"
},
{
"id": "vboxnet1",
"ip_address": "",
"ip_address": "192.168.59.3",
"name": "vboxnet1"
},
{
@ -75,13 +65,8 @@ X-ROUTE: /v1/interfaces
"name": "vboxnet2"
},
{
"id": "vmnet1",
"ip_address": "172.16.16.1",
"name": "vmnet1"
},
{
"id": "vmnet8",
"ip_address": "192.168.229.1",
"name": "vmnet8"
"id": "vboxnet3",
"ip_address": "192.168.99.1",
"name": "vboxnet3"
}
]

View File

@ -7,14 +7,15 @@ GET /v1/iou/vms HTTP/1.1
HTTP/1.1 200
ACCESS-CONTROL-ALLOW-ORIGIN: *
CONNECTION: keep-alive
CONTENT-LENGTH: 45
CONTENT-LENGTH: 72
CONTENT-TYPE: application/json
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/iou/vms
[
{
"filename": "iou.bin"
"filename": "iou.bin",
"path": "iou.bin"
}
]

View File

@ -0,0 +1,31 @@
curl -i -X GET 'http://localhost:8000/v1/projects'
GET /v1/projects HTTP/1.1
HTTP/1.1 200
ACCESS-CONTROL-ALLOW-ORIGIN: *
CONNECTION: keep-alive
CONTENT-LENGTH: 656
CONTENT-TYPE: application/json
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/projects
[
{
"location": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmpmwnekqxo",
"name": "test",
"path": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmpmwnekqxo/00010203-0405-0607-0809-0a0b0c0d0e0b",
"project_id": "00010203-0405-0607-0809-0a0b0c0d0e0b",
"temporary": false
},
{
"location": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmpmwnekqxo",
"name": "test",
"path": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmpmwnekqxo/00010203-0405-0607-0809-0a0b0c0d0e0f",
"project_id": "00010203-0405-0607-0809-0a0b0c0d0e0f",
"temporary": false
}
]

View File

@ -10,13 +10,13 @@ CONNECTION: keep-alive
CONTENT-LENGTH: 297
CONTENT-TYPE: application/json
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/projects/{project_id}
{
"location": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmp20bxyq9r",
"location": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmpchvw88rg",
"name": "test",
"path": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmp20bxyq9r/00010203-0405-0607-0809-0a0b0c0d0e02",
"path": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmpchvw88rg/00010203-0405-0607-0809-0a0b0c0d0e02",
"project_id": "00010203-0405-0607-0809-0a0b0c0d0e02",
"temporary": false
}

View File

@ -10,7 +10,7 @@ CONNECTION: keep-alive
CONTENT-LENGTH: 204
CONTENT-TYPE: application/json
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/projects/{project_id}/files
[

View File

@ -1,33 +1,33 @@
curl -i -X GET 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/600a3562-f8b7-4748-a4fc-ef58f7721241'
curl -i -X GET 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/82f6e25c-6960-421d-9567-a7453642935b'
GET /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/600a3562-f8b7-4748-a4fc-ef58f7721241 HTTP/1.1
GET /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/82f6e25c-6960-421d-9567-a7453642935b HTTP/1.1
HTTP/1.1 200
ACCESS-CONTROL-ALLOW-ORIGIN: *
CONNECTION: keep-alive
CONTENT-LENGTH: 721
CONTENT-LENGTH: 610
CONTENT-TYPE: application/json
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/projects/{project_id}/iou/vms/{vm_id}
{
"console": 2000,
"console": 2001,
"ethernet_adapters": 2,
"iourc_path": null,
"l1_keepalives": false,
"md5sum": "e573e8f5c93c6c00783f20c7a170aa6c",
"md5sum": null,
"name": "PC TEST 1",
"nvram": 128,
"path": "/private/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/pytest-22/test_iou_get0/iou.bin",
"path": "iou.bin",
"private_config": null,
"project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80",
"ram": 256,
"serial_adapters": 2,
"startup_config": null,
"use_default_iou_values": true,
"vm_directory": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmpjb4sz6y3/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/iou/600a3562-f8b7-4748-a4fc-ef58f7721241",
"vm_id": "600a3562-f8b7-4748-a4fc-ef58f7721241"
"vm_directory": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmp2yt9sd1l/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/iou/82f6e25c-6960-421d-9567-a7453642935b",
"vm_id": "82f6e25c-6960-421d-9567-a7453642935b"
}

View File

@ -1,6 +1,6 @@
curl -i -X GET 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/8ec89813-950e-4b4d-b43d-7448104a0893/configs'
curl -i -X GET 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/9ff2d283-1365-4422-93e7-e14c56b809cb/configs'
GET /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/8ec89813-950e-4b4d-b43d-7448104a0893/configs HTTP/1.1
GET /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/9ff2d283-1365-4422-93e7-e14c56b809cb/configs HTTP/1.1
@ -10,7 +10,7 @@ CONNECTION: keep-alive
CONTENT-LENGTH: 40
CONTENT-TYPE: application/json
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/projects/{project_id}/iou/vms/{vm_id}/configs
{

View File

@ -1,47 +1,56 @@
curl -i -X GET 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/05e0937d-dc0c-4b31-bd01-b7befae466ff'
curl -i -X GET 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/84777300-eef4-4a3a-9135-d7009bdb0722'
GET /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/05e0937d-dc0c-4b31-bd01-b7befae466ff HTTP/1.1
GET /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/84777300-eef4-4a3a-9135-d7009bdb0722 HTTP/1.1
HTTP/1.1 200
ACCESS-CONTROL-ALLOW-ORIGIN: *
CONNECTION: keep-alive
CONTENT-LENGTH: 1108
CONTENT-LENGTH: 1353
CONTENT-TYPE: application/json
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/projects/{project_id}/qemu/vms/{vm_id}
{
"acpi_shutdown": false,
"adapter_type": "e1000",
"adapters": 1,
"console": 2000,
"boot_priority": "c",
"cdrom_image": "",
"cdrom_image_md5sum": null,
"console": 2001,
"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": "00:00:ab:66:ff:00",
"mac_address": "00:00:ab:07:22:00",
"name": "PC TEST 1",
"options": "",
"platform": "x86_64",
"process_priority": "low",
"project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80",
"qemu_path": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmpg645q6gq/qemu-system-x86_64",
"qemu_path": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmph3pfurip/qemu-system-x86_64",
"ram": 256,
"vm_directory": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmp1454taw7/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/qemu/05e0937d-dc0c-4b31-bd01-b7befae466ff",
"vm_id": "05e0937d-dc0c-4b31-bd01-b7befae466ff"
"usage": "",
"vm_directory": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmpqqnauky9/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/qemu/84777300-eef4-4a3a-9135-d7009bdb0722",
"vm_id": "84777300-eef4-4a3a-9135-d7009bdb0722"
}

View File

@ -1,6 +1,6 @@
curl -i -X GET 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms/7bb5a150-67a0-433b-80c9-95f6fce979f4'
curl -i -X GET 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms/63b9b470-5a07-4cfe-b9d5-ae5d5518b988'
GET /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms/7bb5a150-67a0-433b-80c9-95f6fce979f4 HTTP/1.1
GET /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms/63b9b470-5a07-4cfe-b9d5-ae5d5518b988 HTTP/1.1
@ -10,14 +10,14 @@ CONNECTION: keep-alive
CONTENT-LENGTH: 415
CONTENT-TYPE: application/json
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/projects/{project_id}/virtualbox/vms/{vm_id}
{
"acpi_shutdown": false,
"adapter_type": "Intel PRO/1000 MT Desktop (82540EM)",
"adapters": 0,
"console": 2001,
"console": 2002,
"enable_remote_console": false,
"headless": false,
"name": "VMTEST",
@ -25,6 +25,6 @@ X-ROUTE: /v1/projects/{project_id}/virtualbox/vms/{vm_id}
"ram": 0,
"use_any_adapter": false,
"vm_directory": null,
"vm_id": "7bb5a150-67a0-433b-80c9-95f6fce979f4",
"vm_id": "63b9b470-5a07-4cfe-b9d5-ae5d5518b988",
"vmname": "VMTEST"
}

View File

@ -1,6 +1,6 @@
curl -i -X GET 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms/941d35fb-eb6b-48a2-b2fd-8315c9ae72fe'
curl -i -X GET 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms/7e24fcc2-e38c-43e8-a7bb-fc22d7b91547'
GET /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms/941d35fb-eb6b-48a2-b2fd-8315c9ae72fe HTTP/1.1
GET /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms/7e24fcc2-e38c-43e8-a7bb-fc22d7b91547 HTTP/1.1
@ -10,16 +10,16 @@ CONNECTION: keep-alive
CONTENT-LENGTH: 422
CONTENT-TYPE: application/json
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/projects/{project_id}/vpcs/vms/{vm_id}
{
"console": 2009,
"console": 2010,
"name": "PC TEST 1",
"project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80",
"startup_script": null,
"startup_script_path": null,
"status": "stopped",
"vm_directory": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmp1454taw7/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/vpcs/941d35fb-eb6b-48a2-b2fd-8315c9ae72fe",
"vm_id": "941d35fb-eb6b-48a2-b2fd-8315c9ae72fe"
"vm_directory": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmpqqnauky9/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/vpcs/7e24fcc2-e38c-43e8-a7bb-fc22d7b91547",
"vm_id": "7e24fcc2-e38c-43e8-a7bb-fc22d7b91547"
}

View File

@ -1,25 +1,33 @@
curl -i -X GET 'http://localhost:8000/v1/qemu/binaries'
curl -i -X GET 'http://localhost:8000/v1/qemu/binaries' -d '{"archs": ["i386"]}'
GET /v1/qemu/binaries HTTP/1.1
{
"archs": [
"i386"
]
}
HTTP/1.1 200
ACCESS-CONTROL-ALLOW-ORIGIN: *
CONNECTION: keep-alive
CONTENT-LENGTH: 134
CONTENT-LENGTH: 212
CONTENT-TYPE: application/json
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/qemu/binaries
[
{
"path": "/tmp/1",
"path": "/tmp/x86_64",
"version": "2.2.0"
},
{
"path": "/tmp/2",
"path": "/tmp/alpha",
"version": "2.1.0"
},
{
"path": "/tmp/i386",
"version": "2.1.0"
}
]

View File

@ -0,0 +1,20 @@
curl -i -X GET 'http://localhost:8000/v1/qemu/capabilities'
GET /v1/qemu/capabilities HTTP/1.1
HTTP/1.1 200
ACCESS-CONTROL-ALLOW-ORIGIN: *
CONNECTION: keep-alive
CONTENT-LENGTH: 39
CONTENT-TYPE: application/json
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/qemu/capabilities
{
"kvm": [
"x86_64"
]
}

View File

@ -10,10 +10,10 @@ CONNECTION: keep-alive
CONTENT-LENGTH: 50
CONTENT-TYPE: application/json
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/version
{
"local": true,
"version": "1.4.0.dev1"
"version": "1.4.0dev13"
}

View File

@ -9,6 +9,6 @@ ACCESS-CONTROL-ALLOW-ORIGIN: *
CONNECTION: keep-alive
CONTENT-LENGTH: 0
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/config/reload

View File

@ -12,13 +12,13 @@ CONNECTION: keep-alive
CONTENT-LENGTH: 297
CONTENT-TYPE: application/json
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/projects
{
"location": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmpckmaacu1",
"location": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmpp319gdgn",
"name": "test",
"path": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmpckmaacu1/627163b8-dc72-4308-bccc-0a01fdf9e4b8",
"project_id": "627163b8-dc72-4308-bccc-0a01fdf9e4b8",
"path": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmpp319gdgn/054e6ecb-1e9d-4c74-ad08-1209264bd96d",
"project_id": "054e6ecb-1e9d-4c74-ad08-1209264bd96d",
"temporary": false
}

View File

@ -9,6 +9,6 @@ ACCESS-CONTROL-ALLOW-ORIGIN: *
CONNECTION: keep-alive
CONTENT-LENGTH: 0
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/projects/{project_id}/close

View File

@ -9,6 +9,6 @@ ACCESS-CONTROL-ALLOW-ORIGIN: *
CONNECTION: keep-alive
CONTENT-LENGTH: 0
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/projects/{project_id}/commit

View File

@ -1,38 +1,38 @@
curl -i -X POST 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms' -d '{"name": "PC TEST 1", "path": "/private/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/pytest-22/test_iou_create_startup_config0/iou.bin", "startup_config_content": "hostname test", "vm_id": "53179502-0fc1-4c59-a503-36b7d675ffb8"}'
curl -i -X POST 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms' -d '{"name": "PC TEST 1", "path": "iou.bin", "startup_config_content": "hostname test", "vm_id": "afa904bc-8968-4e7c-87b6-11d92174f1e6"}'
POST /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms HTTP/1.1
{
"name": "PC TEST 1",
"path": "/private/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/pytest-22/test_iou_create_startup_config0/iou.bin",
"path": "iou.bin",
"startup_config_content": "hostname test",
"vm_id": "53179502-0fc1-4c59-a503-36b7d675ffb8"
"vm_id": "afa904bc-8968-4e7c-87b6-11d92174f1e6"
}
HTTP/1.1 201
ACCESS-CONTROL-ALLOW-ORIGIN: *
CONNECTION: keep-alive
CONTENT-LENGTH: 755
CONTENT-LENGTH: 626
CONTENT-TYPE: application/json
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/projects/{project_id}/iou/vms
{
"console": 2000,
"console": 2001,
"ethernet_adapters": 2,
"iourc_path": null,
"l1_keepalives": false,
"md5sum": "e573e8f5c93c6c00783f20c7a170aa6c",
"md5sum": null,
"name": "PC TEST 1",
"nvram": 128,
"path": "/private/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/pytest-22/test_iou_create_startup_config0/iou.bin",
"path": "iou.bin",
"private_config": null,
"project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80",
"ram": 256,
"serial_adapters": 2,
"startup_config": "startup-config.cfg",
"use_default_iou_values": true,
"vm_directory": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmpjb4sz6y3/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/iou/53179502-0fc1-4c59-a503-36b7d675ffb8",
"vm_id": "53179502-0fc1-4c59-a503-36b7d675ffb8"
"vm_directory": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmp2yt9sd1l/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/iou/afa904bc-8968-4e7c-87b6-11d92174f1e6",
"vm_id": "afa904bc-8968-4e7c-87b6-11d92174f1e6"
}

View File

@ -1,8 +1,8 @@
curl -i -X POST 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/cd4760c6-fbfc-44ba-a21e-5d3eeab66452/adapters/1/ports/0/nio' -d '{"ethernet_device": "lo0", "type": "nio_generic_ethernet"}'
curl -i -X POST 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/eea449ce-e25b-4beb-b50f-fcd77241a97b/adapters/1/ports/0/nio' -d '{"ethernet_device": "bridge0", "type": "nio_generic_ethernet"}'
POST /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/cd4760c6-fbfc-44ba-a21e-5d3eeab66452/adapters/1/ports/0/nio HTTP/1.1
POST /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/eea449ce-e25b-4beb-b50f-fcd77241a97b/adapters/1/ports/0/nio HTTP/1.1
{
"ethernet_device": "lo0",
"ethernet_device": "bridge0",
"type": "nio_generic_ethernet"
}
@ -10,13 +10,13 @@ POST /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/cd4760c6-fbfc-44b
HTTP/1.1 201
ACCESS-CONTROL-ALLOW-ORIGIN: *
CONNECTION: keep-alive
CONTENT-LENGTH: 68
CONTENT-LENGTH: 72
CONTENT-TYPE: application/json
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/projects/{project_id}/iou/vms/{vm_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio
{
"ethernet_device": "lo0",
"ethernet_device": "bridge0",
"type": "nio_generic_ethernet"
}

View File

@ -1,6 +1,6 @@
curl -i -X POST 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/b89ab04d-ecb3-48ac-968c-9ea29a635513/adapters/0/ports/0/start_capture' -d '{"capture_file_name": "test.pcap", "data_link_type": "DLT_EN10MB"}'
curl -i -X POST 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/14a4f240-54e7-47f7-b9e7-3640528415fe/adapters/0/ports/0/start_capture' -d '{"capture_file_name": "test.pcap", "data_link_type": "DLT_EN10MB"}'
POST /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/b89ab04d-ecb3-48ac-968c-9ea29a635513/adapters/0/ports/0/start_capture HTTP/1.1
POST /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/14a4f240-54e7-47f7-b9e7-3640528415fe/adapters/0/ports/0/start_capture HTTP/1.1
{
"capture_file_name": "test.pcap",
"data_link_type": "DLT_EN10MB"
@ -13,9 +13,9 @@ CONNECTION: keep-alive
CONTENT-LENGTH: 158
CONTENT-TYPE: application/json
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/projects/{project_id}/iou/vms/{vm_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/start_capture
{
"pcap_file_path": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmpjb4sz6y3/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/captures/test.pcap"
"pcap_file_path": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmp2yt9sd1l/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/captures/test.pcap"
}

View File

@ -1,6 +1,6 @@
curl -i -X POST 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/d3b24c51-1c3d-4e5f-9048-f778e8cd57f0/adapters/0/ports/0/stop_capture' -d '{}'
curl -i -X POST 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/992e1579-2232-4aac-93ef-970c3bb67966/adapters/0/ports/0/stop_capture' -d '{}'
POST /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/d3b24c51-1c3d-4e5f-9048-f778e8cd57f0/adapters/0/ports/0/stop_capture HTTP/1.1
POST /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/992e1579-2232-4aac-93ef-970c3bb67966/adapters/0/ports/0/stop_capture HTTP/1.1
{}
@ -9,6 +9,6 @@ ACCESS-CONTROL-ALLOW-ORIGIN: *
CONNECTION: keep-alive
CONTENT-LENGTH: 0
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/projects/{project_id}/iou/vms/{vm_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/stop_capture

View File

@ -1,6 +1,6 @@
curl -i -X POST 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/86c16543-b464-4963-9f76-635da1321b42/reload' -d '{}'
curl -i -X POST 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/7f23517b-b45e-4e7b-b908-c501c36abe16/reload' -d '{}'
POST /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/86c16543-b464-4963-9f76-635da1321b42/reload HTTP/1.1
POST /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/7f23517b-b45e-4e7b-b908-c501c36abe16/reload HTTP/1.1
{}
@ -9,6 +9,6 @@ ACCESS-CONTROL-ALLOW-ORIGIN: *
CONNECTION: keep-alive
CONTENT-LENGTH: 0
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/projects/{project_id}/iou/vms/{vm_id}/reload

View File

@ -1,6 +1,6 @@
curl -i -X POST 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/f6f53adc-16a9-4fac-8f70-b8c7aedefa8d/start' -d '{"iourc_content": "test"}'
curl -i -X POST 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/2923f599-894a-4b18-a9eb-17a389298f84/start' -d '{"iourc_content": "test"}'
POST /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/f6f53adc-16a9-4fac-8f70-b8c7aedefa8d/start HTTP/1.1
POST /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/2923f599-894a-4b18-a9eb-17a389298f84/start HTTP/1.1
{
"iourc_content": "test"
}
@ -11,6 +11,6 @@ ACCESS-CONTROL-ALLOW-ORIGIN: *
CONNECTION: keep-alive
CONTENT-LENGTH: 0
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/projects/{project_id}/iou/vms/{vm_id}/start

View File

@ -1,6 +1,6 @@
curl -i -X POST 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/76fe121f-98f4-46e6-9507-74eac6c9975c/stop' -d '{}'
curl -i -X POST 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/ff05b41f-cd2b-4b33-90be-9362430b68ae/stop' -d '{}'
POST /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/76fe121f-98f4-46e6-9507-74eac6c9975c/stop HTTP/1.1
POST /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/ff05b41f-cd2b-4b33-90be-9362430b68ae/stop HTTP/1.1
{}
@ -9,6 +9,6 @@ ACCESS-CONTROL-ALLOW-ORIGIN: *
CONNECTION: keep-alive
CONTENT-LENGTH: 0
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/projects/{project_id}/iou/vms/{vm_id}/stop

View File

@ -10,7 +10,7 @@ CONNECTION: keep-alive
CONTENT-LENGTH: 25
CONTENT-TYPE: application/json
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/projects/{project_id}/ports/udp
{

View File

@ -1,10 +1,10 @@
curl -i -X POST 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms' -d '{"hda_disk_image": "/private/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/pytest-22/test_qemu_create_with_params0/linux.img", "name": "PC TEST 1", "qemu_path": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmpg645q6gq/qemu-system-x86_64", "ram": 1024}'
curl -i -X POST 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms' -d '{"hda_disk_image": "linux.img", "name": "PC TEST 1", "qemu_path": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmph3pfurip/qemu-system-x86_64", "ram": 1024}'
POST /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms HTTP/1.1
{
"hda_disk_image": "/private/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/pytest-22/test_qemu_create_with_params0/linux.img",
"hda_disk_image": "linux.img",
"name": "PC TEST 1",
"qemu_path": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmpg645q6gq/qemu-system-x86_64",
"qemu_path": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmph3pfurip/qemu-system-x86_64",
"ram": 1024
}
@ -12,41 +12,50 @@ POST /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms HTTP/1.1
HTTP/1.1 201
ACCESS-CONTROL-ALLOW-ORIGIN: *
CONNECTION: keep-alive
CONTENT-LENGTH: 1245
CONTENT-LENGTH: 1363
CONTENT-TYPE: application/json
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/projects/{project_id}/qemu/vms
{
"acpi_shutdown": false,
"adapter_type": "e1000",
"adapters": 1,
"console": 2000,
"boot_priority": "c",
"cdrom_image": "",
"cdrom_image_md5sum": null,
"console": 2001,
"console_type": "telnet",
"cpu_throttling": 0,
"hda_disk_image": "/private/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/pytest-22/test_qemu_create_with_params0/linux.img",
"hda_disk_image_md5sum": "c4ca4238a0b923820dcc509a6f75849b",
"cpus": 1,
"hda_disk_image": "linux.img",
"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": "00:00:ab:f6:c6:00",
"mac_address": "00:00:ab:50:58:00",
"name": "PC TEST 1",
"options": "",
"platform": "x86_64",
"process_priority": "low",
"project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80",
"qemu_path": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmpg645q6gq/qemu-system-x86_64",
"qemu_path": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmph3pfurip/qemu-system-x86_64",
"ram": 1024,
"vm_directory": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmp1454taw7/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/qemu/8f451a59-cf3f-4008-9528-85d251aef6c6",
"vm_id": "8f451a59-cf3f-4008-9528-85d251aef6c6"
"usage": "",
"vm_directory": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmpqqnauky9/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/qemu/b949f2e2-d338-4b51-aea9-270196ed5058",
"vm_id": "b949f2e2-d338-4b51-aea9-270196ed5058"
}

View File

@ -1,6 +1,6 @@
curl -i -X POST 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/5eb1581b-0c90-4d07-88ea-5891d130103e/adapters/1/ports/0/nio' -d '{"ethernet_device": "eth0", "type": "nio_generic_ethernet"}'
curl -i -X POST 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/82435d91-3cb5-4a44-abff-34a4ae46b24f/adapters/1/ports/0/nio' -d '{"ethernet_device": "eth0", "type": "nio_generic_ethernet"}'
POST /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/5eb1581b-0c90-4d07-88ea-5891d130103e/adapters/1/ports/0/nio HTTP/1.1
POST /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/82435d91-3cb5-4a44-abff-34a4ae46b24f/adapters/1/ports/0/nio HTTP/1.1
{
"ethernet_device": "eth0",
"type": "nio_generic_ethernet"
@ -13,7 +13,7 @@ CONNECTION: keep-alive
CONTENT-LENGTH: 89
CONTENT-TYPE: application/json
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/projects/{project_id}/qemu/vms/{vm_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio
{

View File

@ -1,6 +1,6 @@
curl -i -X POST 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/446babb8-ec70-46f9-b781-643ce488d083/reload' -d '{}'
curl -i -X POST 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/3275bdce-9b75-445f-8168-0103cd524182/reload' -d '{}'
POST /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/446babb8-ec70-46f9-b781-643ce488d083/reload HTTP/1.1
POST /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/3275bdce-9b75-445f-8168-0103cd524182/reload HTTP/1.1
{}
@ -9,6 +9,6 @@ ACCESS-CONTROL-ALLOW-ORIGIN: *
CONNECTION: keep-alive
CONTENT-LENGTH: 0
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/projects/{project_id}/qemu/vms/{vm_id}/reload

View File

@ -1,6 +1,6 @@
curl -i -X POST 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/f2c30f2f-67a3-41f6-8ed3-ea040cf46db9/resume' -d '{}'
curl -i -X POST 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/2d03502f-6b3f-4551-b924-b74fd5d6cdf5/resume' -d '{}'
POST /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/f2c30f2f-67a3-41f6-8ed3-ea040cf46db9/resume HTTP/1.1
POST /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/2d03502f-6b3f-4551-b924-b74fd5d6cdf5/resume HTTP/1.1
{}
@ -9,6 +9,6 @@ ACCESS-CONTROL-ALLOW-ORIGIN: *
CONNECTION: keep-alive
CONTENT-LENGTH: 0
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/projects/{project_id}/qemu/vms/{vm_id}/resume

View File

@ -1,6 +1,6 @@
curl -i -X POST 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/04f46db1-625b-462b-aa40-675547c3a8fa/start' -d '{}'
curl -i -X POST 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/04afa03a-3d9b-4aa7-945f-8f3077b6790e/start' -d '{}'
POST /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/04f46db1-625b-462b-aa40-675547c3a8fa/start HTTP/1.1
POST /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/04afa03a-3d9b-4aa7-945f-8f3077b6790e/start HTTP/1.1
{}
@ -9,6 +9,6 @@ ACCESS-CONTROL-ALLOW-ORIGIN: *
CONNECTION: keep-alive
CONTENT-LENGTH: 0
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/projects/{project_id}/qemu/vms/{vm_id}/start

View File

@ -1,6 +1,6 @@
curl -i -X POST 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/6cc6eae5-225c-433a-be15-d60f5e1210d2/stop' -d '{}'
curl -i -X POST 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/f5bfbadc-9a09-4090-a624-89be68858746/stop' -d '{}'
POST /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/6cc6eae5-225c-433a-be15-d60f5e1210d2/stop HTTP/1.1
POST /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/f5bfbadc-9a09-4090-a624-89be68858746/stop HTTP/1.1
{}
@ -9,6 +9,6 @@ ACCESS-CONTROL-ALLOW-ORIGIN: *
CONNECTION: keep-alive
CONTENT-LENGTH: 0
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/projects/{project_id}/qemu/vms/{vm_id}/stop

View File

@ -1,6 +1,6 @@
curl -i -X POST 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/2be5e4a8-f5ef-4b3c-b496-729d61c66beb/suspend' -d '{}'
curl -i -X POST 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/bb00b1e0-f19d-4ce8-b99a-82c1518fa33e/suspend' -d '{}'
POST /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/2be5e4a8-f5ef-4b3c-b496-729d61c66beb/suspend HTTP/1.1
POST /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/bb00b1e0-f19d-4ce8-b99a-82c1518fa33e/suspend HTTP/1.1
{}
@ -9,6 +9,6 @@ ACCESS-CONTROL-ALLOW-ORIGIN: *
CONNECTION: keep-alive
CONTENT-LENGTH: 0
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/projects/{project_id}/qemu/vms/{vm_id}/suspend

View File

@ -14,14 +14,14 @@ CONNECTION: keep-alive
CONTENT-LENGTH: 409
CONTENT-TYPE: application/json
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/projects/{project_id}/virtualbox/vms
{
"acpi_shutdown": false,
"adapter_type": "Intel PRO/1000 MT Desktop (82540EM)",
"adapters": 0,
"console": 2000,
"console": 2001,
"enable_remote_console": false,
"headless": false,
"name": "VM1",
@ -29,6 +29,6 @@ X-ROUTE: /v1/projects/{project_id}/virtualbox/vms
"ram": 0,
"use_any_adapter": false,
"vm_directory": null,
"vm_id": "bee2cbbc-07a3-4f27-98c3-db5001a01a0d",
"vm_id": "39cc5964-d0be-487b-9f0c-8fbea600e452",
"vmname": "VM1"
}

View File

@ -1,6 +1,6 @@
curl -i -X POST 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms/33f1c98b-0eb1-4387-b0f4-213f9b1c5bc0/adapters/0/ports/0/nio' -d '{"lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}'
curl -i -X POST 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms/556aba72-c19a-4fc3-a350-9454791687f4/adapters/0/ports/0/nio' -d '{"lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}'
POST /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms/33f1c98b-0eb1-4387-b0f4-213f9b1c5bc0/adapters/0/ports/0/nio HTTP/1.1
POST /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms/556aba72-c19a-4fc3-a350-9454791687f4/adapters/0/ports/0/nio HTTP/1.1
{
"lport": 4242,
"rhost": "127.0.0.1",
@ -15,7 +15,7 @@ CONNECTION: keep-alive
CONTENT-LENGTH: 89
CONTENT-TYPE: application/json
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/projects/{project_id}/virtualbox/vms/{vm_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio
{

View File

@ -1,6 +1,6 @@
curl -i -X POST 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms/78ed6b60-acd4-4340-87fa-9d4df0f82200/reload' -d '{}'
curl -i -X POST 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms/1a517572-9b86-441a-8347-1d28b01d9a41/reload' -d '{}'
POST /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms/78ed6b60-acd4-4340-87fa-9d4df0f82200/reload HTTP/1.1
POST /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms/1a517572-9b86-441a-8347-1d28b01d9a41/reload HTTP/1.1
{}
@ -9,6 +9,6 @@ ACCESS-CONTROL-ALLOW-ORIGIN: *
CONNECTION: keep-alive
CONTENT-LENGTH: 0
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/projects/{project_id}/virtualbox/vms/{vm_id}/reload

View File

@ -1,6 +1,6 @@
curl -i -X POST 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms/6ba54e29-d394-4526-baf9-f0d77799ecbd/resume' -d '{}'
curl -i -X POST 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms/7f5648e4-0ce8-49b3-b470-f2b821a5fe3e/resume' -d '{}'
POST /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms/6ba54e29-d394-4526-baf9-f0d77799ecbd/resume HTTP/1.1
POST /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms/7f5648e4-0ce8-49b3-b470-f2b821a5fe3e/resume HTTP/1.1
{}
@ -9,6 +9,6 @@ ACCESS-CONTROL-ALLOW-ORIGIN: *
CONNECTION: keep-alive
CONTENT-LENGTH: 0
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/projects/{project_id}/virtualbox/vms/{vm_id}/resume

View File

@ -1,6 +1,6 @@
curl -i -X POST 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms/a8635967-4e1f-4631-b8be-93d293ef5b75/start' -d '{}'
curl -i -X POST 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms/ee1fef8f-cbe1-4590-8c47-fbd12f7f6beb/start' -d '{}'
POST /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms/a8635967-4e1f-4631-b8be-93d293ef5b75/start HTTP/1.1
POST /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms/ee1fef8f-cbe1-4590-8c47-fbd12f7f6beb/start HTTP/1.1
{}
@ -9,6 +9,6 @@ ACCESS-CONTROL-ALLOW-ORIGIN: *
CONNECTION: keep-alive
CONTENT-LENGTH: 0
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/projects/{project_id}/virtualbox/vms/{vm_id}/start

View File

@ -1,6 +1,6 @@
curl -i -X POST 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms/04fb4675-c92e-409a-ac3e-23c5cf9dc45e/stop' -d '{}'
curl -i -X POST 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms/5e8543c3-45a7-4668-824f-01eaeb848898/stop' -d '{}'
POST /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms/04fb4675-c92e-409a-ac3e-23c5cf9dc45e/stop HTTP/1.1
POST /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms/5e8543c3-45a7-4668-824f-01eaeb848898/stop HTTP/1.1
{}
@ -9,6 +9,6 @@ ACCESS-CONTROL-ALLOW-ORIGIN: *
CONNECTION: keep-alive
CONTENT-LENGTH: 0
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/projects/{project_id}/virtualbox/vms/{vm_id}/stop

View File

@ -1,6 +1,6 @@
curl -i -X POST 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms/fb6ef07f-cc62-47b9-8b8f-76b4efaec6f3/suspend' -d '{}'
curl -i -X POST 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms/95f620da-c0e5-4404-81fc-10f3e18786cb/suspend' -d '{}'
POST /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms/fb6ef07f-cc62-47b9-8b8f-76b4efaec6f3/suspend HTTP/1.1
POST /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms/95f620da-c0e5-4404-81fc-10f3e18786cb/suspend HTTP/1.1
{}
@ -9,6 +9,6 @@ ACCESS-CONTROL-ALLOW-ORIGIN: *
CONNECTION: keep-alive
CONTENT-LENGTH: 0
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/projects/{project_id}/virtualbox/vms/{vm_id}/suspend

View File

@ -12,16 +12,16 @@ CONNECTION: keep-alive
CONTENT-LENGTH: 422
CONTENT-TYPE: application/json
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/projects/{project_id}/vpcs/vms
{
"console": 2009,
"console": 2010,
"name": "PC TEST 1",
"project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80",
"startup_script": null,
"startup_script_path": null,
"status": "stopped",
"vm_directory": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmp1454taw7/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/vpcs/8b66a930-f1bb-49e8-98c9-09d02bb45aa7",
"vm_id": "8b66a930-f1bb-49e8-98c9-09d02bb45aa7"
"vm_directory": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmpqqnauky9/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/vpcs/d1808514-893b-4aa5-86c2-c4dea88ff895",
"vm_id": "d1808514-893b-4aa5-86c2-c4dea88ff895"
}

View File

@ -1,6 +1,6 @@
curl -i -X POST 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms/a8957c94-8f09-4904-958c-d578ebb2c67d/adapters/0/ports/0/nio' -d '{"lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}'
curl -i -X POST 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms/fbf2e4d7-d60e-4e03-95bc-1bd53b74689a/adapters/0/ports/0/nio' -d '{"lport": 4242, "rhost": "127.0.0.1", "rport": 4343, "type": "nio_udp"}'
POST /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms/a8957c94-8f09-4904-958c-d578ebb2c67d/adapters/0/ports/0/nio HTTP/1.1
POST /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms/fbf2e4d7-d60e-4e03-95bc-1bd53b74689a/adapters/0/ports/0/nio HTTP/1.1
{
"lport": 4242,
"rhost": "127.0.0.1",
@ -15,7 +15,7 @@ CONNECTION: keep-alive
CONTENT-LENGTH: 89
CONTENT-TYPE: application/json
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/projects/{project_id}/vpcs/vms/{vm_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/nio
{

View File

@ -1,6 +1,6 @@
curl -i -X POST 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms/6c7a70fb-9b41-4e51-b785-110ce0863354/reload' -d '{}'
curl -i -X POST 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms/1a1b95de-cc91-4a90-870b-5c7c8965eb5d/reload' -d '{}'
POST /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms/6c7a70fb-9b41-4e51-b785-110ce0863354/reload HTTP/1.1
POST /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms/1a1b95de-cc91-4a90-870b-5c7c8965eb5d/reload HTTP/1.1
{}
@ -9,6 +9,6 @@ ACCESS-CONTROL-ALLOW-ORIGIN: *
CONNECTION: keep-alive
CONTENT-LENGTH: 0
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/projects/{project_id}/vpcs/vms/{vm_id}/reload

View File

@ -1,6 +1,6 @@
curl -i -X POST 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms/e1f5c0e2-56f0-4e2c-8bad-6c59c3281ee4/start' -d '{}'
curl -i -X POST 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms/184c6dcc-a8fd-4cc9-b333-86cc24f2e98e/start' -d '{}'
POST /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms/e1f5c0e2-56f0-4e2c-8bad-6c59c3281ee4/start HTTP/1.1
POST /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms/184c6dcc-a8fd-4cc9-b333-86cc24f2e98e/start HTTP/1.1
{}
@ -9,6 +9,6 @@ ACCESS-CONTROL-ALLOW-ORIGIN: *
CONNECTION: keep-alive
CONTENT-LENGTH: 0
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/projects/{project_id}/vpcs/vms/{vm_id}/start

View File

@ -1,6 +1,6 @@
curl -i -X POST 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms/89fb69cc-003f-463e-b7d2-3c8ceed73470/stop' -d '{}'
curl -i -X POST 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms/bc34aac0-6c5e-4b91-b2ea-47b76d4b26f1/stop' -d '{}'
POST /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms/89fb69cc-003f-463e-b7d2-3c8ceed73470/stop HTTP/1.1
POST /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms/bc34aac0-6c5e-4b91-b2ea-47b76d4b26f1/stop HTTP/1.1
{}
@ -9,6 +9,6 @@ ACCESS-CONTROL-ALLOW-ORIGIN: *
CONNECTION: keep-alive
CONTENT-LENGTH: 0
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/projects/{project_id}/vpcs/vms/{vm_id}/stop

View File

@ -0,0 +1,23 @@
curl -i -X POST 'http://localhost:8000/v1/qemu/img' -d '{"cluster_size": 64, "format": "qcow2", "lazy_refcounts": "off", "path": "/tmp/hda.qcow2", "preallocation": "metadata", "qemu_img": "/tmp/qemu-img", "refcount_bits": 12, "size": 100}'
POST /v1/qemu/img HTTP/1.1
{
"cluster_size": 64,
"format": "qcow2",
"lazy_refcounts": "off",
"path": "/tmp/hda.qcow2",
"preallocation": "metadata",
"qemu_img": "/tmp/qemu-img",
"refcount_bits": 12,
"size": 100
}
HTTP/1.1 201
ACCESS-CONTROL-ALLOW-ORIGIN: *
CONNECTION: keep-alive
CONTENT-LENGTH: 0
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/qemu/img

View File

@ -1,8 +1,8 @@
curl -i -X POST 'http://localhost:8000/v1/version' -d '{"version": "1.4.0.dev1"}'
curl -i -X POST 'http://localhost:8000/v1/version' -d '{"version": "1.4.0dev13"}'
POST /v1/version HTTP/1.1
{
"version": "1.4.0.dev1"
"version": "1.4.0dev13"
}
@ -12,9 +12,9 @@ CONNECTION: keep-alive
CONTENT-LENGTH: 31
CONTENT-TYPE: application/json
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/version
{
"version": "1.4.0.dev1"
"version": "1.4.0dev13"
}

View File

@ -1,9 +1,9 @@
curl -i -X PUT 'http://localhost:8000/v1/projects/f839d9a0-4f42-402c-a7c9-62c962785607' -d '{"name": "second_name", "path": "/private/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/pytest-22/test_update_path_project_non_l0"}'
curl -i -X PUT 'http://localhost:8000/v1/projects/9d7dccbb-0fc0-40d0-9420-912733dcbf74' -d '{"name": "second_name", "path": "/private/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/pytest-of-noplay/pytest-110/test_update_path_project_non_l0"}'
PUT /v1/projects/f839d9a0-4f42-402c-a7c9-62c962785607 HTTP/1.1
PUT /v1/projects/9d7dccbb-0fc0-40d0-9420-912733dcbf74 HTTP/1.1
{
"name": "second_name",
"path": "/private/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/pytest-22/test_update_path_project_non_l0"
"path": "/private/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/pytest-of-noplay/pytest-110/test_update_path_project_non_l0"
}
@ -13,7 +13,7 @@ CONNECTION: keep-alive
CONTENT-LENGTH: 100
CONTENT-TYPE: application/json
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/projects/{project_id}
{

View File

@ -1,8 +1,8 @@
curl -i -X PUT 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/cf340f09-e768-493d-ab47-ba3455cebc3d' -d '{"console": 2001, "ethernet_adapters": 4, "iourc_content": "test", "l1_keepalives": true, "name": "test", "nvram": 2048, "ram": 512, "serial_adapters": 0, "startup_config_content": "hostname test", "use_default_iou_values": true}'
curl -i -X PUT 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/6438493a-152d-4cb0-b8d2-fcfe1f6bf540' -d '{"console": 2002, "ethernet_adapters": 4, "iourc_content": "test", "l1_keepalives": true, "name": "test", "nvram": 2048, "ram": 512, "serial_adapters": 0, "startup_config_content": "hostname test", "use_default_iou_values": true}'
PUT /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/cf340f09-e768-493d-ab47-ba3455cebc3d HTTP/1.1
PUT /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/6438493a-152d-4cb0-b8d2-fcfe1f6bf540 HTTP/1.1
{
"console": 2001,
"console": 2002,
"ethernet_adapters": 4,
"iourc_content": "test",
"l1_keepalives": true,
@ -18,27 +18,27 @@ PUT /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/iou/vms/cf340f09-e768-493d
HTTP/1.1 200
ACCESS-CONTROL-ALLOW-ORIGIN: *
CONNECTION: keep-alive
CONTENT-LENGTH: 799
CONTENT-LENGTH: 685
CONTENT-TYPE: application/json
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/projects/{project_id}/iou/vms/{vm_id}
{
"console": 2001,
"console": 2002,
"ethernet_adapters": 4,
"iourc_path": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmpbeqacsc5/iourc",
"iourc_path": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmpyrljan4a/iourc",
"l1_keepalives": true,
"md5sum": "e573e8f5c93c6c00783f20c7a170aa6c",
"md5sum": null,
"name": "test",
"nvram": 2048,
"path": "/private/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/pytest-22/test_iou_update0/iou.bin",
"path": "iou.bin",
"private_config": null,
"project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80",
"ram": 512,
"serial_adapters": 0,
"startup_config": "startup-config.cfg",
"use_default_iou_values": true,
"vm_directory": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmpjb4sz6y3/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/iou/cf340f09-e768-493d-ab47-ba3455cebc3d",
"vm_id": "cf340f09-e768-493d-ab47-ba3455cebc3d"
"vm_directory": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmp2yt9sd1l/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/iou/6438493a-152d-4cb0-b8d2-fcfe1f6bf540",
"vm_id": "6438493a-152d-4cb0-b8d2-fcfe1f6bf540"
}

View File

@ -1,9 +1,9 @@
curl -i -X PUT 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/4e9e2bd5-6cba-4d64-a3f5-7d689f51d151' -d '{"console": 2001, "hdb_disk_image": "/private/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/pytest-22/test_qemu_update0/linux.img", "name": "test", "ram": 1024}'
curl -i -X PUT 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/578b6391-e461-4f17-86f6-dd556d2f4dde' -d '{"console": 2002, "hdb_disk_image": "linux.img", "name": "test", "ram": 1024}'
PUT /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/4e9e2bd5-6cba-4d64-a3f5-7d689f51d151 HTTP/1.1
PUT /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/578b6391-e461-4f17-86f6-dd556d2f4dde HTTP/1.1
{
"console": 2001,
"hdb_disk_image": "/private/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/pytest-22/test_qemu_update0/linux.img",
"console": 2002,
"hdb_disk_image": "linux.img",
"name": "test",
"ram": 1024
}
@ -12,41 +12,50 @@ PUT /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/qemu/vms/4e9e2bd5-6cba-4d6
HTTP/1.1 200
ACCESS-CONTROL-ALLOW-ORIGIN: *
CONNECTION: keep-alive
CONTENT-LENGTH: 1228
CONTENT-LENGTH: 1358
CONTENT-TYPE: application/json
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/projects/{project_id}/qemu/vms/{vm_id}
{
"acpi_shutdown": false,
"adapter_type": "e1000",
"adapters": 1,
"console": 2001,
"boot_priority": "c",
"cdrom_image": "",
"cdrom_image_md5sum": null,
"console": 2002,
"console_type": "telnet",
"cpu_throttling": 0,
"cpus": 1,
"hda_disk_image": "",
"hda_disk_image_md5sum": null,
"hdb_disk_image": "/private/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/pytest-22/test_qemu_update0/linux.img",
"hdb_disk_image_md5sum": "c4ca4238a0b923820dcc509a6f75849b",
"hda_disk_interface": "ide",
"hdb_disk_image": "linux.img",
"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": "00:00:ab:d1:51:00",
"mac_address": "00:00:ab:4d:de:00",
"name": "test",
"options": "",
"platform": "x86_64",
"process_priority": "low",
"project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80",
"qemu_path": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmpg645q6gq/qemu-system-x86_64",
"qemu_path": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmph3pfurip/qemu-system-x86_64",
"ram": 1024,
"vm_directory": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmp1454taw7/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/qemu/4e9e2bd5-6cba-4d64-a3f5-7d689f51d151",
"vm_id": "4e9e2bd5-6cba-4d64-a3f5-7d689f51d151"
"usage": "",
"vm_directory": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmpqqnauky9/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/qemu/578b6391-e461-4f17-86f6-dd556d2f4dde",
"vm_id": "578b6391-e461-4f17-86f6-dd556d2f4dde"
}

View File

@ -1,8 +1,8 @@
curl -i -X PUT 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms/82618463-4c91-4166-8c01-78a4b434813a' -d '{"console": 2010, "name": "test"}'
curl -i -X PUT 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms/aa45d68c-c68e-4296-9550-641b522a73c2' -d '{"console": 2011, "name": "test"}'
PUT /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms/82618463-4c91-4166-8c01-78a4b434813a HTTP/1.1
PUT /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/virtualbox/vms/aa45d68c-c68e-4296-9550-641b522a73c2 HTTP/1.1
{
"console": 2010,
"console": 2011,
"name": "test"
}
@ -13,14 +13,14 @@ CONNECTION: keep-alive
CONTENT-LENGTH: 413
CONTENT-TYPE: application/json
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/projects/{project_id}/virtualbox/vms/{vm_id}
{
"acpi_shutdown": false,
"adapter_type": "Intel PRO/1000 MT Desktop (82540EM)",
"adapters": 0,
"console": 2010,
"console": 2011,
"enable_remote_console": false,
"headless": false,
"name": "test",
@ -28,6 +28,6 @@ X-ROUTE: /v1/projects/{project_id}/virtualbox/vms/{vm_id}
"ram": 0,
"use_any_adapter": false,
"vm_directory": null,
"vm_id": "82618463-4c91-4166-8c01-78a4b434813a",
"vm_id": "aa45d68c-c68e-4296-9550-641b522a73c2",
"vmname": "VMTEST"
}

View File

@ -1,8 +1,8 @@
curl -i -X PUT 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms/f46f9884-594c-4426-a46d-7699410ec0b1' -d '{"console": 2011, "name": "test", "startup_script": "ip 192.168.1.1"}'
curl -i -X PUT 'http://localhost:8000/v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms/608a4cd0-476c-40ba-95db-0c81effc8e9c' -d '{"console": 2012, "name": "test", "startup_script": "ip 192.168.1.1"}'
PUT /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms/f46f9884-594c-4426-a46d-7699410ec0b1 HTTP/1.1
PUT /v1/projects/a1e920ca-338a-4e9f-b363-aa607b09dd80/vpcs/vms/608a4cd0-476c-40ba-95db-0c81effc8e9c HTTP/1.1
{
"console": 2011,
"console": 2012,
"name": "test",
"startup_script": "ip 192.168.1.1"
}
@ -14,16 +14,16 @@ CONNECTION: keep-alive
CONTENT-LENGTH: 438
CONTENT-TYPE: application/json
DATE: Thu, 08 Jan 2015 16:09:15 GMT
SERVER: Python/3.4 GNS3/1.4.0.dev1
SERVER: Python/3.5 GNS3/1.4.0dev13
X-ROUTE: /v1/projects/{project_id}/vpcs/vms/{vm_id}
{
"console": 2011,
"console": 2012,
"name": "test",
"project_id": "a1e920ca-338a-4e9f-b363-aa607b09dd80",
"startup_script": "ip 192.168.1.1",
"startup_script_path": "startup.vpc",
"status": "stopped",
"vm_directory": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmp1454taw7/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/vpcs/f46f9884-594c-4426-a46d-7699410ec0b1",
"vm_id": "f46f9884-594c-4426-a46d-7699410ec0b1"
"vm_directory": "/var/folders/3s/r2wbv07n7wg4vrsn874lmxxh0000gn/T/tmpqqnauky9/a1e920ca-338a-4e9f-b363-aa607b09dd80/project-files/vpcs/608a4cd0-476c-40ba-95db-0c81effc8e9c",
"vm_id": "608a4cd0-476c-40ba-95db-0c81effc8e9c"
}

View File

@ -9,8 +9,8 @@ Get a Dynamips device instance
Parameters
**********
- **project_id**: UUID for the project
- **device_id**: UUID for the instance
- **project_id**: UUID for the project
Response status codes
**********************
@ -38,8 +38,8 @@ Update a Dynamips device instance
Parameters
**********
- **project_id**: UUID for the project
- **device_id**: UUID for the instance
- **project_id**: UUID for the project
Response status codes
**********************
@ -60,6 +60,7 @@ Ethernet switch port
<table>
<tr> <th>Name</th> <th>Mandatory</th> <th>Type</th> <th>Description</th> </tr>
<tr><td>ethertype</td> <td> </td> <td>enum</td> <td>Possible values: , 0x8100, 0x88A8, 0x9100, 0x9200</td> </tr>
<tr><td>port</td> <td>&#10004;</td> <td>integer</td> <td>Port number</td> </tr>
<tr><td>type</td> <td>&#10004;</td> <td>enum</td> <td>Possible values: access, dot1q, qinq</td> </tr>
<tr><td>vlan</td> <td>&#10004;</td> <td>integer</td> <td>VLAN number</td> </tr>
@ -95,8 +96,8 @@ Delete a Dynamips device instance
Parameters
**********
- **project_id**: UUID for the project
- **device_id**: UUID for the instance
- **project_id**: UUID for the project
Response status codes
**********************

View File

@ -9,8 +9,8 @@ Add a NIO to a Dynamips device instance
Parameters
**********
- **project_id**: UUID for the project
- **device_id**: UUID for the instance
- **project_id**: UUID for the project
- **port_number**: Port on the device
Response status codes
@ -139,8 +139,8 @@ Remove a NIO from a Dynamips device instance
Parameters
**********
- **project_id**: UUID for the project
- **device_id**: UUID for the instance
- **project_id**: UUID for the project
- **port_number**: Port on the device
Response status codes

View File

@ -9,8 +9,8 @@ Start a packet capture on a Dynamips device instance
Parameters
**********
- **project_id**: UUID for the project
- **device_id**: UUID for the instance
- **project_id**: UUID for the project
- **port_number**: Port on the device
Response status codes

View File

@ -9,8 +9,8 @@ Stop a packet capture on a Dynamips device instance
Parameters
**********
- **project_id**: UUID for the project
- **device_id**: UUID for the instance
- **project_id**: UUID for the project
- **port_number**: Port on the device
Response status codes

View File

@ -1,9 +1,9 @@
/v1/dynamips/vms/{filename}
/v1/dynamips/vms/{path}
----------------------------------------------------------------------------------------------------------------------
.. contents::
POST /v1/dynamips/vms/**{filename}**
POST /v1/dynamips/vms/**{path}**
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Upload Dynamips image.

View File

@ -10,9 +10,9 @@ Add a NIO to a Dynamips VM instance
Parameters
**********
- **adapter_number**: Adapter where the nio should be added
- **port_number**: Port on the adapter
- **project_id**: UUID for the project
- **vm_id**: UUID for the instance
- **port_number**: Port on the adapter
Response status codes
**********************
@ -28,9 +28,9 @@ Remove a NIO from a Dynamips VM instance
Parameters
**********
- **adapter_number**: Adapter from where the nio should be removed
- **port_number**: Port on the adapter
- **project_id**: UUID for the project
- **vm_id**: UUID for the instance
- **port_number**: Port on the adapter
Response status codes
**********************

View File

@ -10,9 +10,9 @@ Start a packet capture on a Dynamips VM instance
Parameters
**********
- **adapter_number**: Adapter to start a packet capture
- **port_number**: Port on the adapter
- **project_id**: UUID for the project
- **vm_id**: UUID for the instance
- **port_number**: Port on the adapter
Response status codes
**********************

View File

@ -10,9 +10,9 @@ Stop a packet capture on a Dynamips VM instance
Parameters
**********
- **adapter_number**: Adapter to stop a packet capture
- **port_number**: Port on the adapter (always 0)
- **project_id**: UUID for the project
- **vm_id**: UUID for the instance
- **port_number**: Port on the adapter (always 0)
Response status codes
**********************

View File

@ -1,9 +1,9 @@
/v1/iou/vms/{filename}
/v1/iou/vms/{path}
----------------------------------------------------------------------------------------------------------------------
.. contents::
POST /v1/iou/vms/**{filename}**
POST /v1/iou/vms/**{path}**
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Upload IOU image.

View File

@ -10,9 +10,9 @@ Add a NIO to a IOU instance
Parameters
**********
- **adapter_number**: Network adapter where the nio is located
- **port_number**: Port where the nio should be added
- **project_id**: UUID for the project
- **vm_id**: UUID for the instance
- **port_number**: Port where the nio should be added
Response status codes
**********************
@ -34,9 +34,9 @@ Remove a NIO from a IOU instance
Parameters
**********
- **adapter_number**: Network adapter where the nio is located
- **port_number**: Port from where the nio should be removed
- **project_id**: UUID for the project
- **vm_id**: UUID for the instance
- **port_number**: Port from where the nio should be removed
Response status codes
**********************

View File

@ -10,9 +10,9 @@ Start a packet capture on a IOU VM instance
Parameters
**********
- **adapter_number**: Adapter to start a packet capture
- **port_number**: Port on the adapter
- **project_id**: UUID for the project
- **vm_id**: UUID for the instance
- **port_number**: Port on the adapter
Response status codes
**********************

View File

@ -10,9 +10,9 @@ Stop a packet capture on a IOU VM instance
Parameters
**********
- **adapter_number**: Adapter to stop a packet capture
- **port_number**: Port on the adapter (always 0)
- **project_id**: UUID for the project
- **vm_id**: UUID for the instance
- **port_number**: Port on the adapter (always 0)
Response status codes
**********************

View File

@ -3,6 +3,21 @@
.. contents::
GET /v1/projects
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
List projects opened on the server
Response status codes
**********************
- **200**: Project list
Sample session
***************
.. literalinclude:: ../../examples/get_projects.txt
POST /v1/projects
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Create a new project on the server
@ -31,7 +46,7 @@ Output
<table>
<tr> <th>Name</th> <th>Mandatory</th> <th>Type</th> <th>Description</th> </tr>
<tr><td>location</td> <td>&#10004;</td> <td>string</td> <td>Base directory where the project should be created on remote server</td> </tr>
<tr><td>name</td> <td> </td> <td>string</td> <td>Project name</td> </tr>
<tr><td>name</td> <td> </td> <td>['string', 'null']</td> <td>Project name</td> </tr>
<tr><td>path</td> <td> </td> <td>string</td> <td>Directory of the project on the server</td> </tr>
<tr><td>project_id</td> <td>&#10004;</td> <td>string</td> <td>Project UUID</td> </tr>
<tr><td>temporary</td> <td>&#10004;</td> <td>boolean</td> <td>If project is a temporary project</td> </tr>

View File

@ -23,7 +23,7 @@ Output
<table>
<tr> <th>Name</th> <th>Mandatory</th> <th>Type</th> <th>Description</th> </tr>
<tr><td>location</td> <td>&#10004;</td> <td>string</td> <td>Base directory where the project should be created on remote server</td> </tr>
<tr><td>name</td> <td> </td> <td>string</td> <td>Project name</td> </tr>
<tr><td>name</td> <td> </td> <td>['string', 'null']</td> <td>Project name</td> </tr>
<tr><td>path</td> <td> </td> <td>string</td> <td>Directory of the project on the server</td> </tr>
<tr><td>project_id</td> <td>&#10004;</td> <td>string</td> <td>Project UUID</td> </tr>
<tr><td>temporary</td> <td>&#10004;</td> <td>boolean</td> <td>If project is a temporary project</td> </tr>
@ -68,7 +68,7 @@ Output
<table>
<tr> <th>Name</th> <th>Mandatory</th> <th>Type</th> <th>Description</th> </tr>
<tr><td>location</td> <td>&#10004;</td> <td>string</td> <td>Base directory where the project should be created on remote server</td> </tr>
<tr><td>name</td> <td> </td> <td>string</td> <td>Project name</td> </tr>
<tr><td>name</td> <td> </td> <td>['string', 'null']</td> <td>Project name</td> </tr>
<tr><td>path</td> <td> </td> <td>string</td> <td>Directory of the project on the server</td> </tr>
<tr><td>project_id</td> <td>&#10004;</td> <td>string</td> <td>Project UUID</td> </tr>
<tr><td>temporary</td> <td>&#10004;</td> <td>boolean</td> <td>If project is a temporary project</td> </tr>

View File

@ -26,23 +26,32 @@ Input
<tr><td>acpi_shutdown</td> <td> </td> <td>['boolean', 'null']</td> <td>ACPI shutdown support</td> </tr>
<tr><td>adapter_type</td> <td> </td> <td>['string', 'null']</td> <td>QEMU adapter type</td> </tr>
<tr><td>adapters</td> <td> </td> <td>['integer', 'null']</td> <td>number of adapters</td> </tr>
<tr><td>boot_priority</td> <td> </td> <td>enum</td> <td>Possible values: c, d, n, cn, cd</td> </tr>
<tr><td>cdrom_image</td> <td> </td> <td>string</td> <td>QEMU cdrom image path</td> </tr>
<tr><td>cdrom_image_md5sum</td> <td> </td> <td>['string', 'null']</td> <td>QEMU cdrom image checksum</td> </tr>
<tr><td>console</td> <td> </td> <td>['integer', 'null']</td> <td>console TCP port</td> </tr>
<tr><td>console_type</td> <td> </td> <td>enum</td> <td>Possible values: telnet, vnc</td> </tr>
<tr><td>cpu_throttling</td> <td> </td> <td>['integer', 'null']</td> <td>Percentage of CPU allowed for QEMU</td> </tr>
<tr><td>cpus</td> <td> </td> <td>['integer', 'null']</td> <td>number of vCPUs</td> </tr>
<tr><td>hda_disk_image</td> <td> </td> <td>string</td> <td>QEMU hda disk image path</td> </tr>
<tr><td>hda_disk_image_md5sum</td> <td> </td> <td>['string', 'null']</td> <td>QEMU hda disk image checksum</td> </tr>
<tr><td>hda_disk_interface</td> <td> </td> <td>string</td> <td>QEMU hda interface</td> </tr>
<tr><td>hdb_disk_image</td> <td> </td> <td>string</td> <td>QEMU hdb disk image path</td> </tr>
<tr><td>hdb_disk_image_md5sum</td> <td> </td> <td>['string', 'null']</td> <td>QEMU hdb disk image checksum</td> </tr>
<tr><td>hdb_disk_interface</td> <td> </td> <td>string</td> <td>QEMU hdb interface</td> </tr>
<tr><td>hdc_disk_image</td> <td> </td> <td>string</td> <td>QEMU hdc disk image path</td> </tr>
<tr><td>hdc_disk_image_md5sum</td> <td> </td> <td>['string', 'null']</td> <td>QEMU hdc disk image checksum</td> </tr>
<tr><td>hdc_disk_interface</td> <td> </td> <td>string</td> <td>QEMU hdc interface</td> </tr>
<tr><td>hdd_disk_image</td> <td> </td> <td>string</td> <td>QEMU hdd disk image path</td> </tr>
<tr><td>hdd_disk_image_md5sum</td> <td> </td> <td>['string', 'null']</td> <td>QEMU hdd disk image checksum</td> </tr>
<tr><td>hdd_disk_interface</td> <td> </td> <td>string</td> <td>QEMU hdd interface</td> </tr>
<tr><td>initrd</td> <td> </td> <td>string</td> <td>QEMU initrd path</td> </tr>
<tr><td>initrd_md5sum</td> <td> </td> <td>['string', 'null']</td> <td>QEMU initrd path</td> </tr>
<tr><td>kernel_command_line</td> <td> </td> <td>['string', 'null']</td> <td>QEMU kernel command line</td> </tr>
<tr><td>kernel_image</td> <td> </td> <td>string</td> <td>QEMU kernel image path</td> </tr>
<tr><td>kernel_image_md5sum</td> <td> </td> <td>['string', 'null']</td> <td>QEMU kernel image checksum</td> </tr>
<tr><td>legacy_networking</td> <td> </td> <td>['boolean', 'null']</td> <td>Use QEMU legagy networking commands (-net syntax)</td> </tr>
<tr><td>linked_clone</td> <td> </td> <td>boolean</td> <td>either the VM is a linked clone or not</td> </tr>
<tr><td>mac_address</td> <td> </td> <td>['string', 'null']</td> <td>QEMU MAC address</td> </tr>
<tr><td>name</td> <td>&#10004;</td> <td>string</td> <td>QEMU VM instance name</td> </tr>
<tr><td>options</td> <td> </td> <td>['string', 'null']</td> <td>Additional QEMU options</td> </tr>
@ -50,6 +59,7 @@ Input
<tr><td>process_priority</td> <td> </td> <td>enum</td> <td>Possible values: realtime, very high, high, normal, low, very low, null</td> </tr>
<tr><td>qemu_path</td> <td> </td> <td>['string', 'null']</td> <td>Path to QEMU</td> </tr>
<tr><td>ram</td> <td> </td> <td>['integer', 'null']</td> <td>amount of RAM in MB</td> </tr>
<tr><td>usage</td> <td> </td> <td>string</td> <td>How to use the qemu VM</td> </tr>
<tr><td>vm_id</td> <td> </td> <td></td> <td>QEMU VM identifier</td> </tr>
</table>
@ -62,17 +72,25 @@ Output
<tr><td>acpi_shutdown</td> <td>&#10004;</td> <td>boolean</td> <td>ACPI shutdown support</td> </tr>
<tr><td>adapter_type</td> <td>&#10004;</td> <td>string</td> <td>QEMU adapter type</td> </tr>
<tr><td>adapters</td> <td>&#10004;</td> <td>integer</td> <td>number of adapters</td> </tr>
<tr><td>boot_priority</td> <td>&#10004;</td> <td>enum</td> <td>Possible values: c, d</td> </tr>
<tr><td>cdrom_image</td> <td>&#10004;</td> <td>string</td> <td>QEMU cdrom image path</td> </tr>
<tr><td>cdrom_image_md5sum</td> <td>&#10004;</td> <td>['string', 'null']</td> <td>QEMU cdrom image checksum</td> </tr>
<tr><td>console</td> <td>&#10004;</td> <td>integer</td> <td>console TCP port</td> </tr>
<tr><td>console_type</td> <td>&#10004;</td> <td>enum</td> <td>Possible values: telnet, vnc</td> </tr>
<tr><td>cpu_throttling</td> <td>&#10004;</td> <td>integer</td> <td>Percentage of CPU allowed for QEMU</td> </tr>
<tr><td>cpus</td> <td>&#10004;</td> <td>['integer', 'null']</td> <td>number of vCPUs</td> </tr>
<tr><td>hda_disk_image</td> <td>&#10004;</td> <td>string</td> <td>QEMU hda disk image path</td> </tr>
<tr><td>hda_disk_image_md5sum</td> <td>&#10004;</td> <td>['string', 'null']</td> <td>QEMU hda disk image checksum</td> </tr>
<tr><td>hda_disk_interface</td> <td>&#10004;</td> <td>string</td> <td>QEMU hda interface</td> </tr>
<tr><td>hdb_disk_image</td> <td>&#10004;</td> <td>string</td> <td>QEMU hdb disk image path</td> </tr>
<tr><td>hdb_disk_image_md5sum</td> <td>&#10004;</td> <td>['string', 'null']</td> <td>QEMU hdb disk image checksum</td> </tr>
<tr><td>hdb_disk_interface</td> <td>&#10004;</td> <td>string</td> <td>QEMU hdb interface</td> </tr>
<tr><td>hdc_disk_image</td> <td>&#10004;</td> <td>string</td> <td>QEMU hdc disk image path</td> </tr>
<tr><td>hdc_disk_image_md5sum</td> <td>&#10004;</td> <td>['string', 'null']</td> <td>QEMU hdc disk image checksum</td> </tr>
<tr><td>hdc_disk_interface</td> <td>&#10004;</td> <td>string</td> <td>QEMU hdc interface</td> </tr>
<tr><td>hdd_disk_image</td> <td>&#10004;</td> <td>string</td> <td>QEMU hdd disk image path</td> </tr>
<tr><td>hdd_disk_image_md5sum</td> <td>&#10004;</td> <td>['string', 'null']</td> <td>QEMU hdd disk image checksum</td> </tr>
<tr><td>hdd_disk_interface</td> <td>&#10004;</td> <td>string</td> <td>QEMU hdd interface</td> </tr>
<tr><td>initrd</td> <td>&#10004;</td> <td>string</td> <td>QEMU initrd path</td> </tr>
<tr><td>initrd_md5sum</td> <td>&#10004;</td> <td>['string', 'null']</td> <td>QEMU initrd path</td> </tr>
<tr><td>kernel_command_line</td> <td>&#10004;</td> <td>string</td> <td>QEMU kernel command line</td> </tr>
@ -87,6 +105,7 @@ Output
<tr><td>project_id</td> <td>&#10004;</td> <td>string</td> <td>Project uuid</td> </tr>
<tr><td>qemu_path</td> <td>&#10004;</td> <td>string</td> <td>path to QEMU</td> </tr>
<tr><td>ram</td> <td>&#10004;</td> <td>integer</td> <td>amount of RAM in MB</td> </tr>
<tr><td>usage</td> <td>&#10004;</td> <td>string</td> <td>How to use the qemu VM</td> </tr>
<tr><td>vm_directory</td> <td>&#10004;</td> <td>string</td> <td></td> </tr>
<tr><td>vm_id</td> <td>&#10004;</td> <td>string</td> <td>QEMU VM uuid</td> </tr>
</table>

View File

@ -27,17 +27,25 @@ Output
<tr><td>acpi_shutdown</td> <td>&#10004;</td> <td>boolean</td> <td>ACPI shutdown support</td> </tr>
<tr><td>adapter_type</td> <td>&#10004;</td> <td>string</td> <td>QEMU adapter type</td> </tr>
<tr><td>adapters</td> <td>&#10004;</td> <td>integer</td> <td>number of adapters</td> </tr>
<tr><td>boot_priority</td> <td>&#10004;</td> <td>enum</td> <td>Possible values: c, d</td> </tr>
<tr><td>cdrom_image</td> <td>&#10004;</td> <td>string</td> <td>QEMU cdrom image path</td> </tr>
<tr><td>cdrom_image_md5sum</td> <td>&#10004;</td> <td>['string', 'null']</td> <td>QEMU cdrom image checksum</td> </tr>
<tr><td>console</td> <td>&#10004;</td> <td>integer</td> <td>console TCP port</td> </tr>
<tr><td>console_type</td> <td>&#10004;</td> <td>enum</td> <td>Possible values: telnet, vnc</td> </tr>
<tr><td>cpu_throttling</td> <td>&#10004;</td> <td>integer</td> <td>Percentage of CPU allowed for QEMU</td> </tr>
<tr><td>cpus</td> <td>&#10004;</td> <td>['integer', 'null']</td> <td>number of vCPUs</td> </tr>
<tr><td>hda_disk_image</td> <td>&#10004;</td> <td>string</td> <td>QEMU hda disk image path</td> </tr>
<tr><td>hda_disk_image_md5sum</td> <td>&#10004;</td> <td>['string', 'null']</td> <td>QEMU hda disk image checksum</td> </tr>
<tr><td>hda_disk_interface</td> <td>&#10004;</td> <td>string</td> <td>QEMU hda interface</td> </tr>
<tr><td>hdb_disk_image</td> <td>&#10004;</td> <td>string</td> <td>QEMU hdb disk image path</td> </tr>
<tr><td>hdb_disk_image_md5sum</td> <td>&#10004;</td> <td>['string', 'null']</td> <td>QEMU hdb disk image checksum</td> </tr>
<tr><td>hdb_disk_interface</td> <td>&#10004;</td> <td>string</td> <td>QEMU hdb interface</td> </tr>
<tr><td>hdc_disk_image</td> <td>&#10004;</td> <td>string</td> <td>QEMU hdc disk image path</td> </tr>
<tr><td>hdc_disk_image_md5sum</td> <td>&#10004;</td> <td>['string', 'null']</td> <td>QEMU hdc disk image checksum</td> </tr>
<tr><td>hdc_disk_interface</td> <td>&#10004;</td> <td>string</td> <td>QEMU hdc interface</td> </tr>
<tr><td>hdd_disk_image</td> <td>&#10004;</td> <td>string</td> <td>QEMU hdd disk image path</td> </tr>
<tr><td>hdd_disk_image_md5sum</td> <td>&#10004;</td> <td>['string', 'null']</td> <td>QEMU hdd disk image checksum</td> </tr>
<tr><td>hdd_disk_interface</td> <td>&#10004;</td> <td>string</td> <td>QEMU hdd interface</td> </tr>
<tr><td>initrd</td> <td>&#10004;</td> <td>string</td> <td>QEMU initrd path</td> </tr>
<tr><td>initrd_md5sum</td> <td>&#10004;</td> <td>['string', 'null']</td> <td>QEMU initrd path</td> </tr>
<tr><td>kernel_command_line</td> <td>&#10004;</td> <td>string</td> <td>QEMU kernel command line</td> </tr>
@ -52,6 +60,7 @@ Output
<tr><td>project_id</td> <td>&#10004;</td> <td>string</td> <td>Project uuid</td> </tr>
<tr><td>qemu_path</td> <td>&#10004;</td> <td>string</td> <td>path to QEMU</td> </tr>
<tr><td>ram</td> <td>&#10004;</td> <td>integer</td> <td>amount of RAM in MB</td> </tr>
<tr><td>usage</td> <td>&#10004;</td> <td>string</td> <td>How to use the qemu VM</td> </tr>
<tr><td>vm_directory</td> <td>&#10004;</td> <td>string</td> <td></td> </tr>
<tr><td>vm_id</td> <td>&#10004;</td> <td>string</td> <td>QEMU VM uuid</td> </tr>
</table>
@ -88,17 +97,25 @@ Input
<tr><td>acpi_shutdown</td> <td> </td> <td>['boolean', 'null']</td> <td>ACPI shutdown support</td> </tr>
<tr><td>adapter_type</td> <td> </td> <td>['string', 'null']</td> <td>QEMU adapter type</td> </tr>
<tr><td>adapters</td> <td> </td> <td>['integer', 'null']</td> <td>number of adapters</td> </tr>
<tr><td>boot_priority</td> <td> </td> <td>enum</td> <td>Possible values: c, d</td> </tr>
<tr><td>cdrom_image</td> <td> </td> <td>string</td> <td>QEMU cdrom image path</td> </tr>
<tr><td>cdrom_image_md5sum</td> <td> </td> <td>['string', 'null']</td> <td>QEMU cdrom image checksum</td> </tr>
<tr><td>console</td> <td> </td> <td>['integer', 'null']</td> <td>console TCP port</td> </tr>
<tr><td>console_type</td> <td> </td> <td>enum</td> <td>Possible values: telnet, vnc</td> </tr>
<tr><td>cpu_throttling</td> <td> </td> <td>['integer', 'null']</td> <td>Percentage of CPU allowed for QEMU</td> </tr>
<tr><td>cpus</td> <td> </td> <td>['integer', 'null']</td> <td>number of vCPUs</td> </tr>
<tr><td>hda_disk_image</td> <td> </td> <td>string</td> <td>QEMU hda disk image path</td> </tr>
<tr><td>hda_disk_image_md5sum</td> <td> </td> <td>['string', 'null']</td> <td>QEMU hda disk image checksum</td> </tr>
<tr><td>hda_disk_interface</td> <td> </td> <td>string</td> <td>QEMU hda interface</td> </tr>
<tr><td>hdb_disk_image</td> <td> </td> <td>string</td> <td>QEMU hdb disk image path</td> </tr>
<tr><td>hdb_disk_image_md5sum</td> <td> </td> <td>['string', 'null']</td> <td>QEMU hdb disk image checksum</td> </tr>
<tr><td>hdb_disk_interface</td> <td> </td> <td>string</td> <td>QEMU hdb interface</td> </tr>
<tr><td>hdc_disk_image</td> <td> </td> <td>string</td> <td>QEMU hdc disk image path</td> </tr>
<tr><td>hdc_disk_image_md5sum</td> <td> </td> <td>['string', 'null']</td> <td>QEMU hdc disk image checksum</td> </tr>
<tr><td>hdc_disk_interface</td> <td> </td> <td>string</td> <td>QEMU hdc interface</td> </tr>
<tr><td>hdd_disk_image</td> <td> </td> <td>string</td> <td>QEMU hdd disk image path</td> </tr>
<tr><td>hdd_disk_image_md5sum</td> <td> </td> <td>['string', 'null']</td> <td>QEMU hdd disk image checksum</td> </tr>
<tr><td>hdd_disk_interface</td> <td> </td> <td>string</td> <td>QEMU hdd interface</td> </tr>
<tr><td>initrd</td> <td> </td> <td>string</td> <td>QEMU initrd path</td> </tr>
<tr><td>initrd_md5sum</td> <td> </td> <td>['string', 'null']</td> <td>QEMU initrd path</td> </tr>
<tr><td>kernel_command_line</td> <td> </td> <td>['string', 'null']</td> <td>QEMU kernel command line</td> </tr>
@ -112,6 +129,7 @@ Input
<tr><td>process_priority</td> <td> </td> <td>enum</td> <td>Possible values: realtime, very high, high, normal, low, very low, null</td> </tr>
<tr><td>qemu_path</td> <td> </td> <td>['string', 'null']</td> <td>Path to QEMU</td> </tr>
<tr><td>ram</td> <td> </td> <td>['integer', 'null']</td> <td>amount of RAM in MB</td> </tr>
<tr><td>usage</td> <td> </td> <td>string</td> <td>How to use the qemu VM</td> </tr>
</table>
Output
@ -123,17 +141,25 @@ Output
<tr><td>acpi_shutdown</td> <td>&#10004;</td> <td>boolean</td> <td>ACPI shutdown support</td> </tr>
<tr><td>adapter_type</td> <td>&#10004;</td> <td>string</td> <td>QEMU adapter type</td> </tr>
<tr><td>adapters</td> <td>&#10004;</td> <td>integer</td> <td>number of adapters</td> </tr>
<tr><td>boot_priority</td> <td>&#10004;</td> <td>enum</td> <td>Possible values: c, d</td> </tr>
<tr><td>cdrom_image</td> <td>&#10004;</td> <td>string</td> <td>QEMU cdrom image path</td> </tr>
<tr><td>cdrom_image_md5sum</td> <td>&#10004;</td> <td>['string', 'null']</td> <td>QEMU cdrom image checksum</td> </tr>
<tr><td>console</td> <td>&#10004;</td> <td>integer</td> <td>console TCP port</td> </tr>
<tr><td>console_type</td> <td>&#10004;</td> <td>enum</td> <td>Possible values: telnet, vnc</td> </tr>
<tr><td>cpu_throttling</td> <td>&#10004;</td> <td>integer</td> <td>Percentage of CPU allowed for QEMU</td> </tr>
<tr><td>cpus</td> <td>&#10004;</td> <td>['integer', 'null']</td> <td>number of vCPUs</td> </tr>
<tr><td>hda_disk_image</td> <td>&#10004;</td> <td>string</td> <td>QEMU hda disk image path</td> </tr>
<tr><td>hda_disk_image_md5sum</td> <td>&#10004;</td> <td>['string', 'null']</td> <td>QEMU hda disk image checksum</td> </tr>
<tr><td>hda_disk_interface</td> <td>&#10004;</td> <td>string</td> <td>QEMU hda interface</td> </tr>
<tr><td>hdb_disk_image</td> <td>&#10004;</td> <td>string</td> <td>QEMU hdb disk image path</td> </tr>
<tr><td>hdb_disk_image_md5sum</td> <td>&#10004;</td> <td>['string', 'null']</td> <td>QEMU hdb disk image checksum</td> </tr>
<tr><td>hdb_disk_interface</td> <td>&#10004;</td> <td>string</td> <td>QEMU hdb interface</td> </tr>
<tr><td>hdc_disk_image</td> <td>&#10004;</td> <td>string</td> <td>QEMU hdc disk image path</td> </tr>
<tr><td>hdc_disk_image_md5sum</td> <td>&#10004;</td> <td>['string', 'null']</td> <td>QEMU hdc disk image checksum</td> </tr>
<tr><td>hdc_disk_interface</td> <td>&#10004;</td> <td>string</td> <td>QEMU hdc interface</td> </tr>
<tr><td>hdd_disk_image</td> <td>&#10004;</td> <td>string</td> <td>QEMU hdd disk image path</td> </tr>
<tr><td>hdd_disk_image_md5sum</td> <td>&#10004;</td> <td>['string', 'null']</td> <td>QEMU hdd disk image checksum</td> </tr>
<tr><td>hdd_disk_interface</td> <td>&#10004;</td> <td>string</td> <td>QEMU hdd interface</td> </tr>
<tr><td>initrd</td> <td>&#10004;</td> <td>string</td> <td>QEMU initrd path</td> </tr>
<tr><td>initrd_md5sum</td> <td>&#10004;</td> <td>['string', 'null']</td> <td>QEMU initrd path</td> </tr>
<tr><td>kernel_command_line</td> <td>&#10004;</td> <td>string</td> <td>QEMU kernel command line</td> </tr>
@ -148,6 +174,7 @@ Output
<tr><td>project_id</td> <td>&#10004;</td> <td>string</td> <td>Project uuid</td> </tr>
<tr><td>qemu_path</td> <td>&#10004;</td> <td>string</td> <td>path to QEMU</td> </tr>
<tr><td>ram</td> <td>&#10004;</td> <td>integer</td> <td>amount of RAM in MB</td> </tr>
<tr><td>usage</td> <td>&#10004;</td> <td>string</td> <td>How to use the qemu VM</td> </tr>
<tr><td>vm_directory</td> <td>&#10004;</td> <td>string</td> <td></td> </tr>
<tr><td>vm_id</td> <td>&#10004;</td> <td>string</td> <td>QEMU VM uuid</td> </tr>
</table>

View File

@ -10,9 +10,9 @@ Add a NIO to a Qemu VM instance
Parameters
**********
- **adapter_number**: Network adapter where the nio is located
- **port_number**: Port on the adapter (always 0)
- **project_id**: UUID for the project
- **vm_id**: UUID for the instance
- **port_number**: Port on the adapter (always 0)
Response status codes
**********************
@ -34,9 +34,9 @@ Remove a NIO from a Qemu VM instance
Parameters
**********
- **adapter_number**: Network adapter where the nio is located
- **port_number**: Port on the adapter (always 0)
- **project_id**: UUID for the project
- **vm_id**: UUID for the instance
- **port_number**: Port on the adapter (always 0)
Response status codes
**********************

View File

@ -13,6 +13,15 @@ Response status codes
- **400**: Invalid request
- **404**: Instance doesn't exist
Input
*******
.. raw:: html
<table>
<tr> <th>Name</th> <th>Mandatory</th> <th>Type</th> <th>Description</th> </tr>
<tr><td>archs</td> <td> </td> <td>array</td> <td>Architectures to filter binaries by</td> </tr>
</table>
Sample session
***************

View File

@ -0,0 +1,28 @@
/v1/qemu/capabilities
----------------------------------------------------------------------------------------------------------------------
.. contents::
GET /v1/qemu/capabilities
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Get a list of Qemu capabilities on this server
Response status codes
**********************
- **200**: Success
Output
*******
.. raw:: html
<table>
<tr> <th>Name</th> <th>Mandatory</th> <th>Type</th> <th>Description</th> </tr>
<tr><td>kvm</td> <td> </td> <td>array</td> <td>Architectures that KVM is enabled for</td> </tr>
</table>
Sample session
***************
.. literalinclude:: ../../examples/get_qemucapabilities.txt

View File

@ -0,0 +1,39 @@
/v1/qemu/img
----------------------------------------------------------------------------------------------------------------------
.. contents::
POST /v1/qemu/img
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Create a Qemu image
Response status codes
**********************
- **201**: Image created
Input
*******
.. raw:: html
<table>
<tr> <th>Name</th> <th>Mandatory</th> <th>Type</th> <th>Description</th> </tr>
<tr><td>adapter_type</td> <td> </td> <td>enum</td> <td>Possible values: ide, lsilogic, buslogic, legacyESX</td> </tr>
<tr><td>cluster_size</td> <td> </td> <td>integer</td> <td></td> </tr>
<tr><td>format</td> <td>&#10004;</td> <td>enum</td> <td>Possible values: qcow2, qcow, vpc, vdi, vmdk, raw</td> </tr>
<tr><td>lazy_refcounts</td> <td> </td> <td>enum</td> <td>Possible values: on, off</td> </tr>
<tr><td>path</td> <td>&#10004;</td> <td>string</td> <td>Absolute or relative path of the image</td> </tr>
<tr><td>preallocation</td> <td> </td> <td>enum</td> <td>Possible values: off, metadata, falloc, full</td> </tr>
<tr><td>qemu_img</td> <td>&#10004;</td> <td>string</td> <td>Path to the qemu-img binary</td> </tr>
<tr><td>refcount_bits</td> <td> </td> <td>integer</td> <td></td> </tr>
<tr><td>size</td> <td>&#10004;</td> <td>integer</td> <td>Image size in M</td> </tr>
<tr><td>static</td> <td> </td> <td>enum</td> <td>Possible values: on, off</td> </tr>
<tr><td>subformat</td> <td> </td> <td>enum</td> <td>Possible values: dynamic, fixed, streamOptimized, twoGbMaxExtentSparse, twoGbMaxExtentFlat, monolithicSparse, monolithicFlat</td> </tr>
<tr><td>zeroed_grain</td> <td> </td> <td>enum</td> <td>Possible values: on, off</td> </tr>
</table>
Sample session
***************
.. literalinclude:: ../../examples/post_qemuimg.txt

View File

@ -1,9 +1,9 @@
/v1/qemu/vms/{filename}
/v1/qemu/vms/{path:.+}
----------------------------------------------------------------------------------------------------------------------
.. contents::
POST /v1/qemu/vms/**{filename}**
POST /v1/qemu/vms/**{path:.+}**
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Upload Qemu image.

View File

@ -10,9 +10,9 @@ Add a NIO to a VirtualBox VM instance
Parameters
**********
- **adapter_number**: Adapter where the nio should be added
- **port_number**: Port on the adapter (always 0)
- **project_id**: UUID for the project
- **vm_id**: UUID for the instance
- **port_number**: Port on the adapter (always 0)
Response status codes
**********************
@ -34,9 +34,9 @@ Remove a NIO from a VirtualBox VM instance
Parameters
**********
- **adapter_number**: Adapter from where the nio should be removed
- **port_number**: Port on the adapter (always 0)
- **project_id**: UUID for the project
- **vm_id**: UUID for the instance
- **port_number**: Port on the adapter (always 0)
Response status codes
**********************

View File

@ -10,9 +10,9 @@ Start a packet capture on a VirtualBox VM instance
Parameters
**********
- **adapter_number**: Adapter to start a packet capture
- **port_number**: Port on the adapter (always 0)
- **project_id**: UUID for the project
- **vm_id**: UUID for the instance
- **port_number**: Port on the adapter (always 0)
Response status codes
**********************

View File

@ -10,9 +10,9 @@ Stop a packet capture on a VirtualBox VM instance
Parameters
**********
- **adapter_number**: Adapter to stop a packet capture
- **port_number**: Port on the adapter (always 0)
- **project_id**: UUID for the project
- **vm_id**: UUID for the instance
- **port_number**: Port on the adapter (always 0)
Response status codes
**********************

View File

@ -32,6 +32,7 @@ Input
<tr><td>linked_clone</td> <td>&#10004;</td> <td>boolean</td> <td>either the VM is a linked clone or not</td> </tr>
<tr><td>name</td> <td>&#10004;</td> <td>string</td> <td>VMware VM instance name</td> </tr>
<tr><td>use_any_adapter</td> <td> </td> <td>boolean</td> <td>allow GNS3 to use any VMware adapter</td> </tr>
<tr><td>use_ubridge</td> <td> </td> <td>boolean</td> <td>use uBridge for network connections</td> </tr>
<tr><td>vm_id</td> <td> </td> <td>string</td> <td>VMware VM instance identifier</td> </tr>
<tr><td>vmx_path</td> <td>&#10004;</td> <td>string</td> <td>path to the vmx file</td> </tr>
</table>
@ -51,6 +52,7 @@ Output
<tr><td>name</td> <td>&#10004;</td> <td>string</td> <td>VMware VM instance name</td> </tr>
<tr><td>project_id</td> <td>&#10004;</td> <td>string</td> <td>Project UUID</td> </tr>
<tr><td>use_any_adapter</td> <td> </td> <td>boolean</td> <td>allow GNS3 to use any VMware adapter</td> </tr>
<tr><td>use_ubridge</td> <td> </td> <td>boolean</td> <td>use uBridge for network connections</td> </tr>
<tr><td>vm_directory</td> <td> </td> <td>['string', 'null']</td> <td></td> </tr>
<tr><td>vm_id</td> <td>&#10004;</td> <td>string</td> <td>VMware VM instance UUID</td> </tr>
<tr><td>vmx_path</td> <td> </td> <td>string</td> <td>path to the vmx file</td> </tr>

View File

@ -33,6 +33,7 @@ Output
<tr><td>name</td> <td>&#10004;</td> <td>string</td> <td>VMware VM instance name</td> </tr>
<tr><td>project_id</td> <td>&#10004;</td> <td>string</td> <td>Project UUID</td> </tr>
<tr><td>use_any_adapter</td> <td> </td> <td>boolean</td> <td>allow GNS3 to use any VMware adapter</td> </tr>
<tr><td>use_ubridge</td> <td> </td> <td>boolean</td> <td>use uBridge for network connections</td> </tr>
<tr><td>vm_directory</td> <td> </td> <td>['string', 'null']</td> <td></td> </tr>
<tr><td>vm_id</td> <td>&#10004;</td> <td>string</td> <td>VMware VM instance UUID</td> </tr>
<tr><td>vmx_path</td> <td> </td> <td>string</td> <td>path to the vmx file</td> </tr>
@ -69,6 +70,7 @@ Input
<tr><td>headless</td> <td> </td> <td>boolean</td> <td>headless mode</td> </tr>
<tr><td>name</td> <td> </td> <td>string</td> <td>VMware VM instance name</td> </tr>
<tr><td>use_any_adapter</td> <td> </td> <td>boolean</td> <td>allow GNS3 to use any VMware adapter</td> </tr>
<tr><td>use_ubridge</td> <td> </td> <td>boolean</td> <td>use uBridge for network connections</td> </tr>
<tr><td>vmx_path</td> <td> </td> <td>string</td> <td>path to the vmx file</td> </tr>
</table>
@ -87,6 +89,7 @@ Output
<tr><td>name</td> <td>&#10004;</td> <td>string</td> <td>VMware VM instance name</td> </tr>
<tr><td>project_id</td> <td>&#10004;</td> <td>string</td> <td>Project UUID</td> </tr>
<tr><td>use_any_adapter</td> <td> </td> <td>boolean</td> <td>allow GNS3 to use any VMware adapter</td> </tr>
<tr><td>use_ubridge</td> <td> </td> <td>boolean</td> <td>use uBridge for network connections</td> </tr>
<tr><td>vm_directory</td> <td> </td> <td>['string', 'null']</td> <td></td> </tr>
<tr><td>vm_id</td> <td>&#10004;</td> <td>string</td> <td>VMware VM instance UUID</td> </tr>
<tr><td>vmx_path</td> <td> </td> <td>string</td> <td>path to the vmx file</td> </tr>

View File

@ -10,9 +10,9 @@ Add a NIO to a VMware VM instance
Parameters
**********
- **adapter_number**: Adapter where the nio should be added
- **port_number**: Port on the adapter (always 0)
- **project_id**: UUID for the project
- **vm_id**: UUID for the instance
- **port_number**: Port on the adapter (always 0)
Response status codes
**********************
@ -28,9 +28,9 @@ Remove a NIO from a VMware VM instance
Parameters
**********
- **adapter_number**: Adapter from where the nio should be removed
- **port_number**: Port on the adapter (always 0)
- **project_id**: UUID for the project
- **vm_id**: UUID for the instance
- **port_number**: Port on the adapter (always 0)
Response status codes
**********************

View File

@ -0,0 +1,31 @@
/v1/projects/{project_id}/vmware/vms/{vm_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/start_capture
----------------------------------------------------------------------------------------------------------------------
.. contents::
POST /v1/projects/**{project_id}**/vmware/vms/**{vm_id}**/adapters/**{adapter_number:\d+}**/ports/**{port_number:\d+}**/start_capture
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Start a packet capture on a VMware VM instance
Parameters
**********
- **adapter_number**: Adapter to start a packet capture
- **port_number**: Port on the adapter (always 0)
- **project_id**: UUID for the project
- **vm_id**: UUID for the instance
Response status codes
**********************
- **200**: Capture started
- **400**: Invalid request
- **404**: Instance doesn't exist
Input
*******
.. raw:: html
<table>
<tr> <th>Name</th> <th>Mandatory</th> <th>Type</th> <th>Description</th> </tr>
<tr><td>capture_file_name</td> <td>&#10004;</td> <td>string</td> <td>Capture file name</td> </tr>
</table>

View File

@ -0,0 +1,22 @@
/v1/projects/{project_id}/vmware/vms/{vm_id}/adapters/{adapter_number:\d+}/ports/{port_number:\d+}/stop_capture
----------------------------------------------------------------------------------------------------------------------
.. contents::
POST /v1/projects/**{project_id}**/vmware/vms/**{vm_id}**/adapters/**{adapter_number:\d+}**/ports/**{port_number:\d+}**/stop_capture
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Stop a packet capture on a VMware VM instance
Parameters
**********
- **adapter_number**: Adapter to stop a packet capture
- **port_number**: Port on the adapter (always 0)
- **project_id**: UUID for the project
- **vm_id**: UUID for the instance
Response status codes
**********************
- **400**: Invalid request
- **404**: Instance doesn't exist
- **204**: Capture stopped

View File

@ -0,0 +1,18 @@
/v1/projects/{project_id}/vmware/vms/{vm_id}/interfaces/vmnet
----------------------------------------------------------------------------------------------------------------------
.. contents::
POST /v1/projects/**{project_id}**/vmware/vms/**{vm_id}**/interfaces/vmnet
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Allocate a VMware VMnet interface on the server
Parameters
**********
- **project_id**: The UUID of the project
- **vm_id**: UUID for the instance
Response status codes
**********************
- **201**: VMnet interface allocated

View File

@ -10,9 +10,9 @@ Add a NIO to a VPCS instance
Parameters
**********
- **adapter_number**: Network adapter where the nio is located
- **port_number**: Port where the nio should be added
- **project_id**: UUID for the project
- **vm_id**: UUID for the instance
- **port_number**: Port where the nio should be added
Response status codes
**********************
@ -34,9 +34,9 @@ Remove a NIO from a VPCS instance
Parameters
**********
- **adapter_number**: Network adapter where the nio is located
- **port_number**: Port from where the nio should be removed
- **project_id**: UUID for the project
- **vm_id**: UUID for the instance
- **port_number**: Port from where the nio should be removed
Response status codes
**********************

View File

@ -2,8 +2,8 @@ Welcome to API documentation!
======================================
.. WARNING::
The API is not stable, feel free to send comment on GNS3 Jungle
https://community.gns3.com/
The API is not stable, feel free to post comments on our website
https://gns3.com/
.. toctree::
general

View File

@ -1,2 +1,2 @@
SET PYTHONPATH=.
python.exe gns3server/main.py --debug --local
SET PYTHONPATH=%~dp0
python.exe %~dp0/gns3server/main.py --debug --local

20
gns3server/__main__.py Normal file
View File

@ -0,0 +1,20 @@
#!/usr/bin/env python
#
# Copyright (C) 2015 GNS3 Technologies Inc.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
from .main import main
main()

View File

@ -28,7 +28,7 @@ except ImportError:
# raven is not installed with deb package in order to simplify packaging
RAVEN_AVAILABLE = False
from .version import __version__
from .version import __version__, __version_info__
from .config import Config
from .utils.get_resource import get_resource
@ -37,7 +37,7 @@ log = logging.getLogger(__name__)
# Dev build
if __version__[4] != 0:
if __version_info__[3] != 0:
import faulthandler
# Display a traceback in case of segfault crash. Usefull when frozen
@ -52,7 +52,7 @@ class CrashReport:
Report crash to a third party service
"""
DSN = "sync+https://630b20380e1f4b388a95888e18dc5045:e63cf59926ae4596832938614b0f9f02@app.getsentry.com/38482"
DSN = "sync+https://119ddececccd43b69951ac87d4859870:2a982a50bbbb49ddb33c87ef3720026e@app.getsentry.com/38482"
if hasattr(sys, "frozen"):
cacert = get_resource("cacert.pem")
if cacert is not None and os.path.isfile(cacert):

Some files were not shown because too many files have changed in this diff Show More