Add new frontend pages for the multi-tenant OCDP platform: - Charts page (/charts): Browse Harbor OCI registries to list Helm chart repositories and versions, with deploy modal to launch charts on selected clusters - Monitoring page (/monitoring): Display cluster metrics (CPU/Memory/GPU usage) and per-node details with resource utilization bars - Chart References page (/chart-references): CRUD for chart metadata references - Values Templates page (/templates): CRUD for Helm values templates with version history and rollback support - Sidebar: Add Charts navigation, update Storage and Templates links - api.ts: Add all API client functions (clusterApi, registryApi, instanceApi, monitoringApi, storageApi, chartReferenceApi, valuesTemplateApi, workspaceApi, userApi) with full TypeScript types Note: deploy flow and values template rollback not yet end-to-end tested.
35 lines
950 B
Go
35 lines
950 B
Go
package repository
|
||
|
||
import (
|
||
"context"
|
||
"github.com/ocdp/cluster-service/internal/domain/entity"
|
||
)
|
||
|
||
// UserRepository 用户仓储接口(Output Port)
|
||
type UserRepository interface {
|
||
// Create 创建用户
|
||
Create(ctx context.Context, user *entity.User) error
|
||
|
||
// GetByID 根据 ID 获取用户
|
||
GetByID(ctx context.Context, id string) (*entity.User, error)
|
||
|
||
// GetByUsername 根据用户名获取用户
|
||
GetByUsername(ctx context.Context, username string) (*entity.User, error)
|
||
|
||
// Update 更新用户
|
||
Update(ctx context.Context, user *entity.User) error
|
||
|
||
// Delete 删除用户
|
||
Delete(ctx context.Context, id string) error
|
||
|
||
// List 列出所有用户
|
||
List(ctx context.Context) ([]*entity.User, error)
|
||
|
||
// ListByWorkspace 列出指定 workspace 的用户
|
||
ListByWorkspace(ctx context.Context, workspaceID string) ([]*entity.User, error)
|
||
|
||
// ListActive 仅列出活跃用户
|
||
ListActive(ctx context.Context) ([]*entity.User, error)
|
||
}
|
||
|