mirror of
https://github.com/moby/moby.git
synced 2022-11-09 12:21:53 -05:00
47ad2f3dd6
Let clients choose object types to compute disk usage of. Signed-off-by: Roman Volosatovs <roman.volosatovs@docker.com> Co-authored-by: Sebastiaan van Stijn <github@gone.nl>
40 lines
1.3 KiB
Go
40 lines
1.3 KiB
Go
package system // import "github.com/docker/docker/api/server/router/system"
|
|
|
|
import (
|
|
"context"
|
|
"time"
|
|
|
|
"github.com/docker/docker/api/types"
|
|
"github.com/docker/docker/api/types/events"
|
|
"github.com/docker/docker/api/types/filters"
|
|
"github.com/docker/docker/api/types/swarm"
|
|
)
|
|
|
|
// DiskUsageOptions holds parameters for system disk usage query.
|
|
type DiskUsageOptions struct {
|
|
// Containers controls whether container disk usage should be computed.
|
|
Containers bool
|
|
|
|
// Images controls whether image disk usage should be computed.
|
|
Images bool
|
|
|
|
// Volumes controls whether volume disk usage should be computed.
|
|
Volumes bool
|
|
}
|
|
|
|
// Backend is the methods that need to be implemented to provide
|
|
// system specific functionality.
|
|
type Backend interface {
|
|
SystemInfo() *types.Info
|
|
SystemVersion() types.Version
|
|
SystemDiskUsage(ctx context.Context, opts DiskUsageOptions) (*types.DiskUsage, error)
|
|
SubscribeToEvents(since, until time.Time, ef filters.Args) ([]events.Message, chan interface{})
|
|
UnsubscribeFromEvents(chan interface{})
|
|
AuthenticateToRegistry(ctx context.Context, authConfig *types.AuthConfig) (string, string, error)
|
|
}
|
|
|
|
// ClusterBackend is all the methods that need to be implemented
|
|
// to provide cluster system specific functionality.
|
|
type ClusterBackend interface {
|
|
Info() swarm.Info
|
|
}
|