grossmj
f3f7921525
Add generic function to install resource files
2023-05-07 21:57:44 +08:00
grossmj
f08ce9d3f1
Check for colon in project name. Fixes #2203
2023-03-19 18:26:26 +10:00
grossmj
f347e21100
Fix Docker tests
2023-03-19 17:56:07 +10:00
grossmj
267c4cbbbb
Merge branch '2.2' into 3.0
...
# Conflicts:
# README.md
# gns3server/compute/base_node.py
# gns3server/compute/dynamips/__init__.py
# gns3server/compute/dynamips/hypervisor.py
# gns3server/compute/qemu/__init__.py
# gns3server/compute/qemu/qemu_vm.py
# gns3server/controller/__init__.py
# gns3server/crash_report.py
# gns3server/handlers/api/controller/node_handler.py
# gns3server/schemas/qemu_template.py
# gns3server/static/web-ui/index.html
# gns3server/static/web-ui/main.11410ae4eaf4d4c08cd0.js
# gns3server/version.py
# requirements.txt
2023-03-17 17:44:32 +10:00
grossmj
7968ee7ff2
Check swtpm version and start swtpm before qemu
2023-02-26 20:51:24 +10:00
grossmj
d867e1f1c1
Fix tests
2023-02-17 21:25:19 +08:00
grossmj
af9b883c08
Fix and adjustments after merge
2023-01-10 12:09:36 +08:00
grossmj
f09594ae4c
Merge branch '2.2' into 3.0
...
# Conflicts:
# README.md
# README.rst
# tests/handlers/api/compute/test_nat.py
2023-01-10 11:52:58 +08:00
grossmj
5a3b502024
Fix NIO update UDP test
2023-01-10 11:39:18 +08:00
grossmj
997e0ad6ee
Fix more tests
2023-01-10 11:22:12 +08:00
grossmj
eb3fc1bb3a
Fix more tests
2023-01-10 11:09:27 +08:00
grossmj
e9c95ff299
Fix tests
2023-01-10 10:07:26 +08:00
grossmj
72e3d8f0c1
Fix tests after merge
2023-01-05 12:57:00 +08:00
grossmj
27d9063e56
Merge 2.2
2023-01-05 12:38:00 +08:00
grossmj
ae200d9add
Add Trusted Platform Module (TPM) support for Qemu VMs
2023-01-04 12:13:19 +08:00
Jeremy Grossmann
04ba3b6549
Merge pull request #2154 from GNS3/fix/2069
...
Use a stock BusyBox for the Docker integration
2023-01-01 16:18:37 +05:45
grossmj
e5c8ae4bde
Use a stock BusyBox for the Docker integration
2023-01-01 17:04:48 +08:00
grossmj
5bccf4841d
Overwrite built-in appliance files when starting a more recent version of the server
2023-01-01 15:57:41 +08:00
grossmj
17e0b2e259
Stricter checks to create/update an Ethernet switch and add tests
2022-12-24 08:20:51 +08:00
grossmj
93449c942f
Fix tests
2022-12-22 09:24:17 +08:00
grossmj
263febecbc
Merge branch '2.2' into 3.0
...
# Conflicts:
# .github/workflows/testing.yml
# CHANGELOG
# appveyor.yml
# dev-requirements.txt
# gns3server/compute/base_node.py
# gns3server/controller/__init__.py
# gns3server/controller/appliance_manager.py
# gns3server/crash_report.py
# gns3server/static/web-ui/index.html
# gns3server/utils/get_resource.py
# gns3server/version.py
# gns3server/web/route.py
# requirements.txt
# tests/handlers/api/compute/test_qemu.py
# win-requirements.txt
2022-11-09 20:30:28 +08:00
grossmj
2e550d839e
Fix tests
2022-11-07 20:33:02 +08:00
grossmj
9ff302592c
Upgrade to aiohttp 3.8.3
2022-10-12 21:40:23 +08:00
grossmj
2976e220dc
Return a boolean directly from API endpoint for project locked status
2022-09-03 23:08:13 +02:00
grossmj
27debfff8d
API endpoint to get the locked status of a project
2022-09-03 22:58:44 +02:00
grossmj
ca3bf592d6
Global project lock and unlock
2022-08-30 22:49:47 +02:00
grossmj
46b022f726
Restore missing loop
2022-08-27 23:45:30 +02:00
grossmj
8f296e54f4
Add back loop
2022-08-27 23:41:52 +02:00
grossmj
fc7d5be736
Use pytest-asyncio auto mode
2022-08-27 21:10:17 +02:00
grossmj
600c18f04b
Remove pytest.ini from tests dir
2022-08-27 21:00:31 +02:00
grossmj
d1c8f33fc5
Upgrade dev dependencies and fix issues after upgrading to pytest-aiohttp v1.0.4
2022-08-27 19:16:02 +02:00
grossmj
86c44cd6e7
Upgrade dev dependencies and fix tests to support pytest-asyncio strict mode
2022-08-24 21:03:16 +02:00
grossmj
bfbac2e93a
Use generic symbol names
2022-07-25 12:33:40 +02:00
Jeremy Grossmann
da626d334f
Merge branch '3.0' into iou-user-loader-libraries
2022-07-20 16:44:48 +02:00
grossmj
80f5ca0c3f
Checks for valid hostname on server side for Dynamips, IOU, Qemu and Docker nodes
2022-07-17 11:51:29 +02:00
grossmj
f5e1956dfa
Support user defined loader/libraries to run IOU
2022-07-16 11:38:51 +02:00
grossmj
f4b67f2e59
Allow auth token to be passed as a URL param
2022-07-11 14:19:47 +02:00
grossmj
149d086fd8
Reactivate project importation
2022-07-05 23:01:44 +02:00
grossmj
410f062721
Fix config option to disable built-in templates.
2022-06-21 17:17:44 +02:00
grossmj
d8b928f1c1
Fix tests.
2022-06-21 16:52:25 +02:00
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