1
0
mirror of https://github.com/GNS3/gns3-server synced 2024-12-27 09:18:09 +00:00
Commit Graph

690 Commits

Author SHA1 Message Date
Julien Duponchelle
a4023c0298
By default project auto close when you exit client 2016-08-16 19:16:05 +02:00
Julien Duponchelle
9694850465
Option for auto close project when no client listen
And fix websocket not correctly detected has closed.

Ref https://github.com/GNS3/gns3-gui/issues/1331
2016-08-16 17:35:43 +02:00
Julien Duponchelle
9e81994adc
Reset project auto start, auto close, auto open at project import 2016-08-16 16:09:59 +02:00
Julien Duponchelle
ac085126fc
Support for auto open projects
Fix #1418
2016-08-16 16:04:20 +02:00
Julien Duponchelle
12735ff36e
Bring back the auto_start
Fix #582
2016-08-16 15:45:06 +02:00
Julien Duponchelle
017202d151
Allow to delete a non opened project 2016-08-16 13:30:10 +02:00
Julien Duponchelle
0613efa297
Support for auto open project 2016-08-15 20:51:59 +02:00
Julien Duponchelle
3ca4edef93
Update project API 2016-08-15 16:44:09 +02:00
Julien Duponchelle
431bd789cb
Do not send project closed event when it's a snapshot restore
Ref #602
2016-08-15 13:30:02 +02:00
Julien Duponchelle
16c2305b33
Send a project closed event when project close
Ref #602
2016-08-15 12:06:26 +02:00
grossmj
225e4f7528 Finish support of VMware based GNS3 VM. 2016-08-11 15:58:29 -06:00
Julien Duponchelle
45af721164
Support convertsion of 1.5 snapshots
Fix #618
2016-07-28 18:11:52 +02:00
Julien Duponchelle
7e40eb02e6
API for editing a file on a Node 2016-07-27 18:46:10 +02:00
Julien Duponchelle
0be973f2c5
Support Host node from 1.X topologies
Fix #626
2016-07-26 21:40:11 +02:00
Julien Duponchelle
68eca6c111
Replace snapshots by import / export
Fix #1042
2016-07-26 19:52:58 +02:00
Julien Duponchelle
e50acf811c
If we don't have a GNS3 VM on linux don't move file to it 2016-07-25 18:03:22 +02:00
Julien Duponchelle
f357879186
API for duplicate a project
Ref https://github.com/GNS3/gns3-gui/issues/995
2016-07-25 16:26:33 +02:00
Julien Duponchelle
fb3b6b62f5
Support a name and path during the import
Not exposed to the client for the moment.
2016-07-25 09:41:41 +02:00
Julien Duponchelle
9bdc0b78eb
Now import project on VM work 2016-07-22 18:02:11 +02:00
Julien Duponchelle
fec3694710
Import project on the GNS3VM should work 2016-07-22 16:05:22 +02:00
Julien Duponchelle
ce557ecd23
Change the compute id to the GNS3 VM if it's not a Linux host 2016-07-22 13:50:15 +02:00
Julien Duponchelle
eff6a9154d
Strip computes info at project export 2016-07-22 13:39:57 +02:00
Julien Duponchelle
94a262cd46
When importing a project fix the GNS3 version 2016-07-22 11:52:59 +02:00
Julien Duponchelle
9b499dc51e
Export project with the GNS3VM 2016-07-21 20:17:36 +02:00
Julien Duponchelle
88ffd43c97
Strip the old / import export project code controller will do everything 2016-07-21 18:23:31 +02:00
Julien Duponchelle
3300e9ec48
Reorganize export project code in order to move it to his own file 2016-07-21 18:15:35 +02:00
Julien Duponchelle
487e99bea5
Import with images 2016-07-21 17:55:37 +02:00
Julien Duponchelle
0f85fbd5f2
Avoid leaving unfinished task behind us 2016-07-21 15:10:11 +02:00
Julien Duponchelle
b5ab53bbe9
Early import project api 2016-07-21 14:48:13 +02:00
Julien Duponchelle
14f6bd60fb
Disallow export of running topologies 2016-07-21 09:47:09 +02:00
Julien Duponchelle
f68c1f0bde
When exporting project raise error if export is not possible 2016-07-20 16:58:58 +02:00
Julien Duponchelle
08c35f5558
Export non remote server work 2016-07-20 14:50:15 +02:00
Julien Duponchelle
7c4c03cf17
If the connection between the controller and compute is closed reopen it 2016-07-20 12:43:23 +02:00
Julien Duponchelle
dd63ca6ef1
Temporary fix for remote GNS3 VM support
Ref #623
2016-07-19 13:38:15 +02:00
Julien Duponchelle
2977b1059e
Fix a crash at startup due to an error with VMware
Fix #619
2016-07-19 13:08:06 +02:00
Julien Duponchelle
3b70b4f217
Raise an error if you overwrite an existing project 2016-07-18 21:30:30 +02:00
Julien Duponchelle
c12413e0ce
Fix duplicate name for VM 2016-07-18 19:30:38 +02:00
Julien Duponchelle
bda1812811
Avoid duplicate node name when reloading a project 2016-07-18 19:09:08 +02:00
Julien Duponchelle
c9bdd76922
IOU support for conversion from 1.5 2016-07-18 18:55:47 +02:00
Julien Duponchelle
b745397a3a
Import server config from 1.X GUI 2016-07-14 15:15:28 +02:00
Julien Duponchelle
45591aa74b
Support for 1.3 topologies 2016-07-13 18:31:12 +02:00
Julien Duponchelle
b841a0f57b
Support image in conversion from old topologies 2016-07-13 16:37:05 +02:00
Julien Duponchelle
8be1e77a2e
Optimize storage of drawing
If the drawing contain an image we extract it

