Files
storage-appliance/internal/service/interfaces.go

21 lines
495 B
Go

package service
import (
"context"
"github.com/example/storage-appliance/internal/domain"
)
type DiskService interface {
List(ctx context.Context) ([]domain.Disk, error)
Inspect(ctx context.Context, path string) (domain.Disk, error)
}
type ZFSService interface {
ListPools(ctx context.Context) ([]domain.Pool, error)
CreatePool(ctx context.Context, name string, vdevs []string) (string, error)
}
type JobRunner interface {
Enqueue(ctx context.Context, j domain.Job) (string, error)
}