1
0
mirror of https://github.com/GNS3/gns3-server synced 2024-12-02 21:28:10 +00:00
Commit Graph

202 Commits

Author SHA1 Message Date
grossmj
9b0e3a77ed Use a stock BusyBox for the Docker Integration 2021-06-03 18:38:08 +09:30
grossmj
cefab8d362 Rename __json__() to asdict() 2021-04-17 23:34:28 +09:30
grossmj
c021e21309 Use black with -l 120 param. 2021-04-13 18:46:50 +09:30
grossmj
f928738bd5 Use pyupgrade with --py36-plus param. 2021-04-13 18:37:58 +09:30
grossmj
c043830e3f Move endpoints to routes & preparations to use a database. 2020-11-19 15:21:03 +10:30
grossmj
acc5c7ebfa Update package versions.
Do not use Path in schemas (causes issues with empty paths).
Change how notifications are handled.
Run tests with Python 3.9
2020-11-11 17:18:41 +10:30
grossmj
a92c47b310 Add HTTP client to reuse the aiohttp session where needed.
Remove unnecessary aiohttp exceptions.
2020-10-22 16:19:44 +10:30
grossmj
7043d48f1a Auxiliary console support for Qemu. Ref #2873
Improvements for auxiliary console support for Docker and Dynamips.
2020-07-29 16:23:51 +09:30
grossmj
831ee5f468 Support to reset all console connections. Ref https://github.com/GNS3/gns3-server/issues/1619 2020-07-26 18:27:18 +09:30
grossmj
d1c29c8bb7 Resource constraints for Docker VMs. 2020-07-18 21:03:55 +09:30
grossmj
f498ab06b4 Wait longer for x11 socket file to be created. Ref #1761 2020-06-10 20:37:13 +09:30
grossmj
8536af33da Fix tests. 2020-04-28 13:49:05 +09:30
fadlytabrani
6fd60452c4
Add clipboard support for TigerVnc
There's currently no clipboard support for servers running on TigerVnc. TigerVnc clipboard support is provided by vncconfig that needs to be spawned for every display socket. The code changes above provides that functionality
2020-04-16 00:14:20 +10:00
grossmj
afbbf7a524 Add Xvnc command to the VNC servers list. Fixes #172 2020-03-19 19:06:51 +10:30
grossmj
aa1b621c10 Improvement of support for docker USER directive. Fixes #1727. 2020-03-19 17:50:27 +10:30
Karim
af78031322 Resolve conflicts in docker volumes instead of error. Fixes https://github.com/GNS3/gns3-server/issues/1595 2019-06-05 10:40:40 +01:00
Karim
81ddb0cfe6 Impoved docker volumes user input validation 2019-04-22 12:46:28 +01:00
Karim
0c19bc8d43 Support for additional persistent docker volumes to be specified within appliance configuration 2019-04-22 10:26:41 +01:00
Karim
6df93d4db0 Updated tests for setting docker user 2019-04-05 11:06:35 +01:00
Karim
7c3a38d379 Support for docker images that set the USER directive. Changes the
docker user to root for the init script to configure the network,
then drops to the configured user (or root if one is not defined)
for continuing booting the image.
2019-04-05 08:51:57 +01:00
grossmj
a17119187b Fix remote packet capture for Dynamips. 2019-04-01 20:58:18 +07:00
grossmj
4cc5dbc228 Fix remote packet capture and make sure packet capture is stopped when deleting an NIO. Fixes https://github.com/GNS3/gns3-gui/issues/2753 2019-04-01 19:47:31 +07:00
grossmj
af80b0bb6e Use aiofiles where relevant. 2019-03-06 23:00:01 +07:00
grossmj
5754747a90 Merging 2.1 into 2.2 2019-02-22 18:04:49 +07:00
grossmj
aea4ae808f Detect invalid environment variable and send a warning when creating a Docker node. Ref #2683 2019-02-19 17:34:10 +07:00
grossmj
d9a9abf845 Add explicit error when trying to pull a Docker image from Docker Hub without Internet access. Fixes #1506. 2019-02-17 19:21:21 +08:00
grossmj
4b52e9313e Fix issue with coroutine not awaited. Fixes #1499 2019-01-17 17:43:09 +07:00
grossmj
9ed181151f New node information dialog to display general, usage and command line information.
Ref https://github.com/GNS3/gns3-gui/issues/2662 https://github.com/GNS3/gns3-gui/issues/2656
2018-12-30 19:35:24 +07:00
grossmj
468145319d Merge 2.1 into 2.2 branch. 2018-12-21 15:24:34 +08:00
grossmj
58b2ee152d Fix Docker console test. 2018-11-30 18:59:02 +08:00
grossmj
bec2270334 Fix non responsive console for Docker VMs. Fixes https://github.com/GNS3/gns3-gui/issues/2645 2018-11-30 17:06:21 +08:00
grossmj
56412b35e0 Merge branch '2.1' into 2.2
# Conflicts:
#	gns3server/compute/docker/docker_vm.py
#	gns3server/utils/asyncio/telnet_server.py
2018-11-30 12:38:02 +08:00
Dušan Dragić
817a053dfc docker_vm: fix x11vnc not starting 2018-11-29 00:37:20 +01:00
grossmj
60ac6d2dfe Telnet console resize support for Docker VM. 2018-11-27 15:06:56 +07:00
grossmj
c0a0a13bdd Avoid _fix_permissions() to be called twice when stopping Docker VM. Ref #1428 2018-11-26 15:53:24 +07:00
grossmj
a3044ede77 Fix _fix_permissions() garbles permissions in Docker VM. Ref #1428 2018-11-25 17:11:42 +07:00
grossmj
5cb0957f35 Require privileged access for uBridge when using VMware VMs and Docker containers. Fixes #1461. 2018-11-20 00:22:16 +07:00
grossmj
d45d52f15c Support Xtigervnc restart. 2018-11-11 23:23:30 +08:00
grossmj
029344da14 Only require Xtigervnc or Xvfb+x11vnc for Docker with vnc console. Ref #1438 2018-11-11 22:33:58 +08:00
grossmj
36474f7bab Merge branch '2.1' into 2.2
# Conflicts:
#	gns3server/compute/docker/docker_vm.py
2018-11-11 22:31:29 +08:00
grossmj
d0bab9947e Support tigervnc in Docker VM. Ref #1438 2018-11-11 21:07:33 +08:00
grossmj
2764828f38 Refactor how clients access PCAP capture files. Fixes https://github.com/GNS3/gns3-gui/issues/2438.
* The PCAP file is directly accessed if controller and client are on the same host.
* The PCAP file is streamed from the compute server to the client with the controller as a proxy when the controller is remote for the client.
2018-10-27 14:47:17 +07:00
grossmj
86f87aec74 Fix installation with Python 3.7. Fixes #1414.
Fix deprecated use of aiohttp.Timeout. Fixes #1296.
Use "async with" with aiohttp.ClientSession().
Make sure websocket connections are properly closed, see https://docs.aiohttp.org/en/stable/web_advanced.html#graceful-shutdown
Finish to drop Python 3.4.
2018-10-16 15:56:06 +07:00
grossmj
de5934f818 Merge remote-tracking branch 'origin/2.2' into 2.2 2018-10-15 17:06:25 +07:00
grossmj
76af98404a Drop Python 3.4 and switch to async / await syntax for asyncio. Fixes #1425 2018-10-15 17:05:49 +07:00
Karim
14fb64b941 Added "/sbin" to init script PATH variable so that its possible to
use more sophosticated dhcp clients (compared to the udhcpc that is
provided by busybox) by installing them into the docker image in
the normal way.
2018-10-06 16:06:24 +01:00
grossmj
8baa480b79 Fix tests. 2018-10-06 21:57:03 +08:00
grossmj
97c68f56bf Notify users if x11vnc process has crashed. Fix #1401. 2018-10-06 21:30:39 +08:00
grossmj
9de13c570c Merge branch '2.1' into 2.2
# Conflicts:
#	gns3server/compute/builtin/nodes/cloud.py
#	gns3server/compute/docker/docker_vm.py
#	gns3server/compute/dynamips/nodes/ethernet_switch.py
#	gns3server/compute/iou/iou_vm.py
#	gns3server/compute/qemu/qemu_vm.py
#	gns3server/compute/virtualbox/virtualbox_vm.py
#	gns3server/compute/vmware/vmware_vm.py
#	gns3server/controller/__init__.py
#	gns3server/version.py
#	gns3server/web/web_server.py
2018-10-04 15:44:13 +02:00
grossmj
17d657c919 Fix small errors like unhandled exceptions etc. 2018-09-11 15:06:01 +02:00
grossmj
4021a13651 Catch exceptions in various locations to fix small issues reported by Sentry. 2018-09-06 09:49:12 +02:00
grossmj
f8ecd61a98 Notify users if xvfb process or x11vnc process have crashed. Ref #1401. 2018-09-05 15:16:07 +08:00
grossmj
33e8710495 Merge branch '2.1' into 2.2
# Conflicts:
#	gns3server/compute/docker/docker_vm.py
#	gns3server/controller/compute.py
#	gns3server/controller/gns3vm/__init__.py
#	gns3server/controller/link.py
#	gns3server/controller/project.py
#	gns3server/handlers/api/controller/project_handler.py
#	gns3server/handlers/api/controller/server_handler.py
#	gns3server/utils/asyncio/__init__.py
#	gns3server/utils/asyncio/telnet_server.py
#	gns3server/version.py
#	gns3server/web/web_server.py
#	tests/compute/qemu/test_qemu_vm.py
2018-08-29 15:57:54 +07:00
grossmj
902de3dd47 Refactor asyncio locking system for Python 3.7 support. Ref https://github.com/GNS3/gns3-gui/issues/2566 Ref https://github.com/GNS3/gns3-gui/issues/2568 2018-08-25 14:10:47 +07:00
grossmj
3560cda06c Use asyncio.ensure_future() instead of asyncio.async() with conservative approach to support Python < 3.4.4. Fixes https://github.com/GNS3/gns3-gui/issues/2566 2018-08-24 18:57:18 +07:00
grossmj
033f005bde Merge branch '2.1' into 2.2
# Conflicts:
#	gns3server/compute/docker/docker_vm.py
#	gns3server/version.py
2018-08-07 21:06:42 +07:00
Andrew Caudwell
b2e0a1b291 Don't release NIO UDP ports when updating docker container.
When a docker container was updated, the NIO UDP ports were being released
from port_manager, but they were still stored in self._ethernet_adapters.
When the container was restarted, the same NIO ports would be used. However,
if a new connection was then added, it could assign a port that was already
in use. The end result was that traffic would be bridged across the wrong
interface connection.
2018-06-11 15:17:13 +12:00
grossmj
d1ccf3bc84 Merge branch '2.1' into 2.2
# Conflicts:
#	gns3server/version.py
#	requirements.txt
2018-06-04 22:46:52 +07:00
ziajka
c52342907a
Merge pull request #1332 from GNS3/global-vars
Docker `ExtraHosts`, global variables for project and supplier support, Fixes: #2482
2018-05-15 09:23:54 +02:00
ziajka
83445214be Support for nested global variables 2018-05-09 11:25:55 +02:00
ziajka
e267f8a8b8 Project global variables 2018-05-04 14:34:44 +02:00
grossmj
21a1800edc Merge branch '2.1' into 2.2
# Conflicts:
#	gns3server/controller/__init__.py
#	gns3server/controller/export_project.py
#	gns3server/controller/import_project.py
#	gns3server/controller/project.py
#	gns3server/version.py
2018-04-28 19:41:12 +07:00
grossmj
305fe2e817 Handle asyncio timeouts. Ref #1307. 2018-04-28 17:42:02 +07:00
ziajka
80958e8a6d support based on init.sh, Ref: #2482 2018-04-27 14:33:07 +02:00
ziajka
43081152ef Add support of ExtraHosts for Docker, Ref. gns3-gui#2482 2018-04-25 16:03:01 +02:00
grossmj
2ea0aa5ded Merge branch '2.1' into 2.2
# Conflicts:
#	gns3server/compute/iou/iou_vm.py
#	gns3server/compute/virtualbox/virtualbox_vm.py
#	gns3server/compute/vmware/vmware_vm.py
2018-04-18 17:08:42 +08:00
grossmj
a12c5a95b0 Catch exceptions when using AsyncioTelnetServer. Fixes #1321. 2018-04-16 15:30:06 +08:00
grossmj
90ce6093d8 Some spring cleaning. 2018-03-15 14:17:39 +07:00
grossmj
658aa4bae9 Merge 2.1 into 2.2 branch 2018-03-12 13:38:50 +07:00
ziajka
e79e27a73f Handle docker env with last empty line, Fixes: #2420 2018-02-27 16:33:55 +01:00
grossmj
4ba523a0d7 Add an error message when Docker container is not ready to be started. Ref #1281. 2018-02-02 16:29:08 +08:00
grossmj
07d2d7b340 Update documentation. 2018-01-31 23:37:02 +07:00
ziajka
eeae07e783 Conservative approach to supported versions of Python 3.4 and asyncio.ensure_future, Ref. #1269 2018-01-29 12:13:20 +01:00
ziajka
d9a0ec9ff3 Replace asyncio.async with ensure_future because of deprecation, Fixes: #1269 2018-01-24 11:11:53 +01:00
grossmj
630afc5469 Do not overwrites persistent Docker volumes. Fixes #2358. 2017-12-17 22:35:26 +01:00
grossmj
dd89b09f84 Fix error when updating packet filter on stopped Docker link. Fixes #1229. 2017-11-23 10:04:32 +07:00
ziajka
3d85bba9d4 Don't create directory structure during json dump. Fixes #2270 2017-10-02 10:41:57 +02:00
grossmj
a567b394f3 Restore file permissions fails for volumes with soft links. Fixes #1180. 2017-09-21 22:45:17 +08:00
Julien Duponchelle
a93f3b0576
Fix permission on exited container
If a container is exited we quickly start it to fix
the permissions.

