diff --git a/pkg/kubelet/dockertools/docker.go b/pkg/kubelet/dockertools/docker.go index 825edb0f55d..aaccdb8f6d5 100644 --- a/pkg/kubelet/dockertools/docker.go +++ b/pkg/kubelet/dockertools/docker.go @@ -64,7 +64,7 @@ type DockerInterface interface { StartContainer(id string) error StopContainer(id string, timeout int) error RemoveContainer(id string, opts dockertypes.ContainerRemoveOptions) error - InspectImage(image string) (*docker.Image, error) + InspectImage(image string) (*dockertypes.ImageInspect, error) ListImages(opts dockertypes.ImageListOptions) ([]dockertypes.Image, error) PullImage(opts docker.PullImageOptions, auth docker.AuthConfiguration) error RemoveImage(image string) error diff --git a/pkg/kubelet/dockertools/docker_test.go b/pkg/kubelet/dockertools/docker_test.go index 6c301073a6c..991ecd07b36 100644 --- a/pkg/kubelet/dockertools/docker_test.go +++ b/pkg/kubelet/dockertools/docker_test.go @@ -471,7 +471,7 @@ type imageTrackingDockerClient struct { imageName string } -func (f *imageTrackingDockerClient) InspectImage(name string) (image *docker.Image, err error) { +func (f *imageTrackingDockerClient) InspectImage(name string) (image *dockertypes.ImageInspect, err error) { image, err = f.FakeDockerClient.InspectImage(name) f.imageName = name return diff --git a/pkg/kubelet/dockertools/fake_docker_client.go b/pkg/kubelet/dockertools/fake_docker_client.go index 1350e1271b3..f04dbff271e 100644 --- a/pkg/kubelet/dockertools/fake_docker_client.go +++ b/pkg/kubelet/dockertools/fake_docker_client.go @@ -40,7 +40,7 @@ type FakeDockerClient struct { RunningContainerList []dockertypes.Container ExitedContainerList []dockertypes.Container ContainerMap map[string]*dockertypes.ContainerJSON - Image *docker.Image + Image *dockertypes.ImageInspect Images []dockertypes.Image Errors map[string]error called []string @@ -282,7 +282,7 @@ func (f *FakeDockerClient) InspectContainer(id string) (*dockertypes.ContainerJS // InspectImage is a test-spy implementation of DockerInterface.InspectImage. // It adds an entry "inspect" to the internal method call record. -func (f *FakeDockerClient) InspectImage(name string) (*docker.Image, error) { +func (f *FakeDockerClient) InspectImage(name string) (*dockertypes.ImageInspect, error) { f.Lock() defer f.Unlock() f.called = append(f.called, "inspect_image") diff --git a/pkg/kubelet/dockertools/instrumented_docker.go b/pkg/kubelet/dockertools/instrumented_docker.go index 1d033045b33..01dd411d146 100644 --- a/pkg/kubelet/dockertools/instrumented_docker.go +++ b/pkg/kubelet/dockertools/instrumented_docker.go @@ -103,7 +103,7 @@ func (in instrumentedDockerInterface) RemoveContainer(id string, opts dockertype return err } -func (in instrumentedDockerInterface) InspectImage(image string) (*docker.Image, error) { +func (in instrumentedDockerInterface) InspectImage(image string) (*dockertypes.ImageInspect, error) { const operation = "inspect_image" defer recordOperation(operation, time.Now()) diff --git a/pkg/kubelet/dockertools/kube_docker_client.go b/pkg/kubelet/dockertools/kube_docker_client.go index 5b0bf4a0bc6..20c7fb7beee 100644 --- a/pkg/kubelet/dockertools/kube_docker_client.go +++ b/pkg/kubelet/dockertools/kube_docker_client.go @@ -141,7 +141,7 @@ func (d *kubeDockerClient) RemoveContainer(id string, opts dockertypes.Container return d.client.ContainerRemove(getDefaultContext(), opts) } -func (d *kubeDockerClient) InspectImage(image string) (*docker.Image, error) { +func (d *kubeDockerClient) InspectImage(image string) (*dockertypes.ImageInspect, error) { resp, _, err := d.client.ImageInspectWithRaw(getDefaultContext(), image, true) if err != nil { // TODO(random-liu): Use IsErrImageNotFound instead of ErrNoSuchImage @@ -150,7 +150,7 @@ func (d *kubeDockerClient) InspectImage(image string) (*docker.Image, error) { } return nil, err } - imageInfo := &docker.Image{} + imageInfo := &dockertypes.ImageInspect{} if err := convertType(&resp, imageInfo); err != nil { return nil, err } diff --git a/pkg/kubelet/dockertools/manager_test.go b/pkg/kubelet/dockertools/manager_test.go index 5737ad5b119..df8afc856ac 100644 --- a/pkg/kubelet/dockertools/manager_test.go +++ b/pkg/kubelet/dockertools/manager_test.go @@ -30,6 +30,7 @@ import ( "time" dockertypes "github.com/docker/engine-api/types" + containertypes "github.com/docker/engine-api/types/container" dockercontainer "github.com/docker/engine-api/types/container" dockerstrslice "github.com/docker/engine-api/types/strslice" docker "github.com/fsouza/go-dockerclient" @@ -1415,7 +1416,7 @@ func TestVerifyNonRoot(t *testing.T) { tests := map[string]struct { container *api.Container - inspectImage *docker.Image + inspectImage *dockertypes.ImageInspect expectedError string }{ // success cases @@ -1428,16 +1429,16 @@ func TestVerifyNonRoot(t *testing.T) { }, "numeric non-root image user": { container: &api.Container{}, - inspectImage: &docker.Image{ - Config: &docker.Config{ + inspectImage: &dockertypes.ImageInspect{ + Config: &containertypes.Config{ User: "1", }, }, }, "numeric non-root image user with gid": { container: &api.Container{}, - inspectImage: &docker.Image{ - Config: &docker.Config{ + inspectImage: &dockertypes.ImageInspect{ + Config: &containertypes.Config{ User: "1:2", }, }, @@ -1454,8 +1455,8 @@ func TestVerifyNonRoot(t *testing.T) { }, "non-numeric image user": { container: &api.Container{}, - inspectImage: &docker.Image{ - Config: &docker.Config{ + inspectImage: &dockertypes.ImageInspect{ + Config: &containertypes.Config{ User: "foo", }, }, @@ -1463,8 +1464,8 @@ func TestVerifyNonRoot(t *testing.T) { }, "numeric root image user": { container: &api.Container{}, - inspectImage: &docker.Image{ - Config: &docker.Config{ + inspectImage: &dockertypes.ImageInspect{ + Config: &containertypes.Config{ User: "0", }, }, @@ -1472,8 +1473,8 @@ func TestVerifyNonRoot(t *testing.T) { }, "numeric root image user with gid": { container: &api.Container{}, - inspectImage: &docker.Image{ - Config: &docker.Config{ + inspectImage: &dockertypes.ImageInspect{ + Config: &containertypes.Config{ User: "0:1", }, }, @@ -1485,7 +1486,7 @@ func TestVerifyNonRoot(t *testing.T) { }, "nil config in image inspect": { container: &api.Container{}, - inspectImage: &docker.Image{}, + inspectImage: &dockertypes.ImageInspect{}, expectedError: "unable to inspect image", }, }