mirror of
https://github.com/moby/moby.git
synced 2026-07-12 18:45:06 +00:00
This wires up the new gc types that buildkit exposes in version 0.17. The previous flag, `KeepBytes`, was renamed to `ReservedBytes` and two new options, `MaxUsed` and `MinFree` were added. `MaxUsed` corresponds to the maximum amount of space that buildkit will use for the build cache and `MinFree` amount of free disk space for the system to prevent the cache from using that space. This allows greater configuration of the cache storage usage when used in situations where docker is not the only service on the system using disk space. Signed-off-by: Jonathan A. Sternberg <jonathan.sternberg@docker.com>
180 lines
5.5 KiB
Go
180 lines
5.5 KiB
Go
package types // import "github.com/docker/docker/api/types"
|
|
|
|
import (
|
|
"time"
|
|
|
|
"github.com/docker/docker/api/types/container"
|
|
"github.com/docker/docker/api/types/filters"
|
|
"github.com/docker/docker/api/types/image"
|
|
"github.com/docker/docker/api/types/swarm"
|
|
"github.com/docker/docker/api/types/volume"
|
|
)
|
|
|
|
const (
|
|
// MediaTypeRawStream is vendor specific MIME-Type set for raw TTY streams
|
|
MediaTypeRawStream = "application/vnd.docker.raw-stream"
|
|
|
|
// MediaTypeMultiplexedStream is vendor specific MIME-Type set for stdin/stdout/stderr multiplexed streams
|
|
MediaTypeMultiplexedStream = "application/vnd.docker.multiplexed-stream"
|
|
)
|
|
|
|
// Ping contains response of Engine API:
|
|
// GET "/_ping"
|
|
type Ping struct {
|
|
APIVersion string
|
|
OSType string
|
|
Experimental bool
|
|
BuilderVersion BuilderVersion
|
|
|
|
// SwarmStatus provides information about the current swarm status of the
|
|
// engine, obtained from the "Swarm" header in the API response.
|
|
//
|
|
// It can be a nil struct if the API version does not provide this header
|
|
// in the ping response, or if an error occurred, in which case the client
|
|
// should use other ways to get the current swarm status, such as the /swarm
|
|
// endpoint.
|
|
SwarmStatus *swarm.Status
|
|
}
|
|
|
|
// ComponentVersion describes the version information for a specific component.
|
|
type ComponentVersion struct {
|
|
Name string
|
|
Version string
|
|
Details map[string]string `json:",omitempty"`
|
|
}
|
|
|
|
// Version contains response of Engine API:
|
|
// GET "/version"
|
|
type Version struct {
|
|
Platform struct{ Name string } `json:",omitempty"`
|
|
Components []ComponentVersion `json:",omitempty"`
|
|
|
|
// The following fields are deprecated, they relate to the Engine component and are kept for backwards compatibility
|
|
|
|
Version string
|
|
APIVersion string `json:"ApiVersion"`
|
|
MinAPIVersion string `json:"MinAPIVersion,omitempty"`
|
|
GitCommit string
|
|
GoVersion string
|
|
Os string
|
|
Arch string
|
|
KernelVersion string `json:",omitempty"`
|
|
Experimental bool `json:",omitempty"`
|
|
BuildTime string `json:",omitempty"`
|
|
}
|
|
|
|
// DiskUsageObject represents an object type used for disk usage query filtering.
|
|
type DiskUsageObject string
|
|
|
|
const (
|
|
// ContainerObject represents a container DiskUsageObject.
|
|
ContainerObject DiskUsageObject = "container"
|
|
// ImageObject represents an image DiskUsageObject.
|
|
ImageObject DiskUsageObject = "image"
|
|
// VolumeObject represents a volume DiskUsageObject.
|
|
VolumeObject DiskUsageObject = "volume"
|
|
// BuildCacheObject represents a build-cache DiskUsageObject.
|
|
BuildCacheObject DiskUsageObject = "build-cache"
|
|
)
|
|
|
|
// DiskUsageOptions holds parameters for system disk usage query.
|
|
type DiskUsageOptions struct {
|
|
// Types specifies what object types to include in the response. If empty,
|
|
// all object types are returned.
|
|
Types []DiskUsageObject
|
|
}
|
|
|
|
// DiskUsage contains response of Engine API:
|
|
// GET "/system/df"
|
|
type DiskUsage struct {
|
|
LayersSize int64
|
|
Images []*image.Summary
|
|
Containers []*container.Summary
|
|
Volumes []*volume.Volume
|
|
BuildCache []*BuildCache
|
|
BuilderSize int64 `json:",omitempty"` // Deprecated: deprecated in API 1.38, and no longer used since API 1.40.
|
|
}
|
|
|
|
// BuildCachePruneReport contains the response for Engine API:
|
|
// POST "/build/prune"
|
|
type BuildCachePruneReport struct {
|
|
CachesDeleted []string
|
|
SpaceReclaimed uint64
|
|
}
|
|
|
|
// SecretCreateResponse contains the information returned to a client
|
|
// on the creation of a new secret.
|
|
type SecretCreateResponse struct {
|
|
// ID is the id of the created secret.
|
|
ID string
|
|
}
|
|
|
|
// SecretListOptions holds parameters to list secrets
|
|
type SecretListOptions struct {
|
|
Filters filters.Args
|
|
}
|
|
|
|
// ConfigCreateResponse contains the information returned to a client
|
|
// on the creation of a new config.
|
|
type ConfigCreateResponse struct {
|
|
// ID is the id of the created config.
|
|
ID string
|
|
}
|
|
|
|
// ConfigListOptions holds parameters to list configs
|
|
type ConfigListOptions struct {
|
|
Filters filters.Args
|
|
}
|
|
|
|
// PushResult contains the tag, manifest digest, and manifest size from the
|
|
// push. It's used to signal this information to the trust code in the client
|
|
// so it can sign the manifest if necessary.
|
|
type PushResult struct {
|
|
Tag string
|
|
Digest string
|
|
Size int
|
|
}
|
|
|
|
// BuildResult contains the image id of a successful build
|
|
type BuildResult struct {
|
|
ID string
|
|
}
|
|
|
|
// BuildCache contains information about a build cache record.
|
|
type BuildCache struct {
|
|
// ID is the unique ID of the build cache record.
|
|
ID string
|
|
// Parent is the ID of the parent build cache record.
|
|
//
|
|
// Deprecated: deprecated in API v1.42 and up, as it was deprecated in BuildKit; use Parents instead.
|
|
Parent string `json:"Parent,omitempty"`
|
|
// Parents is the list of parent build cache record IDs.
|
|
Parents []string `json:" Parents,omitempty"`
|
|
// Type is the cache record type.
|
|
Type string
|
|
// Description is a description of the build-step that produced the build cache.
|
|
Description string
|
|
// InUse indicates if the build cache is in use.
|
|
InUse bool
|
|
// Shared indicates if the build cache is shared.
|
|
Shared bool
|
|
// Size is the amount of disk space used by the build cache (in bytes).
|
|
Size int64
|
|
// CreatedAt is the date and time at which the build cache was created.
|
|
CreatedAt time.Time
|
|
// LastUsedAt is the date and time at which the build cache was last used.
|
|
LastUsedAt *time.Time
|
|
UsageCount int
|
|
}
|
|
|
|
// BuildCachePruneOptions hold parameters to prune the build cache
|
|
type BuildCachePruneOptions struct {
|
|
All bool
|
|
ReservedSpace int64
|
|
MaxUsedSpace int64
|
|
MinFreeSpace int64
|
|
Filters filters.Args
|
|
|
|
KeepStorage int64 // Deprecated: deprecated in API 1.48.
|
|
}
|