grossmj
d303d13045
Merge branch '2.2' into 3.0
...
# Conflicts:
# gns3server/compute/base_node.py
# gns3server/compute/docker/docker_vm.py
# gns3server/compute/iou/iou_vm.py
# gns3server/controller/template_manager.py
# gns3server/handlers/api/compute/docker_handler.py
# gns3server/handlers/api/compute/dynamips_vm_handler.py
# gns3server/handlers/api/compute/iou_handler.py
# gns3server/handlers/api/compute/qemu_handler.py
# gns3server/handlers/api/compute/virtualbox_handler.py
# gns3server/handlers/api/compute/vmware_handler.py
# gns3server/handlers/api/compute/vpcs_handler.py
# gns3server/handlers/api/controller/node_handler.py
# gns3server/version.py
# requirements.txt
# tests/controller/test_controller.py
# tests/controller/test_project.py
# tests/handlers/api/controller/test_node.py
2022-06-21 16:45:25 +02:00
grossmj
ec3c36d6da
Fix Docker tests
2022-06-19 21:18:54 +02:00
grossmj
bdd703a0dc
Support to reset all console connections. Ref https://github.com/GNS3/gns3-server/issues/1619
2022-06-15 15:30:44 +02:00
grossmj
67bf14776f
Config option to disable built-in templates
2022-06-15 14:48:52 +02:00
grossmj
527d4bb3ea
Run Xtigervnc with MIT-SHM extension disabled for Docker VNC console support. Fixes #2071
2022-06-08 00:05:24 +08:00
grossmj
7d49b80e6b
Add controller endpoints to get VirtualBox VMs, VMware VMs and Docker images
2022-06-07 00:38:59 +08:00
Jeremy Grossmann
3b7dfe5929
Merge pull request #2055 from GNS3/remove-qemu-binaries-requirement
...
Remove Qemu binary requirement
2022-06-06 14:51:07 +08:00
grossmj
162af5bb7a
Checks for compression levels + tests
2022-06-01 20:26:59 +07:00
grossmj
2535e5508d
Remove Qemu binary requirement
2022-04-19 18:21:39 +07:00
grossmj
3106c8a6a2
Do not cache to md5sum file in some situations
2022-04-18 17:13:52 +07:00
grossmj
e50bed5bee
Support delete Qemu disk image from API
...
Return the real disk image name in the 'hdx_disk_image_backed' property for Qemu VMs
2022-04-14 17:01:54 +07:00
grossmj
fda2a37b98
Handle creating Qemu disk images and resizing
2022-04-07 16:21:47 +08:00
grossmj
888c773dc0
Finish to clean up local setting usage. Ref #1460
2022-03-31 12:05:47 +08:00
grossmj
900d4f79ee
"Local" command line parameter is only for stopping
...
a server that has been started by the desktop GUI
2022-03-30 18:38:34 +08:00
grossmj
9b39bfb845
Detect image type instead of requesting it from user
2022-03-20 16:20:17 +10:00
grossmj
74c675d5b0
Drop Windows support
2022-01-19 22:28:36 +10:30
grossmj
10fdd8fcf4
Add connect endpoint for computes
...
Param to connect to compute after creation
Report compute unauthorized HTTP errors to client
2021-12-24 13:05:39 +10:30
grossmj
87c1df1639
Fix compute Docker test. Fixes #2003
2021-12-15 13:30:38 +10:30
grossmj
16fcf6141e
Fix tests
2021-12-08 00:43:54 +10:30
grossmj
af9860f965
Fix compute Docker test
2021-12-02 22:15:23 +10:30
grossmj
5797de8f2d
Fix tests
2021-12-02 19:14:55 +10:30
grossmj
38388f7ae5
Secure controller to compute communication using HTTP basic authentication
2021-11-18 18:37:10 +10:30
grossmj
717a400a11
Fix tests
2021-11-01 17:05:27 +10:30
grossmj
442a23836e
Fix version output test
2021-10-21 21:48:53 +10:30
grossmj
bb15b13a9d
Return the current controller hostname/IP from any compute
2021-10-21 21:38:36 +10:30
Jeremy Grossmann
16ac9358df
Merge pull request #1986 from GNS3/remove-qemu-legacy-networking
...
Remove Qemu legacy networking support
2021-10-20 15:44:31 +10:30
grossmj
eab4c8c770
Remove Qemu legacy networking support
2021-10-19 15:32:27 +10:30
grossmj
a31e5615a4
Add a custom version to an appliance
2021-10-19 15:15:10 +10:30
grossmj
88d98cf02e
Fix tests and workaround issue with flake8
2021-10-18 22:12:10 +10:30
grossmj
13ff7df9fa
Validate appliance files with Pydantic
2021-10-18 21:46:50 +10:30
grossmj
04934691df
Appliance management refactoring:
...
* Install an appliance based on selected version
* Each template have unique name and version
* Allow to download an appliance file
2021-10-18 18:04:30 +10:30
Jeremy Grossmann
9ac6bd1e59
Merge pull request #1908 from GNS3/busybox-docker
...
Use a stock BusyBox for the Docker Integration
2021-10-16 19:47:24 +10:30
grossmj
d8bceaad5d
Merge branch '3.0' into image-management-refactoring
...
# Conflicts:
# gns3server/api/routes/controller/permissions.py
2021-09-20 17:06:46 +09:30
grossmj
c8ed96d91b
Add isolate and unisolate endpoints. Ref https://github.com/GNS3/gns3-gui/issues/3190
2021-09-15 18:04:43 +09:30
grossmj
43ca53a089
Fix tests
2021-09-09 16:54:16 +09:30
grossmj
a324459152
Merge branch '2.2' into 3.0
...
# Conflicts:
# gns3server/compute/qemu/qemu_vm.py
# gns3server/handlers/api/compute/server_handler.py
# gns3server/utils/path.py
# gns3server/version.py
# requirements.txt
# tests/compute/qemu/test_qemu_vm.py
# tests/compute/test_manager.py
2021-09-09 16:36:17 +09:30
grossmj
611570a863
Fix qemu-img rebase code to support Qemu 6.1. Ref https://github.com/GNS3/gns3-server/pull/1962
2021-09-05 22:18:46 +09:30
grossmj
ed336da304
Qemu 6.1 support
...
Handle the deprecated use of backing file without explicit backing format issue.
2021-09-05 18:34:37 +09:30
grossmj
4eb8491cfa
Fix tests. Fixes #1950
2021-09-01 19:31:37 +09:30
grossmj
d606553e20
Allow images to be stored in subdirs and used by templates.
2021-08-30 16:53:41 +09:30
grossmj
75bb06563a
Fix tests
2021-08-30 13:04:24 +09:30
grossmj
332fa47b50
Option to prune images when deleting template.
2021-08-23 10:27:10 +09:30
grossmj
bf9a3aee20
Associate images when creating or updating a template.
2021-08-22 15:16:02 +09:30
grossmj
4d9e4e1059
Add prune images endpoint.
...
Use many-to-many relationship between images and templates.
2021-08-20 15:58:41 +09:30
grossmj
07d4892faf
Check if user has the right to add a permission
2021-08-19 14:47:48 +09:30
grossmj
4c6135fe88
Add /permissions/prune to delete orphaned permissions
2021-08-17 21:55:59 +09:30
grossmj
9df586d5d5
Check a permission matches an existing route before it is allowed to be created.
2021-08-17 16:14:15 +09:30
grossmj
cfaafedb09
Merge branch '3.0' into busybox-docker
2021-08-11 18:36:30 +09:30
Jeremy Grossmann
f13b4e89b7
Merge branch '3.0' into image-management-refactoring
2021-08-10 05:46:22 -07:00
grossmj
36b9f8bdfd
Fix tests
2021-08-10 15:58:13 +09:30
grossmj
6dd0f4d4d3
Allow logged in user to change some of its data. Administrators can lock users using the is_active
field.
2021-08-09 16:36:18 +09:30
grossmj
6ec028ea4e
Merge branch '2.2' into 3.0
...
# Conflicts:
# gns3server/compute/builtin/nodes/cloud.py
# gns3server/compute/vmware/vmware_vm.py
# gns3server/controller/link.py
# gns3server/controller/snapshot.py
# gns3server/handlers/api/compute/dynamips_vm_handler.py
# gns3server/handlers/api/compute/iou_handler.py
# gns3server/handlers/api/compute/qemu_handler.py
# gns3server/handlers/api/controller/link_handler.py
# gns3server/schemas/link.py
# gns3server/utils/path.py
# gns3server/version.py
# requirements.txt
2021-06-12 14:36:32 +09:30
grossmj
d556c08def
Revert "Skip test"
...
This reverts commit 8acb2fe3
2021-06-08 12:27:20 +09:30
grossmj
8acb2fe37e
Skip test
2021-06-08 12:18:27 +09:30
grossmj
095a022033
Fix tests. Ref https://github.com/GNS3/gns3-gui/issues/2461
2021-06-07 14:23:52 +09:30
grossmj
515bd50261
Start refactoring for images management
2021-06-06 16:52:47 +09:30
grossmj
dc914eb0f9
Fix tests.
2021-06-03 19:11:11 +09:30
grossmj
4e33d29af8
Change RBAC field names from builtin to is_builtin
2021-06-03 16:24:38 +09:30
grossmj
d65b49acaa
Add user permissions + RBAC tests.
2021-06-03 15:40:12 +09:30
grossmj
fbc47598d9
Basic functional RBAC support.
2021-05-27 17:28:44 +09:30
grossmj
6d4da98b8e
Base API and tables for RBAC support.
2021-05-25 18:34:59 +09:30
grossmj
2bf16f1e5f
Change method to prevent forbidden directory traversal. Ref #1894
2021-05-16 14:29:56 +09:30
grossmj
f3d81fa450
Clean files and catch file path escape. Ref #1894
2021-05-15 22:35:44 +09:30
grossmj
09ac7fd7fb
Merge branch '2.2' into 3.0
...
# Conflicts:
# gns3server/compute/base_manager.py
# gns3server/handlers/api/compute/dynamips_vm_handler.py
# gns3server/handlers/api/compute/iou_handler.py
# gns3server/handlers/api/compute/project_handler.py
# gns3server/handlers/api/compute/qemu_handler.py
# gns3server/handlers/api/controller/node_handler.py
# gns3server/handlers/api/controller/project_handler.py
# gns3server/handlers/index_handler.py
# tests/handlers/api/compute/test_project.py
# tests/handlers/api/compute/test_qemu.py
# tests/handlers/api/controller/test_node.py
# tests/handlers/api/controller/test_project.py
2021-05-15 20:46:34 +09:30
grossmj
9a6978902d
Fix tests.
2021-05-15 19:43:36 +09:30
grossmj
8810249d36
Add user groups support.
2021-05-15 15:10:02 +09:30
grossmj
956b9056c1
Fix issues with latest version of sqlalchemy
2021-05-08 15:37:51 +09:30
grossmj
10164e262d
Enable SQL foreign key support for SQLite
2021-05-06 17:21:45 +09:30
grossmj
ad7d8e2e7d
Fix tests.
2021-04-28 15:56:11 +09:30
grossmj
a02aede1b0
Use uuid5 to create new compute_id. Fixes #1641 #1887
2021-04-21 13:47:32 +09:30
grossmj
0465cb87f6
Protect the API and add alternative authentication endpoint.
2021-04-20 11:59:02 +09:30
grossmj
e28452f09a
Secure users API and handle manual password recovery.
2021-04-19 09:40:04 +09:30
grossmj
c03226e368
Add default super admin account in controller db.
2021-04-18 17:39:47 +09:30
grossmj
cefab8d362
Rename __json__() to asdict()
2021-04-17 23:34:28 +09:30
grossmj
6b8ce8219c
Fix tests.
2021-04-15 18:30:22 +09:30
grossmj
9c850e0f2b
Move schemas between compute and controller subpackages
2021-04-15 18:12:08 +09:30
grossmj
c59fc375f2
Remove traceng code.
2021-04-13 19:03:23 +09:30
grossmj
71725aade6
Rename ssl and auth configuration file settings.
...
Add enable SSL config validator.
Strict configuration file validation: any error will prevent the server to start.
Core server logic moved to a Server class.
2021-04-12 23:26:42 +09:30
grossmj
1b5a5de4bc
Generate new config for each test. Fixes tests.
2021-04-12 19:37:59 +09:30
grossmj
30ebae207f
Use Pydantic to validate the server config file.
2021-04-12 17:02:23 +09:30
grossmj
478119b40d
Comment out problematic test
2021-04-10 13:13:28 +09:30
grossmj
802959f9ab
Merge branch 'master' into 3.0
...
# Conflicts:
# dev-requirements.txt
# gns3server/controller/__init__.py
# gns3server/controller/appliance_manager.py
# gns3server/controller/compute.py
# gns3server/controller/topology.py
# gns3server/handlers/api/compute/ethernet_switch_handler.py
# gns3server/handlers/api/controller/link_handler.py
# gns3server/handlers/api/controller/symbol_handler.py
# gns3server/version.py
# requirements.txt
# tests/controller/test_export_project.py
# tests/handlers/api/compute/test_qemu.py
# tests/web/test_response.py
# win-requirements.txt
2021-04-10 12:46:40 +09:30
grossmj
87a26d5da0
Fix tests and comment problematic ones that rely on AsyncioMagicMock
2021-04-09 11:57:29 +09:30
grossmj
170e83e589
Fix tests and update requirements
2021-04-05 17:43:35 +09:30
grossmj
5217dbf3a3
Fix tests
2021-04-05 14:39:50 +09:30
grossmj
566e326b57
Save computes to database
2021-04-05 14:21:41 +09:30
grossmj
91920e5a5b
Fix issue with tests + some cleaning.
2021-03-31 09:58:52 +10:30
grossmj
0fea3f969e
Use aiosqlite and add service for templates
2021-03-28 21:17:29 +10:30
grossmj
d730c591b3
Refactor template management to use database.
2021-03-28 11:15:08 +10:30
grossmj
7542b28793
Revert "Fix tests"
...
This reverts commit 4d0cb32b
2021-03-24 13:05:50 +10:30
grossmj
4d0cb32bd0
Fix tests
2021-03-24 12:39:22 +10:30
grossmj
58c1b01439
Add default JWT secret key and fix tests.
2020-12-18 16:51:54 +10:30
grossmj
bde706d19a
Generate JWT secret key if none is configured in the config file.
...
Change location of the database.
2020-12-16 18:24:21 +10:30
grossmj
509e762cda
Fix slow tests.
2020-12-07 18:53:40 +10:30
grossmj
d47dcb0d6f
User authentication with tests.
2020-12-07 16:52:36 +10:30
grossmj
bf7cf862af
Refactor tests and start work on database integration.
2020-12-02 18:39:08 +10:30
grossmj
c043830e3f
Move endpoints to routes & preparations to use a database.
2020-11-19 15:21:03 +10:30
grossmj
d58407c735
Fix tests.
2020-11-13 15:32:25 +10:30
grossmj
7837081eba
Fix running tests with Python 3.9
2020-11-11 17:38:06 +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
7314b41d8f
Fix tests.
2020-11-02 22:45:01 +10:30
grossmj
30d6f1fa2a
Make Swagger Ui the default for API documentation
2020-11-02 12:47:59 +10:30
grossmj
359f9a7384
Move to version 3 of the REST API.
...
Rename packet capture endpoints.
2020-11-02 12:05:32 +10:30
grossmj
81439c750a
Use pydantic for data validation (instead of jsonschema)
...
Fix/improve various pydantic shema models.
2020-10-31 15:07:12 +10:30
grossmj
13da8aa8f5
Do not automatically connect to local compute.
2020-10-22 16:47:11 +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
554404e6e7
Try to run tests for Windows and macOS.
2020-10-20 10:50:46 +10:30
grossmj
0500b28aea
Fix changing to ProactorEventLoop in tests.
2020-10-20 00:57:06 +10:30
grossmj
bd4bf53084
Use ProactorEventLoop with pytest-asyncio
2020-10-20 00:46:46 +10:30
grossmj
25494ca098
Fix project import to work with FastAPI.
2020-10-19 22:39:30 +10:30
grossmj
596ee9b66d
Test compute notifications and run tests on macOS and Windows.
2020-10-19 19:25:32 +10:30
grossmj
6af8c8933e
Fix tests.
2020-10-19 18:47:25 +10:30
grossmj
58c5965905
Fix tests.
2020-10-13 11:46:18 +10:30
grossmj
eb3cb8a41f
Migration to FastAPI
2020-10-02 16:07:50 +09:30
Jeremy Grossmann
fa26555d00
Merge pull request #1801 from GNS3/qemu-config-disk
...
QEMU config disk - enable QEMU config import/export
2020-08-15 16:35:20 +08:00
grossmj
f2ddef855f
Fix tests.
...
(cherry picked from commit 620d93634e
)
2020-08-15 16:35:31 +09:30
grossmj
620d93634e
Fix tests.
2020-08-15 16:35:31 +09:30
grossmj
9d3f7c79a2
Fix more tests
...
(cherry picked from commit 546982d1ea
)
2020-08-13 17:18:45 +09:30
grossmj
546982d1ea
Fix more tests
2020-08-13 17:18:45 +09:30
grossmj
c684c554bf
Fix tests
...
(cherry picked from commit 2ba6eac113
)
2020-08-13 17:10:31 +09:30
grossmj
2ba6eac113
Fix tests
2020-08-13 17:10:31 +09:30
grossmj
9890126453
Merge branch '2.2' into 2.3
...
# Conflicts:
# gns3server/notification_queue.py
# gns3server/version.py
2020-08-13 01:48:26 +09:30
grossmj
855a95de49
Fix tests. Fixes #1796
2020-07-30 14:58:22 +09:30
grossmj
3c1a1eb4ef
Fix tests.
2020-07-29 16:32:45 +09: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
f97d346c34
Support to reset links. Fixes https://github.com/GNS3/gns3-server/issues/1620
2020-07-24 21:48:49 +09:30
grossmj
cbcdaabcce
Fix tests. Ref #1674
2020-07-24 15:22:11 +09:30
grossmj
3dc4ea46d6
Add total RAM, CPUs and disk size to servers summary as well as disk usage in percent. Fixes https://github.com/GNS3/gns3-server/issues/1532
2020-07-19 14:16:07 +09:30
grossmj
d1c29c8bb7
Resource constraints for Docker VMs.
2020-07-18 21:03:55 +09:30
grossmj
dff035d957
Support for "usage" for "Cloud" nodes. Fixes https://github.com/GNS3/gns3-gui/issues/2887
...
Allow "usage" for all builtin nodes (not exposed in Ui).
2020-07-15 19:15:51 +09:30
grossmj
99128e7713
Fix Key Error "vendor_id" is missing when configuring GNS3 VM with VirtualBox. Fixes https://github.com/GNS3/gns3-gui/issues/3018
2020-07-10 17:44:38 +09:30
grossmj
850c30f958
Merge branch 'master' into 2.2
...
# Conflicts:
# tests/handlers/api/compute/test_dynamips.py
# tests/handlers/api/compute/test_qemu.py
2020-06-29 18:44:46 +09:30
grossmj
27da8458e8
Allow tests to be run by root. Fixes #1784
2020-06-29 18:43:35 +09:30
grossmj
7fd8fde020
Some fixes for tests. Ref #1784
2020-06-19 19:05:23 +09:30
grossmj
9d141baf22
Comment capsys tests
2020-06-16 21:27:49 +09:30
grossmj
7fb554135f
Try to fix capsys issue with Python 3.8 (second try)
2020-06-16 21:11:29 +09:30
grossmj
241caa1ec7
Try to fix capsys issue with Python 3.8
2020-06-16 20:56:10 +09:30
grossmj
d33584a2e4
More specific fix for Windows
2020-06-16 19:16:58 +09:30
grossmj
438b1c056c
Remove '\n' from for version strings for test_parse_arguments test.
2020-06-16 19:16:05 +09:30
grossmj
ef23e74e9c
Another fix for test_gns3vm.py
2020-06-16 19:09:49 +09:30
grossmj
9ab8599e1e
Fix other issues with tests.
2020-06-16 19:03:42 +09:30
grossmj
d9ab29a9e0
Another fix for test_gns3vm.py
2020-06-16 18:52:07 +09:30
grossmj
09e9382df1
Do not try to use ProactorEventLoop() on non Windows platforms.
2020-06-16 18:45:11 +09:30
grossmj
8976384a56
Fix test_gns3vm.py
2020-06-16 18:37:32 +09:30
grossmj
e4b7e46444
Fix tests for Windows
2020-06-16 01:57:16 -07:00
grossmj
1d4c3a164d
Use the ProactorEventLoop on Windows.
2020-06-16 14:08:17 +09:30
grossmj
d3ea67da24
Refactor tests
...
* Use pytest-aiohttp
* Use the async def / await syntax.
* Fix tests to run with Python 3.8
2020-06-16 13:59:03 +09:30
grossmj
a4bc696a5f
Fix tests
2020-05-05 13:19:51 +09:30
grossmj
45d135911f
Fix tests.
2020-04-30 20:36:12 +09:30