164 Commits

Author SHA1 Message Date
YueGuobin
f2fd725e07 fix(acl): correct endpoint paths for users, groups, and roles
Fix the path mismatch between /acl/endpoints API and actual routes:
- Users: /users/{id} → /access/users/{id}
- Groups: /groups/{id} → /access/groups/{id}
- Roles: /roles/{id} → /access/roles/{id}

This fixes the error where creating ACE entries fails with:
"Path '/groups/{id}' doesn't match any existing endpoint"

The actual routes are registered under /access/ prefix, but the
endpoints API was returning paths without the prefix.

Co-Authored-By: Yue Guobin <yueguobin@outlook.com>
2026-03-11 23:23:52 +08:00
grossmj
47a7324eb5
Fix tests 2026-02-25 19:00:57 +08:00
grossmj
547e68fd2b
Remove unneeded rbac_repo in get_templates 2026-02-23 23:31:35 +08:00
grossmj
bdcb6445c7
Use lists for tags instead of dicts 2026-02-23 23:26:42 +08:00
Guobin Yue
66f32cecf2
Merge branch 'GNS3:3.0' into 3.0 2026-02-23 01:37:05 +08:00
YueGuobin
e27ddf2cdf feat(api): fix ETag handling and JSON serialization in template endpoint
- Use `default=str` in `json.dumps` to handle non-serializable objects
- Return proper HTTP 304 response with ETag header instead of raising exception
- Ensure consistent ETag generation for template caching
2026-02-22 23:43:47 +08:00
YueGuobin
a3616e6d33 feat(api): add tag filtering to nodes and templates endpoints
- Add optional `tags` query parameter to `/nodes` and `/templates` endpoints
- Support filtering by tags in format "key:value" with multiple tags ANDed together
- Example: `?tags=vendor:cisco&tags=model:7200` filters nodes/templates with both tags
- Maintain backward compatibility for existing API usage without tags parameter
2026-02-22 22:52:28 +08:00
grossmj
be4b87e8cd
Update project schema and fix tests 2026-02-22 18:13:08 +08:00
Felix Schulz
8ab34924b5 Add 'created_by' field to track project creator 2026-02-21 22:15:21 +01:00
grossmj
5e3ca29c58
Fix updating packet filters 2026-02-21 21:42:22 +08:00
grossmj
600d3d38da
Fix creating Qemu disk image. Fixes #2542 2026-01-28 19:36:22 +08:00
Jeremy Grossmann
d269a4c125
Merge pull request #2570 from Mytic2330/3.0-patch3
Fixed Connection closed when exporting a running project
2025-11-04 04:07:01 +01:00
Bine
d5f360c176 Update projects.py 2025-10-18 19:28:15 +02:00
Bine
e817228280 Fix non-ASCII characters in project names 2025-10-18 18:10:24 +02:00
grossmj
aa8ccf4f82
Allow an image to be uploaded to the controller again even if it is already in the database 2025-04-17 19:07:22 +07:00
grossmj
5019167098
Fix interface information API endpoint for Cloud/NAT devices 2025-04-16 15:26:56 +07:00
Mark Paronyan
bab173ee52
feat(get_iface): add type information in response 2025-03-23 14:28:27 +00:00
Mark Paronyan
ea2856289a
feat: add endpoint to get iface/udp tunnel from links with Cloud,Nat 2025-03-23 13:46:27 +00:00
grossmj
ee9f974362
Fix packet capture for links connected to a cloud node. Fixes #2513 2025-03-16 21:12:33 +07:00
grossmj
0c3f6712b4
Fix auto idle-pc for IOS templates 2025-02-22 20:14:13 +10:00
grossmj
035a104957
Fix capture on IOU/IOL links. Fixes #2477 2025-01-11 18:46:55 +07:00
grossmj
08693871ae
Support to create templates based on image checksums. 2025-01-03 21:35:14 +07:00
grossmj
4758431c76
Improvements for built-in disks
* Checksum is updated in the database for updated disks.
* It is not possible to prune them.
2025-01-02 23:10:51 +07:00
grossmj
7229707746
Use static favicon for API docs. Ref #3674 2024-12-19 17:25:42 +07:00
grossmj
0ee73605c0
Configure self-hosting JavaScript and CSS for docs 2024-12-19 16:54:11 +07:00
grossmj
4e41aefbdb
Require "Project.Audit" permission to duplicate a project and check if "Project.Allocate" permission for the destination. 2024-12-06 14:09:08 +10:00
grossmj
a00f53fbaa
Fix error 500 on PUT for cloud, nat, vmware and vpcs nodes. Fixes #2426 2024-11-19 12:21:35 +10:00
grossmj
e83e12b51a
Add a duplicated project in the same resource pools as the original project if it is in any 2024-11-17 14:03:47 +10:00
grossmj
ce4dd17409
Upgrade fastapi and fix tests 2024-10-31 19:23:28 +10:00
grossmj
a1666dd247
Fix MAC address support for Docker containers 2024-09-18 18:02:35 +07:00
grossmj
6b14abc06f
Add allow_unsafe_options for Qemu settings 2024-07-07 19:08:12 +02:00
grossmj
8c1dbf0084
Fix to allow duplicating IOS routers 2024-05-19 00:33:55 +07:00
grossmj
38df4bea2e
Do not return an error if an image has already been uploaded 2024-04-26 19:02:50 +07:00
grossmj
31c7fe88f1
Remove websocket.close() 2024-03-16 16:00:27 +01:00
grossmj
37f720ac73 Fix bug when listing endpoints for opened project 2023-11-23 15:38:42 +10:00
grossmj
61dede72f9 Fix ws console and packet capture over SSL 2023-11-03 15:35:49 +10:00
grossmj
44c066ac68 Fix compute authentication for websocket endpoints 2023-10-22 12:44:39 +10:00
grossmj
47d3f3f349 Do not enforce Compute.Audit and Template.Audit privileges due to current web-ui limitations 2023-10-18 15:51:43 +10:00
grossmj
5092bd2fdf List elements when a project is closed 2023-10-09 13:16:12 +10:00
grossmj
a27db6b4eb Fix deleting resource from resource pool. Ref #2293 2023-09-28 18:38:38 +10:00
grossmj
674381f1be Fix tests 2023-09-25 21:08:23 +10:00
grossmj
1ae6d13022 Support to create empty disk images on the controller 2023-09-25 17:51:14 +10:00
grossmj
7534718a1c Remove privileges endpoint from roles 2023-09-14 22:41:08 +07:00
Jeremy Grossmann
63c1defd9a
Merge branch '3.0' into resource-pools 2023-09-14 22:38:52 +07:00
grossmj
1f90bb14b6 Require users to be logged in for privilege API endpoints 2023-09-14 22:36:21 +07:00
Sylvain MATHIEU OBS
10eeefc1f5 API: add endpoint to expose availables privileges to web UI 2023-09-12 15:24:54 +02:00
grossmj
a95dda0d1d Complete resource pool support for projects 2023-09-11 18:15:03 +07:00
grossmj
d53ef175f8 DB and API for resource pools 2023-09-07 17:31:11 +07:00
grossmj
8aa9d1aae6 Upgrade dependencies and fix user group tests 2023-09-03 17:58:51 +07:00
grossmj
66047b3431 Fix OAuth2PasswordBearer token URL 2023-09-03 17:31:05 +07:00