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
grossmj
bc36d95060
Finalize image management refactoring and auto install appliance if possible
2021-10-10 17:35:11 +10:30
grossmj
b683659d21
Sqlite doesn't allow BigInteger to be used as an primary key with autoincrement
2021-09-23 11:05:03 +09: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
5807dd068e
Revert "No need to add permissions when the super admin creates templates or projects"
...
This reverts commit 3d1c3303f9
.
2021-09-20 10:36:56 +09:30
grossmj
3d1c3303f9
No need to add permissions when the super admin creates templates or projects
2021-09-18 12:49:54 +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
Rolf Sommerhalder
6e88d4816f
REST API example needs additional parameter
...
While try this example with GNS3 branch 3.0 on Ubuntu 20.04 LTS, the API call
```$ curl http://172.17.46.114:3080/v3/users/authenticate -d '{"username": "admin", "password": "admin"}' ``` fails with ```{"detail":[{"loc":["body"],"msg":"value is not a valid dict","type":"type_error.dict"}]}```.
The additional parameter appended to curl fixes this ```{"access_token":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJhZG1pbiIsImV4cCI6MTYzMTI4NTc4NX0.kT1dAN4v1vHMTBJO2UaI2I7yAFhnSpBU9iqmdDuwtAQ","token_type":"bearer"} ```
Found after googling for the error above in
FastAPI 0.65.2 POST request fails with "value is not a valid dict" when using the Requests library; 0.65.1 works (with a caveat) #3373
https://github.com/tiangolo/fastapi/issues/3373#issuecomment-886745123
2021-09-09 17:08:26 +02:00
grossmj
d606553e20
Allow images to be stored in subdirs and used by templates.
2021-08-30 16:53:41 +09:30
grossmj
332fa47b50
Option to prune images when deleting template.
2021-08-23 10:27:10 +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
078c42f185
Save image size + start to automatic template creation based on image checksum.
2021-08-11 16:58:23 +09:30
Jeremy Grossmann
f13b4e89b7
Merge branch '3.0' into image-management-refactoring
2021-08-10 05:46:22 -07:00
grossmj
ce55ec73a4
Fix exception with endpoints returning HTTP status code 204. Fixes #1891
2021-08-10 21:53:21 +09:30
grossmj
3ae7783360
Fix "-machine accel=tcg" check
2021-08-10 15:41:05 +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
1f0ceb6f74
Symbols endpoints (except upload) don't require authentication.
2021-06-16 20:22:49 +09:30
grossmj
229a04e2fa
Fix link style merge
2021-06-12 15:26:35 +09:30
grossmj
515bd50261
Start refactoring for images management
2021-06-06 16:52:47 +09:30
grossmj
f64b5cd9b6
Allow controller to be reloaded using the API. Fixes #1743
2021-06-04 17:01:07 +09:30
grossmj
8be015cd86
Move "/{project_id}/templates/{template_id}" endpoint.
2021-06-03 18:18:34 +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
eb0f8c6174
Save/restore appliances Etag.
2021-05-17 00:37:15 +09:30
grossmj
fffbb08a8e
Catch SQLAlchemyError exception.
2021-05-16 18:37:17 +09:30
grossmj
d759564e20
Require authentication for get_user_memberships endpoint.
2021-05-16 17:06:23 +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
8810249d36
Add user groups support.
2021-05-15 15:10:02 +09:30
grossmj
912fb2ed29
Fix add node from template. Fixes https://github.com/GNS3/gns3-web-ui/issues/1122
2021-05-06 16:22:16 +09:30
grossmj
a795e0d7c1
Add missing CORS origins.
2021-04-28 21:20:05 +09:30
grossmj
d3ace8ff17
Fix user delete endpoint.
2021-04-26 16:21:16 +09:30
grossmj
49be4146d6
Protect controlle notification endpoints. Ref #1888
...
(WebSocket endpoint is not secured, it takes an optional token).
2021-04-26 16:18:18 +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
cefab8d362
Rename __json__() to asdict()
2021-04-17 23:34:28 +09:30
grossmj
44074ff7c9
Some cleaning.
2021-04-17 18:36:32 +09:30
grossmj
bad3ef7003
Detect the app is exiting and avoid reconnecting to computes.
2021-04-17 18:33:20 +09:30
grossmj
9c850e0f2b
Move schemas between compute and controller subpackages
2021-04-15 18:12:08 +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
a9eb035b7d
Move error responses to API routers.
2021-04-13 16:19:56 +09:30