This adds support for the passthrough on build, push, login, and search. Revamp the integration test to cover these cases and make it more robust. Use backticks instead of quoted strings for backslash-heavy string contstands. Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com> Upstream-commit: c44e7a3e632c3ea961cb8c12ba45371f54e6699c Component: engine
45 lines
1.7 KiB
Go
45 lines
1.7 KiB
Go
package image
|
|
|
|
import (
|
|
"io"
|
|
|
|
"github.com/docker/docker/reference"
|
|
"github.com/docker/engine-api/types"
|
|
"github.com/docker/engine-api/types/container"
|
|
"github.com/docker/engine-api/types/registry"
|
|
"golang.org/x/net/context"
|
|
)
|
|
|
|
// Backend is all the methods that need to be implemented
|
|
// to provide image specific functionality.
|
|
type Backend interface {
|
|
containerBackend
|
|
imageBackend
|
|
importExportBackend
|
|
registryBackend
|
|
}
|
|
|
|
type containerBackend interface {
|
|
Commit(name string, config *types.ContainerCommitConfig) (imageID string, err error)
|
|
}
|
|
|
|
type imageBackend interface {
|
|
ImageDelete(imageRef string, force, prune bool) ([]types.ImageDelete, error)
|
|
ImageHistory(imageName string) ([]*types.ImageHistory, error)
|
|
Images(filterArgs string, filter string, all bool) ([]*types.Image, error)
|
|
LookupImage(name string) (*types.ImageInspect, error)
|
|
TagImage(newTag reference.Named, imageName string) error
|
|
}
|
|
|
|
type importExportBackend interface {
|
|
LoadImage(inTar io.ReadCloser, outStream io.Writer, quiet bool) error
|
|
ImportImage(src string, newRef reference.Named, msg string, inConfig io.ReadCloser, outStream io.Writer, config *container.Config) error
|
|
ExportImage(names []string, outStream io.Writer) error
|
|
}
|
|
|
|
type registryBackend interface {
|
|
PullImage(ctx context.Context, ref reference.Named, metaHeaders map[string][]string, authConfig *types.AuthConfig, outStream io.Writer) error
|
|
PushImage(ctx context.Context, ref reference.Named, metaHeaders map[string][]string, authConfig *types.AuthConfig, outStream io.Writer) error
|
|
SearchRegistryForImages(ctx context.Context, term string, authConfig *types.AuthConfig, metaHeaders map[string][]string) (*registry.SearchResults, error)
|
|
}
|