Fix #591
2016-07-13 16:18:22 +02:00
Julien Duponchelle
3dccfbb852
Migration to 2.0 rename instructions.txt to README.txt
Fix #612
2016-07-13 09:58:53 +02:00
Julien Duponchelle
2c62b1eeb8
Cloud support for old topologies 2016-07-12 18:48:01 +02:00
Julien Duponchelle
7c7662f1b6
Correctly forward the 409 from compute to client 2016-07-12 18:16:50 +02:00
Julien Duponchelle
3d52e18fa5
Raise an error if uBridge is not installed 2016-07-12 17:38:13 +02:00
Julien Duponchelle
ee533943c8
Start of support for topologies before 2.X
Missing part:
* GNS3 VM
* Cloud
* Image

Ref #564

Early support of conversion from 1.5
2016-07-12 17:14:35 +02:00
grossmj
234f199558 Load/save GNS3 VM settings on controller side. 2016-07-11 21:43:01 -06:00
grossmj
13deecea4e Basic API for GNS3 VM. 2016-07-11 17:01:18 -06:00
Julien Duponchelle
91ec61b88d
Check topology schema when loading/saving it
Fix #583
2016-07-11 15:36:52 +02:00
Julien Duponchelle
9bf4c22a50
Fix HTTP errors not forwarded from compute to client
Fix #615
2016-07-11 09:33:55 +02:00
Julien Duponchelle
7e91a5cb11
Raise error if not started with --local
If you try to use a local server but you don't have started
it with --local we raise an error.
2016-07-08 11:17:17 +02:00
Julien Duponchelle
7a4c01e737
When you delete a node all link connected are destroyed
Ref #608
2016-07-05 16:07:05 +02:00
Julien Duponchelle
7fee90805b
Ensure we update all the label of a link with only one update notif 2016-07-01 21:56:42 +02:00
Julien Duponchelle
9d2f4168ff
Correctly restore label position for link 2016-07-01 21:33:39 +02:00
Julien Duponchelle
5bf6011429
Rotation for label of interfaces 2016-07-01 19:54:44 +02:00
Julien Duponchelle
fea1e3ba61
Support update link on controller
Ref https://github.com/GNS3/gns3-gui/issues/1300
2016-07-01 17:38:32 +02:00
Julien Duponchelle
71d4c0a13a
Store rotation for labels 2016-07-01 15:30:38 +02:00
Julien Duponchelle
818174824b
Breaking change for 2.X topologies! Store width and height for nodes & a
style properties
2016-07-01 14:38:42 +02:00
Julien Duponchelle
fe7bcae6a1
Send node.updated notif only if object changed 2016-06-30 18:29:17 +02:00
Julien Duponchelle
758a427a76
Add documentation about notifications 2016-06-30 11:08:01 +02:00
Julien Duponchelle
543b423e03
Send compute usage via in the compute.updated notification
Ref https://github.com/GNS3/gns3-gui/issues/1261
2016-06-30 09:55:59 +02:00
Julien Duponchelle
68b7f81601
Dissalow duplicate name for compute and project
Fix #541
2016-06-29 17:39:41 +02:00
Julien Duponchelle
c4d7a0b8fc
A settings API
Ref #589
2016-06-29 14:16:29 +02:00
Julien Duponchelle
8ec11619cd
Full symbol support on server
Fix #496
2016-06-28 22:23:34 +02:00
Julien Duponchelle
e77445e860
API for uploading symbols 2016-06-28 21:15:22 +02:00
Julien Duponchelle
bf154049d2
Suppport ~/GNS3/symbols 2016-06-28 19:58:57 +02:00
Julien Duponchelle
5b4e668eb5
Move symbol static to /symbols 2016-06-28 18:17:48 +02:00
Julien Duponchelle
b66f7daa28
Beginning of the symbols from controller
Ref #496
2016-06-27 18:37:20 +02:00
grossmj
abfb51baa8 Base for GNS3 VM controlled by the controller. 2016-06-23 21:56:42 -06:00
grossmj
04022677bd Use uBridge for Qemu connections. Ref #267.
Handle packet captures for VPCS & Qemu nodes. Fixes #548.
2016-06-23 16:56:06 -06:00
Julien Duponchelle
5a410155f7
Create the controller config at first controller start 2016-06-23 12:17:44 +02:00
Julien Duponchelle
852d8e411e
Shape => Drawing 2016-06-23 11:17:23 +02:00
grossmj
00da15e4af Use uBridge for VPCS connections. Ref #267. 2016-06-22 19:40:46 -06:00
Julien Duponchelle
b456a363ca
Sample curl with shapes 2016-06-22 18:14:14 +02:00
Julien Duponchelle
bc613e9fd8
Send SVG in shape update only when change 2016-06-22 17:46:00 +02:00
Julien Duponchelle
03e9eac55b
Rotation support 2016-06-21 19:39:00 +02:00
Julien Duponchelle
4f78efa0c8
Return the svg field in shape API
Ref #498
2016-06-21 12:19:12 +02:00
Julien Duponchelle
116135b9dc
Item => Shape 2016-06-21 09:49:16 +02:00
Julien Duponchelle
85ebac7eb3
API for rectangle & co
Ref #498
2016-06-20 18:45:31 +02:00
Julien Duponchelle
3132d51694
Do not reload a project if project is already opened
Ref https://github.com/GNS3/gns3-gui/issues/1251
2016-06-17 17:50:06 +02:00
Julien Duponchelle
49eb7d8ce7
Atomic save of the .gns3
Fix #579
2016-06-17 17:13:36 +02:00
Julien Duponchelle
c66ef9d218
Support filename for project in the controller 2016-06-16 16:57:54 +02:00
Julien Duponchelle
aa5988788d
Strip user from compute in topology and return project filename 2016-06-15 18:22:11 +02:00
Julien Duponchelle
6d36429870
Reload a topology work 2016-06-15 16:26:16 +02:00
Julien Duponchelle
524f8991bc
Project status (opened / closed) 2016-06-15 16:26:16 +02:00
Julien Duponchelle
0569480953
Create link when loading topology on controller 2016-06-15 16:26:16 +02:00
Julien Duponchelle
742243e9df
Method for reloading a topology (not bind to an api handler)
Ref https://github.com/GNS3/gns3-gui/issues/1243
2016-06-15 16:26:16 +02:00
Julien Duponchelle
d815d25bdf
Write .gns3 on server
Ref https://github.com/GNS3/gns3-gui/issues/1243
2016-06-14 12:04:23 +02:00
Julien Duponchelle
3255be0ae2
Drop the commit system
Ref https://github.com/GNS3/gns3-gui/issues/1243
2016-06-14 10:16:33 +02:00
Julien Duponchelle
70431a5fa6
Send update of properties from controller only for controller stuffs
Fix #566
2016-06-13 18:46:30 +02:00
grossmj
2bde02d459 Controller side unique node name allocation. Ref #541. 2016-06-11 17:31:30 -06:00
Julien Duponchelle
dee9d423a3
Support for x,y,z,symbols,label in node object on controller
https://github.com/GNS3/gns3-gui/issues/1297
2016-06-09 16:47:58 +02:00
Julien Duponchelle
70345abc2a
Try cleaner close of the compute node
Ref #547
2016-06-08 17:18:40 +02:00
Julien Duponchelle
fe98163bd0
Send controller images only for qemu, iou and dynamips 2016-06-08 15:59:54 +02:00
Julien Duponchelle
1b530bde3f
Fix Compute name is lost at save
Fix #562
2016-06-08 14:25:11 +02:00
Julien Duponchelle
add546158f
List images return images on compute and controller
Fix #506
2016-06-08 14:14:03 +02:00
Julien Duponchelle
08e482004f
Auto upload missing images 2016-06-07 19:38:01 +02:00
Julien Duponchelle
972cbd0594
Cleanly forward exception from compute to controller 2016-06-07 16:06:37 +02:00
Julien Duponchelle
dcebaf61b8
Do not timeout forwarded calls 2016-06-07 11:21:47 +02:00
Julien Duponchelle
582e3c72ff
Forward post with large content to compute 2016-06-06 19:51:35 +02:00
Julien Duponchelle
06b54d82dc
Support forwarding POST request to compute nodes 2016-06-06 15:45:32 +02:00
grossmj
65bfb4b907 Remove debug print. 2016-06-02 21:32:46 -06:00
Julien Duponchelle
e05b0a396e
Disallow / in compute_id because it was a stupid idea 2016-06-02 18:38:47 +02:00
Julien Duponchelle
917c1c7f84
Expose /virtualbox/vms /vmwares/vms and /images via controller
Ref #1192, #537
2016-06-02 18:02:48 +02:00
Julien Duponchelle
4afa5994e8
Fix stacktrace when exiting with Ctrl + C
Fix #547
2016-06-02 13:44:52 +02:00
grossmj
f47eb326c7 Revert move "/version" endpoint to "/server/version".
Move "/server/shutdown" endpoint to "/shutdown".
2016-06-01 18:21:07 -06:00
grossmj
cd07a99118 Some cleaning + move "/version" endpoint to "/server/version". 2016-06-01 17:50:31 -06:00
Julien Duponchelle
df654b40ff
Add a test 2016-05-26 13:43:35 +02:00
Julien Duponchelle
fbc04e083b
Allow empty password 2016-05-26 13:32:52 +02:00
Julien Duponchelle
84b12fd953
Support null in compute user and password 2016-05-26 10:11:11 +02:00
Julien Duponchelle
314a7cd8fb
Generate an uuid for compute node if None is provided 2016-05-25 14:10:03 +02:00
Julien Duponchelle
6162d7e431
Generated compute name include the username when it's exists 2016-05-25 13:58:29 +02:00
Julien Duponchelle
dbda3fc8fc
Add method to delete and update computes 2016-05-25 11:28:13 +02:00
Julien Duponchelle
a797038aeb
Drop code for temporary projects
Fix https://github.com/GNS3/gns3-gui/issues/982
2016-05-24 17:57:04 +02:00
Julien Duponchelle
df73f80bf5
Auto create the local compute node 2016-05-24 15:45:06 +02:00
Julien Duponchelle
0aa81b5fa5
Send event when adding compute node or modify it (for server sumary) 2016-05-23 18:44:20 +02:00
Julien Duponchelle
f6a3899603
Return a compute name it could be different of compute id 2016-05-23 11:27:47 +02:00
grossmj
57fd72c35c Ethernet hub and Ethernet switch almost fully migrated to the new API. 2016-05-19 22:45:04 -06:00
Julien Duponchelle
672a617102
Compute IDLE PC via controller
Fix #1234
2016-05-19 16:22:15 +02:00
Julien Duponchelle
b00a09efaa
Test link.updated event 2016-05-18 21:28:37 +02:00
Julien Duponchelle
54747ee618
Support for link event, fix link not correctly deleted 2016-05-18 18:37:18 +02:00
Julien Duponchelle
fa0af7f4a2
Correctly process node.updated event on controller 2016-05-18 16:12:57 +02:00
Julien Duponchelle
694e1a2e68
Extract the notification part of controller to a dedicated class 2016-05-18 14:56:23 +02:00
Julien Duponchelle
d86cefaaeb
Support node without console
Fix #532
2016-05-18 11:59:25 +02:00
grossmj
7ebbdcd47c Functional Ethernet hub with new API. Uses Dynamips backend by default for now. 2016-05-17 21:22:18 -06:00
Julien Duponchelle
ce0d715895
Fix Deleted node are still return by the API
Fix #529
2016-05-17 13:11:43 +02:00
Julien Duponchelle
da81b49fdc
Delete the project on all node where the project is created 2016-05-16 21:59:40 +02:00
Julien Duponchelle
a496aaab9e
Send node.updated event and tests are green
Fix #524
2016-05-16 21:12:32 +02:00
Julien Duponchelle
1eb77a0b3f
Fix docker support on 2.0
Fix #528
2016-05-16 18:32:29 +02:00
Julien Duponchelle
a9b95eb242
If the compute node is remote do not send project path 2016-05-16 18:17:24 +02:00
grossmj
c88c67e8ef Updates Ethernet hub schema. 2016-05-15 21:01:33 -06:00
grossmj
7a523990a6 Base for generic switch nodes. Ref #492. 2016-05-15 11:23:14 -06:00
grossmj
6cea6c9162 Some more (spring) cleaning. 2016-05-13 18:48:10 -06:00
grossmj
f81d35cc29 Handlers: cleanup and fixes. 2016-05-13 18:00:07 -06:00
grossmj
be1efe8327 Schemas review. 2016-05-12 19:07:25 -06:00
Julien Duponchelle
2857d9a070
Send a field status in the node object 2016-05-12 19:15:46 +02:00
Julien Duponchelle
5280644327
Return command_line and node_directory via the controller 2016-05-12 10:39:50 +02:00
grossmj
ef7b4ef020 Fixes tests and some PEP8. 2016-05-11 15:19:00 -06:00
grossmj
483431438a Merge remote-tracking branch 'origin/2.0' into 2.0
Conflicts:
	gns3server/controller/project.py
	tests/compute/test_project.py
	tests/controller/test_project.py