Fix https://github.com/GNS3/gns3-gui/issues/2181
2017-07-26 14:52:16 +02:00
Bernhard Ehlers
ec4e69b0d8
Ensure, that the docker mount directory exists
Fix #1097

Signed-off-by: Julien Duponchelle <julien@gns3.net>
2017-07-20 16:12:20 +02:00
Julien Duponchelle
b33ba5f8ea
Don't allow user to overwrite GNS3 docker environment variables
Fix #1098
2017-07-20 15:37:56 +02:00
Julien Duponchelle
23c3d32e06
Filter support for Docker
Fix #1110
2017-07-12 19:44:15 +02:00
Julien Duponchelle
f557ec4bda
Fix regression in docker introduce by 2.0 merge 2017-07-12 17:59:29 +02:00
Julien Duponchelle
699ecb7c89
Merge branch 'master' into 2.1 2017-07-11 18:59:50 +02:00
ziajka
e0f0adf3c8 Added preferred Docker API version. Fixes #2136 2017-07-06 11:24:55 +02:00
ziajka
8e8b8bc5a5 WebSocket binary mode support for docker 2017-07-06 10:13:00 +02:00
ziajka
c6f9ec3758 More information on Docker WebSocket error 2017-07-05 10:36:58 +02:00
Julien Duponchelle
6a0345897d
Connector is no longer supported in ws_connect by aiohttp 2.0 2017-06-02 10:42:40 +02:00
Julien Duponchelle
7dfb634376
Fix for websocket usage with aiohttp 2.0
Fix #1050
2017-06-01 18:39:55 +02:00
Julien Duponchelle
93adef91d8
Merge branch '2.0' into 2.1 2017-05-31 16:58:31 +02:00
Julien Duponchelle
b8ee8d69c8
Fix unexpected keyword argument 'conn_timeout'
Fix #1047
2017-05-26 15:42:46 +02:00
Julien Duponchelle
5bb6c51698
Fix an error when logging Docker container fail to start 2017-05-23 13:31:04 +02:00
Julien Duponchelle
2a8911d19e
Keep DOCKER_MINIMUM_API_VERSION and DOCKER_MINIMUM_VERSION consistent 2017-05-23 11:00:15 +02:00
Bernhard Ehlers
8b7209ea78
Use docker version in error message of outdated docker installation 2017-05-23 10:41:42 +02:00
Bernhard Ehlers
7d48eba01b
Use versioned docker API
Since docker v1.13 the unversioned docker API is deprecated.
Backport of gns3-server 2.0, commit effbe59
2017-05-23 10:37:47 +02:00
Bernhard Ehlers
2191c487b6
Support images created by "docker commit". Fixes #1039 2017-05-23 10:23:11 +02:00
Julien Duponchelle
a4245fcf44
Aiohttp 2.0
Ref #1000
2017-05-17 18:42:17 +02:00
Bernhard Ehlers
ecba758c58
Docker aux console is a VT100 terminal
Without that program like nano can't work.

Signed-off-by: Julien Duponchelle <julien@gns3.net>
2017-05-03 10:30:43 +02:00
Bernhard Ehlers
1b0f5c63b8
Fix connection to websocket with last docker release
Fix https://github.com/GNS3/gns3-gui/issues/1994

Signed-off-by: Julien Duponchelle <julien@gns3.net>
2017-04-28 16:03:26 +02:00
Julien Duponchelle
1a90305baa
Docker minimum api is 1.25 2017-04-24 18:43:12 +02:00