lablup / lablup/backend.ai

Add API endpoints for usage and quota management

Open
#8,197 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
670
Forks
183
Avg merge
17h 7m
Merged PRs (30d)
358

Description

## Motivation

Administrators need visibility into storage utilization and the ability to configure quotas. API endpoints enable both programmatic access and UI integration.

## Required Features

- GET `/storage-namespaces/{id}/usage` endpoint
- Returns: `total_size`, `max_size`, `artifact_count`, `revision_count`
- Accessible by admin users
- PATCH `/storage-namespaces/{id}/quota` endpoint
- Request body: `{ "max_size": `}
- Admin-only access
- Updates `max_size` field
- Add corresponding request/response DTOs

## Impact

- `src/ai/backend/manager/api/` (new or existing storage API module)
- `src/ai/backend/manager/dto/request.py`
- `src/ai/backend/manager/dto/response.py`

## Testing Scenarios

- GET usage returns correct statistics
- GET usage returns 404 for non-existent namespace
- PATCH quota updates max_size successfully
- PATCH quota with null sets unlimited
- PATCH quota rejects non-admin users
- PATCH quota rejects invalid values (negative numbers)

JIRA Issue: BA-3992

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.