2016-05-11 11:41:45 -06:00
grossmj
5a76f81271 Refactoring to use a common node class for all VMs and other (future) objects. 2016-05-11 11:35:36 -06:00
Julien Duponchelle
9ccb55206d
Cleanup code for getting the default project directory 2016-05-11 18:42:55 +02:00
Julien Duponchelle
a0344576ba
Show version for debug 2016-05-11 16:31:16 +02:00
Julien Duponchelle
c2da568543
Protect controller and compute about path outside project directory
Fix #503
2016-05-11 15:59:32 +02:00
Julien Duponchelle
390401000f
A client could not erase the local compute node config in the controller
Fix #499
2016-05-11 15:02:35 +02:00
Julien Duponchelle
cd836f146e
Create the project on compute only when needed 2016-05-11 10:56:43 +02:00
Julien Duponchelle
f98f6bf3ed
Close doesn't exists when stopping the capture 2016-04-26 22:19:38 +02:00
Julien Duponchelle
76b2ca2bc0
Return the full path to the capture 2016-04-26 17:36:24 +02:00
Julien Duponchelle
264254e657
Captures written in the captures directory on the controller 2016-04-26 17:10:33 +02:00
Julien Duponchelle
9a1eeb57e9
Controll of the project directory in the controller 2016-04-26 14:34:49 +02:00
Julien Duponchelle
1ce576c020
Stream pcap from compute to controller to client 2016-04-22 16:22:03 +02:00
Julien Duponchelle
1a22fb9250
Expose the capture status in controller link API 2016-04-21 16:11:42 +02:00
Julien Duponchelle
549a6280c0
Data link type is on the capture not on the link 2016-04-21 13:49:29 +02:00
Julien Duponchelle
04a1b2df3b
Method for start / stop capture on a link
Ref https://github.com/GNS3/gns3-gui/issues/1117
2016-04-21 12:14:09 +02:00
Julien Duponchelle
ee0f1eb5fb
Forward 503 error 2016-04-20 16:24:30 +02:00
Julien Duponchelle
c8c61f2ae8
Add endpoint to list the compute nodes 2016-04-19 16:53:41 +02:00
Julien Duponchelle
f5e5cf5059
Save the list of compute node
Fix #494
2016-04-19 15:35:50 +02:00
Julien Duponchelle
6b9e46950c
Update VPCS and delete VPCS via controller 2016-04-18 18:56:03 +02:00
Julien Duponchelle
d7ed37ce02
Update and delete VM on controller 2016-04-18 17:36:38 +02:00
Julien Duponchelle
6c11ad5fa6
Reload VM 2016-04-18 16:57:02 +02:00
Julien Duponchelle
58d4a529d4
Rename hypervisor to compute
Fix #487
2016-04-15 17:59:59 +02:00
Julien Duponchelle
3185baff0d
Start / Stop / Suspend marche 2016-04-14 12:22:10 +02:00
Julien Duponchelle
2055cdea5e
/start /stop and /suspend API for VM via container 2016-04-12 18:02:36 +02:00
Julien Duponchelle
bc14d5d78e
Notif forwarded from hypervisor to controller 2016-03-18 16:56:23 +01:00
Julien Duponchelle
de61ed316c
The controller has a streaming API
Now we need to link the hypervisor to the controller.
2016-03-17 17:32:37 +01:00
Julien Duponchelle
aa6c44a470
Fix crash when a n hypervisor return no body 2016-03-16 16:10:06 +01:00
Julien Duponchelle
757ee34dac
Support auth for network V2 hypervisors 2016-03-16 15:55:07 +01:00
Julien Duponchelle
c0e452133d
Web interface for debbuging controller 2016-03-15 11:32:10 +01:00
Julien Duponchelle
7a095478fe
Success to add a dynamips with apiv2 2016-03-15 10:45:05 +01:00
Julien Duponchelle
8fed1d9b9f
API for deleting a link 2016-03-14 20:54:05 +01:00
Julien Duponchelle
ed291da566
Rebuild doc 2016-03-14 20:37:07 +01:00
Julien Duponchelle
9062490be3
API for deleting a list 2016-03-14 17:40:27 +01:00
Julien Duponchelle
9771b33b68
Create link using UDP work 2016-03-14 16:51:47 +01:00
Julien Duponchelle
8cb5a6ec75
Typo 2016-03-11 20:34:01 +01:00
Julien Duponchelle
17c5d3048c
Cleanup 2016-03-11 20:15:02 +01:00
Julien Duponchelle
65099b9364
Link API should work now need to implement the client 2016-03-11 20:13:52 +01:00
Julien Duponchelle
e3580d52c3
Dummy link api documentation 2016-03-11 17:02:50 +01:00
Julien Duponchelle
abdda4d3b3
Link API (do nothing for the moment) 2016-03-11 16:51:35 +01:00
Julien Duponchelle
6fad82c61d
Rebuild documentation 2016-03-11 15:49:28 +01:00
Julien Duponchelle
be4aa41dda
Create VPCS VM on controller 2016-03-11 15:06:14 +01:00
Julien Duponchelle
4326d412f9
API for creating a VM 2016-03-10 21:51:29 +01:00
Julien Duponchelle
65de1b7b5e
Default arg for post in controllers 2016-03-10 10:57:14 +01:00
Julien Duponchelle
58f1abff35
Close, commit and delete supported for projects in controller 2016-03-10 10:32:07 +01:00
Julien Duponchelle
6fa2491255
Rename /controller/servers to /controller/hypervisors 2016-03-08 16:04:12 +01:00
Julien Duponchelle
0921df520c
Return controller version as server version (temporary) 2016-03-04 16:58:53 +01:00
Julien Duponchelle
0532b4de8a
Fix logging issues with the controller 2016-03-04 16:55:59 +01:00
Julien Duponchelle
4d77b2918e
Raise an error if server flagged as local but should not
If the controller is not started with --local but the server ID
is local it's raise an error.
2016-03-04 16:11:31 +01:00
Julien Duponchelle
aad69e9650
Create a /server API for register servers
This allow to push to the controller information about
the connection to a server.
2016-03-03 16:05:09 +01:00
Julien Duponchelle
84eb8356e8
Create a container class and a flag for enable it from command line
Ref #417
2016-03-02 09:49:52 +01:00