123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390 |
- package types // import "github.com/docker/docker/api/types"
- import (
- "bufio"
- "io"
- "net"
- "github.com/docker/docker/api/types/container"
- "github.com/docker/docker/api/types/filters"
- "github.com/docker/go-units"
- )
- // CheckpointCreateOptions holds parameters to create a checkpoint from a container
- type CheckpointCreateOptions struct {
- CheckpointID string
- CheckpointDir string
- Exit bool
- }
- // CheckpointListOptions holds parameters to list checkpoints for a container
- type CheckpointListOptions struct {
- CheckpointDir string
- }
- // CheckpointDeleteOptions holds parameters to delete a checkpoint from a container
- type CheckpointDeleteOptions struct {
- CheckpointID string
- CheckpointDir string
- }
- // ContainerAttachOptions holds parameters to attach to a container.
- type ContainerAttachOptions struct {
- Stream bool
- Stdin bool
- Stdout bool
- Stderr bool
- DetachKeys string
- Logs bool
- }
- // ContainerCommitOptions holds parameters to commit changes into a container.
- type ContainerCommitOptions struct {
- Reference string
- Comment string
- Author string
- Changes []string
- Pause bool
- Config *container.Config
- }
- // ContainerExecInspect holds information returned by exec inspect.
- type ContainerExecInspect struct {
- ExecID string
- ContainerID string
- Running bool
- ExitCode int
- Pid int
- }
- // ContainerListOptions holds parameters to list containers with.
- type ContainerListOptions struct {
- Quiet bool
- Size bool
- All bool
- Latest bool
- Since string
- Before string
- Limit int
- Filters filters.Args
- }
- // ContainerLogsOptions holds parameters to filter logs with.
- type ContainerLogsOptions struct {
- ShowStdout bool
- ShowStderr bool
- Since string
- Until string
- Timestamps bool
- Follow bool
- Tail string
- Details bool
- }
- // ContainerRemoveOptions holds parameters to remove containers.
- type ContainerRemoveOptions struct {
- RemoveVolumes bool
- RemoveLinks bool
- Force bool
- }
- // ContainerStartOptions holds parameters to start containers.
- type ContainerStartOptions struct {
- CheckpointID string
- CheckpointDir string
- }
- // CopyToContainerOptions holds information
- // about files to copy into a container
- type CopyToContainerOptions struct {
- AllowOverwriteDirWithFile bool
- CopyUIDGID bool
- }
- // EventsOptions holds parameters to filter events with.
- type EventsOptions struct {
- Since string
- Until string
- Filters filters.Args
- }
- // NetworkListOptions holds parameters to filter the list of networks with.
- type NetworkListOptions struct {
- Filters filters.Args
- }
- // HijackedResponse holds connection information for a hijacked request.
- type HijackedResponse struct {
- Conn net.Conn
- Reader *bufio.Reader
- }
- // Close closes the hijacked connection and reader.
- func (h *HijackedResponse) Close() {
- h.Conn.Close()
- }
- // CloseWriter is an interface that implements structs
- // that close input streams to prevent from writing.
- type CloseWriter interface {
- CloseWrite() error
- }
- // CloseWrite closes a readWriter for writing.
- func (h *HijackedResponse) CloseWrite() error {
- if conn, ok := h.Conn.(CloseWriter); ok {
- return conn.CloseWrite()
- }
- return nil
- }
- // ImageBuildOptions holds the information
- // necessary to build images.
- type ImageBuildOptions struct {
- Tags []string
- SuppressOutput bool
- RemoteContext string
- NoCache bool
- Remove bool
- ForceRemove bool
- PullParent bool
- Isolation container.Isolation
- CPUSetCPUs string
- CPUSetMems string
- CPUShares int64
- CPUQuota int64
- CPUPeriod int64
- Memory int64
- MemorySwap int64
- CgroupParent string
- NetworkMode string
- ShmSize int64
- Dockerfile string
- Ulimits []*units.Ulimit
- // BuildArgs needs to be a *string instead of just a string so that
- // we can tell the difference between "" (empty string) and no value
- // at all (nil). See the parsing of buildArgs in
- // api/server/router/build/build_routes.go for even more info.
- BuildArgs map[string]*string
- AuthConfigs map[string]AuthConfig
- Context io.Reader
- Labels map[string]string
- // squash the resulting image's layers to the parent
- // preserves the original image and creates a new one from the parent with all
- // the changes applied to a single layer
- Squash bool
- // CacheFrom specifies images that are used for matching cache. Images
- // specified here do not need to have a valid parent chain to match cache.
- CacheFrom []string
- SecurityOpt []string
- ExtraHosts []string // List of extra hosts
- Target string
- SessionID string
- Platform string
- }
- // ImageBuildResponse holds information
- // returned by a server after building
- // an image.
- type ImageBuildResponse struct {
- Body io.ReadCloser
- OSType string
- }
- // ImageCreateOptions holds information to create images.
- type ImageCreateOptions struct {
- RegistryAuth string // RegistryAuth is the base64 encoded credentials for the registry.
- Platform string // Platform is the target platform of the image if it needs to be pulled from the registry.
- }
- // ImageImportSource holds source information for ImageImport
- type ImageImportSource struct {
- Source io.Reader // Source is the data to send to the server to create this image from. You must set SourceName to "-" to leverage this.
- SourceName string // SourceName is the name of the image to pull. Set to "-" to leverage the Source attribute.
- }
- // ImageImportOptions holds information to import images from the client host.
- type ImageImportOptions struct {
- Tag string // Tag is the name to tag this image with. This attribute is deprecated.
- Message string // Message is the message to tag the image with
- Changes []string // Changes are the raw changes to apply to this image
- Platform string // Platform is the target platform of the image
- }
- // ImageListOptions holds parameters to filter the list of images with.
- type ImageListOptions struct {
- All bool
- Filters filters.Args
- }
- // ImageLoadResponse returns information to the client about a load process.
- type ImageLoadResponse struct {
- // Body must be closed to avoid a resource leak
- Body io.ReadCloser
- JSON bool
- }
- // ImagePullOptions holds information to pull images.
- type ImagePullOptions struct {
- All bool
- RegistryAuth string // RegistryAuth is the base64 encoded credentials for the registry
- PrivilegeFunc RequestPrivilegeFunc
- Platform string
- }
- // RequestPrivilegeFunc is a function interface that
- // clients can supply to retry operations after
- // getting an authorization error.
- // This function returns the registry authentication
- // header value in base 64 format, or an error
- // if the privilege request fails.
- type RequestPrivilegeFunc func() (string, error)
- //ImagePushOptions holds information to push images.
- type ImagePushOptions ImagePullOptions
- // ImageRemoveOptions holds parameters to remove images.
- type ImageRemoveOptions struct {
- Force bool
- PruneChildren bool
- }
- // ImageSearchOptions holds parameters to search images with.
- type ImageSearchOptions struct {
- RegistryAuth string
- PrivilegeFunc RequestPrivilegeFunc
- Filters filters.Args
- Limit int
- }
- // ResizeOptions holds parameters to resize a tty.
- // It can be used to resize container ttys and
- // exec process ttys too.
- type ResizeOptions struct {
- Height uint
- Width uint
- }
- // NodeListOptions holds parameters to list nodes with.
- type NodeListOptions struct {
- Filters filters.Args
- }
- // NodeRemoveOptions holds parameters to remove nodes with.
- type NodeRemoveOptions struct {
- Force bool
- }
- // ServiceCreateOptions contains the options to use when creating a service.
- type ServiceCreateOptions struct {
- // EncodedRegistryAuth is the encoded registry authorization credentials to
- // use when updating the service.
- //
- // This field follows the format of the X-Registry-Auth header.
- EncodedRegistryAuth string
- // QueryRegistry indicates whether the service update requires
- // contacting a registry. A registry may be contacted to retrieve
- // the image digest and manifest, which in turn can be used to update
- // platform or other information about the service.
- QueryRegistry bool
- }
- // ServiceCreateResponse contains the information returned to a client
- // on the creation of a new service.
- type ServiceCreateResponse struct {
- // ID is the ID of the created service.
- ID string
- // Warnings is a set of non-fatal warning messages to pass on to the user.
- Warnings []string `json:",omitempty"`
- }
- // Values for RegistryAuthFrom in ServiceUpdateOptions
- const (
- RegistryAuthFromSpec = "spec"
- RegistryAuthFromPreviousSpec = "previous-spec"
- )
- // ServiceUpdateOptions contains the options to be used for updating services.
- type ServiceUpdateOptions struct {
- // EncodedRegistryAuth is the encoded registry authorization credentials to
- // use when updating the service.
- //
- // This field follows the format of the X-Registry-Auth header.
- EncodedRegistryAuth string
- // TODO(stevvooe): Consider moving the version parameter of ServiceUpdate
- // into this field. While it does open API users up to racy writes, most
- // users may not need that level of consistency in practice.
- // RegistryAuthFrom specifies where to find the registry authorization
- // credentials if they are not given in EncodedRegistryAuth. Valid
- // values are "spec" and "previous-spec".
- RegistryAuthFrom string
- // Rollback indicates whether a server-side rollback should be
- // performed. When this is set, the provided spec will be ignored.
- // The valid values are "previous" and "none". An empty value is the
- // same as "none".
- Rollback string
- // QueryRegistry indicates whether the service update requires
- // contacting a registry. A registry may be contacted to retrieve
- // the image digest and manifest, which in turn can be used to update
- // platform or other information about the service.
- QueryRegistry bool
- }
- // ServiceListOptions holds parameters to list services with.
- type ServiceListOptions struct {
- Filters filters.Args
- }
- // ServiceInspectOptions holds parameters related to the "service inspect"
- // operation.
- type ServiceInspectOptions struct {
- InsertDefaults bool
- }
- // TaskListOptions holds parameters to list tasks with.
- type TaskListOptions struct {
- Filters filters.Args
- }
- // PluginRemoveOptions holds parameters to remove plugins.
- type PluginRemoveOptions struct {
- Force bool
- }
- // PluginEnableOptions holds parameters to enable plugins.
- type PluginEnableOptions struct {
- Timeout int
- }
- // PluginDisableOptions holds parameters to disable plugins.
- type PluginDisableOptions struct {
- Force bool
- }
- // PluginInstallOptions holds parameters to install a plugin.
- type PluginInstallOptions struct {
- Disabled bool
- AcceptAllPermissions bool
- RegistryAuth string // RegistryAuth is the base64 encoded credentials for the registry
- RemoteRef string // RemoteRef is the plugin name on the registry
- PrivilegeFunc RequestPrivilegeFunc
- AcceptPermissionsFunc func(PluginPrivileges) (bool, error)
- Args []string
- }
- // SwarmUnlockKeyResponse contains the response for Engine API:
- // GET /swarm/unlockkey
- type SwarmUnlockKeyResponse struct {
- // UnlockKey is the unlock key in ASCII-armored format.
- UnlockKey string
- }
- // PluginCreateOptions hold all options to plugin create.
- type PluginCreateOptions struct {
- RepoName string
- }
|