YueGuobin
8fb4bf1117
feat(db): manually set timestamps for SQLite compatibility
...
Add explicit datetime.utcnow() assignments for created_at and updated_at fields in LLMModelConfigsRepository to ensure proper timestamp handling with SQLite. This addresses issues where SQLite may not automatically populate these timestamp fields during create and update operations. Changes applied to both user and group configuration methods for consistency.
2026-03-03 21:35:26 +08:00
YueGuobin
d42fff49a5
feat(docs): enhance LLM model configs API documentation with schema updates
...
- Add `model_type` field to database schema with supported values (text, vision, stt, tts, multimodal, embedding, reranking, other)
- Add `name` field as table-level column for indexing and filtering
- Add reserved JSONB fields for future extensibility
- Update API request/response schemas to include `model_type` and `name` fields
- Add new `LLMModelConfigWithSource` schema for detailed configuration responses
- Update usage examples to reflect new required fields
- Improve database constraints and indexing documentation
2026-03-03 17:54:30 +08:00
YueGuobin
161b7feb01
feat(api): add optimistic locking to LLM model config updates
...
- Include `version` field in all LLM model config response schemas
- Add `expected_version` parameter to update endpoints for optimistic locking
- Handle concurrent modification errors with HTTP 409 Conflict status
- Update both user and group config endpoints consistently
2026-03-03 16:59:12 +08:00
YueGuobin
bbd34f1f67
feat(api): add LLM model configurations endpoint and schemas
...
- Introduce new API route `/access` for managing LLM model configurations
- Add LLMModelConfig model to database models
- Include comprehensive schemas for LLM model config CRUD operations
- Register new router with tags for LLM Model Configurations
2026-03-03 16:34:48 +08:00
grossmj
bfed330ec2
Fix bug when updating compute password to be empty
2026-02-16 19:23:46 +08:00
grossmj
ac4c5f5985
Improve tests for pruning images
2025-01-03 19:56:41 +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
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
a27db6b4eb
Fix deleting resource from resource pool. Ref #2293
2023-09-28 18:38:38 +10:00
Sylvain MATHIEU OBS
0d834ee2a0
rbac fix: cannot add multiple time same privilege to a role
2023-09-18 13:34:46 +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
0077fd98aa
Add required privileges to all endpoints
2023-09-02 17:54:24 +07:00
grossmj
f3a4ad49f4
Check for group ACEs to find user privileges
2023-08-28 18:14:34 +10:00
grossmj
3e0592520b
Handle ACE propagate and allowed
2023-08-28 12:06:01 +10:00
grossmj
57197c3d1c
Comment unused code
2023-08-27 18:23:10 +10:00
grossmj
60ce1172e0
Use an ACL table to check for privileges
2023-08-27 18:20:42 +10:00
grossmj
b0657b39ef
Upgrade dependencies
2023-08-11 18:54:05 +10:00
grossmj
9c456532d0
Pydantic v2 migration
2023-08-04 18:20:06 +10: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
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
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
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
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
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
4c6135fe88
Add /permissions/prune to delete orphaned permissions
2021-08-17 21:55:59 +09:30
grossmj
078c42f185
Save image size + start to automatic template creation based on image checksum.
2021-08-11 16:58:23 +09:30
grossmj
515bd50261
Start refactoring for images management
2021-06-06 16:52:47 +09:30
grossmj
6fb6a27859
Add last login info for users.
2021-06-03 16:57:16 +09:30
grossmj
d65b49acaa
Add user permissions + RBAC tests.
2021-06-03 15:40:12 +09:30
grossmj
36a27c0c19
Force refresh of updated_at value for RBAC db models.
2021-06-01 16:12:06 +09:30
grossmj
a6d2f48df1
Merge remote-tracking branch 'origin/3.0' into rbac
2021-06-01 16:11:22 +09:30
grossmj
0113ca6673
Force refresh of updated_at value in db models.
2021-06-01 16:09:29 +09:30
grossmj
74d820fd0a
Use synchronize_session="fetch" when updating values.
2021-06-01 15:55:50 +09:30
grossmj
e9b9884ee3
Merge remote-tracking branch 'origin/3.0' into rbac
2021-06-01 15:50:14 +09:30
grossmj
a6c2a3e47f
Use synchronize_session="fetch" when updating values.
2021-06-01 13:02:03 +09:30
grossmj
2e2e31337a
Add description for user permission.
2021-06-01 12:55:16 +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
8810249d36
Add user groups support.
2021-05-15 15:10:02 +09:30
grossmj
e28452f09a
Secure users API and handle manual password recovery.
2021-04-19 09:40:04 +09:30
grossmj
9404c00411
Complete type annotations for API endpoints.
2021-04-18 15:40:38 +09:30
grossmj
c021e21309
Use black with -l 120 param.
2021-04-13 18:46:50 +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
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