Commit Graph

406 Commits

Author SHA1 Message Date
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
f416d64042 Allow to set the initial super admin username / password in server config file. Ref #1857 2021-05-16 20:01:05 +09:30
grossmj
8810249d36 Add user groups support. 2021-05-15 15:10:02 +09:30
grossmj
a02aede1b0 Use uuid5 to create new compute_id. Fixes #1641 #1887 2021-04-21 13:47:32 +09:30
grossmj
dff1ec9bc6 Fix /users/me endpoint. 2021-04-20 19:54:55 +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
9404c00411 Complete type annotations for API endpoints. 2021-04-18 15:40:38 +09:30
grossmj
44074ff7c9 Some cleaning. 2021-04-17 18:36:32 +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
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
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
30ebae207f Use Pydantic to validate the server config file. 2021-04-12 17:02:23 +09:30
grossmj
566e326b57 Save computes to database 2021-04-05 14:21:41 +09:30
grossmj
e607793e74 Generate a new list in template schema defaults. 2021-04-02 17:45:16 +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
bf7cf862af Refactor tests and start work on database integration. 2020-12-02 18:39:08 +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
a5d89b428a Merge branch '2.2' into 3.0
# Conflicts:
#	gns3server/controller/__init__.py
#	gns3server/controller/compute.py
#	gns3server/schemas/gns3vm.py
#	gns3server/utils/application_id.py
#	gns3server/version.py
#	gns3server/web/web_server.py
2020-11-05 17:15:25 +10:30
grossmj
d16cb5ef89 Option to allocate or not the vCPUs and RAM settings for the GNS3 VM. Fixes https://github.com/GNS3/gns3-gui/issues/3069 2020-11-05 11:13:57 +10:30
grossmj
eeaf10b418 Put all schemas in the same module. 2020-10-31 16:02:21 +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
eb3cb8a41f Migration to FastAPI 2020-10-02 16:07:50 +09:30
Jeremy Grossmann
a2e884e315
Create config disk property false by default for Qemu templates
Ref https://github.com/GNS3/gns3-gui/issues/3035
2020-08-17 12:45:57 +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
464fd804ce Set default disk interface type to "none".
Fail-safe: use "ide" if an image is set but no interface type is configured.
Use the HDA disk interface type if none has been configured for HDD.
2020-08-15 16:14:16 +09:30
grossmj
56aba96a5f Add explicit option to automatically create or not the config disk. Off by default. 2020-08-14 17:57:24 +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
01b2c72767 Add maxcpus property for Qemu VMs. Ref #1674 2020-07-24 15:15:41 +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
58a19af9ac Support to activate/deactive network connection state replication in Qemu. 2020-06-02 18:45:22 +09:30
grossmj
8eefaa3f32 Option to reset or not all MAC addresses when exporting or duplicating a project. 2020-05-27 12:14:47 +09:30
grossmj
10645a412b Default port set to 80 for server running in the GNS3 VM. Fixes #1737 2020-05-05 12:40:50 +09:30
grossmj
868c39acfe Fix issues with empty project variables. Fixes https://github.com/GNS3/gns3-gui/issues/2941 2020-03-14 17:22:43 +10:30
grossmj
3df348ac2a Server statistics implementation 2020-03-10 17:48:03 +10:30
grossmj
c5412bf970 Allocate application IDs for IOU nodes on the controller.
An application ID is used by IOU to generate its interface Mac addresses. They must be unique across all opened projects sharing the same computes to avoid Mac address collisions.
2020-02-10 15:20:49 +08:00
grossmj
92ac250bc7 Add nvme disk interface and fix scsi disk interface for Qemu VMs. 2020-01-25 16:22:34 +08:00
grossmj
d796f8d112 Add latest Qemu nic models. 2020-01-24 19:05:46 +08:00
grossmj
0a87ee573c Accept a node name when creating a node from a template using the API. Fixes #1708 2020-01-08 08:19:33 +08:00
grossmj
2f57bd58c0 Fix error with console type in Ethernet switch schema. Fixes #1659 2019-10-08 17:16:17 +08:00
grossmj
647dde1bb4 Make x,y optional for creating links via API. Fixes #1630 2019-08-26 19:51:03 +07:00
grossmj
fb288db50a Set default_name_format for some builtin nodes. 2019-08-26 17:00:18 +07:00
grossmj
55a9abfcea Allow "none" for compute_id in templates. 2019-08-26 16:48:03 +07:00