Versions in this module Expand all Collapse all v0 v0.4.0 Apr 21, 2026 Changes in this version + var ErrCreate = errors.New("create error") + var ErrDBConnection = errors.New("database connection error") + var ErrDBQuery = errors.New("database query error") + var ErrDBScan = errors.New("database scan error") + var ErrDelete = errors.New("delete error") + var ErrNotFound = errors.New("not found") + var ErrPropletNotFound = errors.New("proplet not found") + var ErrTaskNotFound = errors.New("task not found") + var ErrUpdate = errors.New("update error") + type Database struct + func NewDatabase(path string) (*Database, error) + func (db *Database) Migrate() error + type JobRepository interface + Create func(ctx context.Context, j job.Job) (job.Job, error) + Delete func(ctx context.Context, id string) error + Get func(ctx context.Context, id string) (job.Job, error) + List func(ctx context.Context, offset, limit uint64) ([]job.Job, uint64, error) + func NewJobRepository(db *Database) JobRepository + type MetricsRepository interface + CreatePropletMetrics func(ctx context.Context, m PropletMetrics) error + CreateTaskMetrics func(ctx context.Context, m TaskMetrics) error + ListPropletMetrics func(ctx context.Context, propletID string, offset, limit uint64) ([]PropletMetrics, uint64, error) + ListTaskMetrics func(ctx context.Context, taskID string, offset, limit uint64) ([]TaskMetrics, uint64, error) + func NewMetricsRepository(db *Database) MetricsRepository + type PropletMetrics struct + CPU proplet.CPUMetrics + Memory proplet.MemoryMetrics + Namespace string + PropletID string + Timestamp time.Time + type PropletRepository interface + Create func(ctx context.Context, p proplet.Proplet) error + Delete func(ctx context.Context, id string) error + Get func(ctx context.Context, id string) (proplet.Proplet, error) + List func(ctx context.Context, offset, limit uint64) ([]proplet.Proplet, uint64, error) + Update func(ctx context.Context, p proplet.Proplet) error + func NewPropletRepository(db *Database) PropletRepository + type Repositories struct + Jobs JobRepository + Metrics MetricsRepository + Proplets PropletRepository + TaskProplets TaskPropletRepository + Tasks TaskRepository + func NewRepositories(db *Database) *Repositories + type TaskMetrics struct + Aggregated *proplet.AggregatedMetrics + Metrics proplet.ProcessMetrics + PropletID string + TaskID string + Timestamp time.Time + type TaskPropletRepository interface + Create func(ctx context.Context, taskID, propletID string) error + Delete func(ctx context.Context, taskID string) error + Get func(ctx context.Context, taskID string) (string, error) + func NewTaskPropletRepository(db *Database) TaskPropletRepository + type TaskRepository interface + Create func(ctx context.Context, t task.Task) (task.Task, error) + Delete func(ctx context.Context, id string) error + Get func(ctx context.Context, id string) (task.Task, error) + List func(ctx context.Context, offset, limit uint64) ([]task.Task, uint64, error) + ListByJobID func(ctx context.Context, jobID string) ([]task.Task, error) + ListByWorkflowID func(ctx context.Context, workflowID string) ([]task.Task, error) + Update func(ctx context.Context, t task.Task) error + func NewTaskRepository(db *Database) TaskRepository