Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
K
k3s
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Jacklull
k3s
Commits
3918eee5
Commit
3918eee5
authored
Apr 06, 2016
by
Harry Zhang
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Refactor InspectImage method
parent
7ecb44fe
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
20 additions
and
19 deletions
+20
-19
docker.go
pkg/kubelet/dockertools/docker.go
+1
-1
docker_test.go
pkg/kubelet/dockertools/docker_test.go
+1
-1
fake_docker_client.go
pkg/kubelet/dockertools/fake_docker_client.go
+2
-2
instrumented_docker.go
pkg/kubelet/dockertools/instrumented_docker.go
+1
-1
kube_docker_client.go
pkg/kubelet/dockertools/kube_docker_client.go
+2
-2
manager_test.go
pkg/kubelet/dockertools/manager_test.go
+13
-12
No files found.
pkg/kubelet/dockertools/docker.go
View file @
3918eee5
...
@@ -64,7 +64,7 @@ type DockerInterface interface {
...
@@ -64,7 +64,7 @@ type DockerInterface interface {
StartContainer
(
id
string
)
error
StartContainer
(
id
string
)
error
StopContainer
(
id
string
,
timeout
int
)
error
StopContainer
(
id
string
,
timeout
int
)
error
RemoveContainer
(
id
string
,
opts
dockertypes
.
ContainerRemoveOptions
)
error
RemoveContainer
(
id
string
,
opts
dockertypes
.
ContainerRemoveOptions
)
error
InspectImage
(
image
string
)
(
*
docker
.
Image
,
error
)
InspectImage
(
image
string
)
(
*
docker
types
.
ImageInspect
,
error
)
ListImages
(
opts
dockertypes
.
ImageListOptions
)
([]
dockertypes
.
Image
,
error
)
ListImages
(
opts
dockertypes
.
ImageListOptions
)
([]
dockertypes
.
Image
,
error
)
PullImage
(
opts
docker
.
PullImageOptions
,
auth
docker
.
AuthConfiguration
)
error
PullImage
(
opts
docker
.
PullImageOptions
,
auth
docker
.
AuthConfiguration
)
error
RemoveImage
(
image
string
)
error
RemoveImage
(
image
string
)
error
...
...
pkg/kubelet/dockertools/docker_test.go
View file @
3918eee5
...
@@ -471,7 +471,7 @@ type imageTrackingDockerClient struct {
...
@@ -471,7 +471,7 @@ type imageTrackingDockerClient struct {
imageName
string
imageName
string
}
}
func
(
f
*
imageTrackingDockerClient
)
InspectImage
(
name
string
)
(
image
*
docker
.
Image
,
err
error
)
{
func
(
f
*
imageTrackingDockerClient
)
InspectImage
(
name
string
)
(
image
*
docker
types
.
ImageInspect
,
err
error
)
{
image
,
err
=
f
.
FakeDockerClient
.
InspectImage
(
name
)
image
,
err
=
f
.
FakeDockerClient
.
InspectImage
(
name
)
f
.
imageName
=
name
f
.
imageName
=
name
return
return
...
...
pkg/kubelet/dockertools/fake_docker_client.go
View file @
3918eee5
...
@@ -40,7 +40,7 @@ type FakeDockerClient struct {
...
@@ -40,7 +40,7 @@ type FakeDockerClient struct {
RunningContainerList
[]
dockertypes
.
Container
RunningContainerList
[]
dockertypes
.
Container
ExitedContainerList
[]
dockertypes
.
Container
ExitedContainerList
[]
dockertypes
.
Container
ContainerMap
map
[
string
]
*
dockertypes
.
ContainerJSON
ContainerMap
map
[
string
]
*
dockertypes
.
ContainerJSON
Image
*
docker
.
Image
Image
*
docker
types
.
ImageInspect
Images
[]
dockertypes
.
Image
Images
[]
dockertypes
.
Image
Errors
map
[
string
]
error
Errors
map
[
string
]
error
called
[]
string
called
[]
string
...
@@ -282,7 +282,7 @@ func (f *FakeDockerClient) InspectContainer(id string) (*dockertypes.ContainerJS
...
@@ -282,7 +282,7 @@ func (f *FakeDockerClient) InspectContainer(id string) (*dockertypes.ContainerJS
// InspectImage is a test-spy implementation of DockerInterface.InspectImage.
// InspectImage is a test-spy implementation of DockerInterface.InspectImage.
// It adds an entry "inspect" to the internal method call record.
// 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
)
(
*
docker
types
.
ImageInspect
,
error
)
{
f
.
Lock
()
f
.
Lock
()
defer
f
.
Unlock
()
defer
f
.
Unlock
()
f
.
called
=
append
(
f
.
called
,
"inspect_image"
)
f
.
called
=
append
(
f
.
called
,
"inspect_image"
)
...
...
pkg/kubelet/dockertools/instrumented_docker.go
View file @
3918eee5
...
@@ -103,7 +103,7 @@ func (in instrumentedDockerInterface) RemoveContainer(id string, opts dockertype
...
@@ -103,7 +103,7 @@ func (in instrumentedDockerInterface) RemoveContainer(id string, opts dockertype
return
err
return
err
}
}
func
(
in
instrumentedDockerInterface
)
InspectImage
(
image
string
)
(
*
docker
.
Image
,
error
)
{
func
(
in
instrumentedDockerInterface
)
InspectImage
(
image
string
)
(
*
docker
types
.
ImageInspect
,
error
)
{
const
operation
=
"inspect_image"
const
operation
=
"inspect_image"
defer
recordOperation
(
operation
,
time
.
Now
())
defer
recordOperation
(
operation
,
time
.
Now
())
...
...
pkg/kubelet/dockertools/kube_docker_client.go
View file @
3918eee5
...
@@ -141,7 +141,7 @@ func (d *kubeDockerClient) RemoveContainer(id string, opts dockertypes.Container
...
@@ -141,7 +141,7 @@ func (d *kubeDockerClient) RemoveContainer(id string, opts dockertypes.Container
return
d
.
client
.
ContainerRemove
(
getDefaultContext
(),
opts
)
return
d
.
client
.
ContainerRemove
(
getDefaultContext
(),
opts
)
}
}
func
(
d
*
kubeDockerClient
)
InspectImage
(
image
string
)
(
*
docker
.
Image
,
error
)
{
func
(
d
*
kubeDockerClient
)
InspectImage
(
image
string
)
(
*
docker
types
.
ImageInspect
,
error
)
{
resp
,
_
,
err
:=
d
.
client
.
ImageInspectWithRaw
(
getDefaultContext
(),
image
,
true
)
resp
,
_
,
err
:=
d
.
client
.
ImageInspectWithRaw
(
getDefaultContext
(),
image
,
true
)
if
err
!=
nil
{
if
err
!=
nil
{
// TODO(random-liu): Use IsErrImageNotFound instead of ErrNoSuchImage
// TODO(random-liu): Use IsErrImageNotFound instead of ErrNoSuchImage
...
@@ -150,7 +150,7 @@ func (d *kubeDockerClient) InspectImage(image string) (*docker.Image, error) {
...
@@ -150,7 +150,7 @@ func (d *kubeDockerClient) InspectImage(image string) (*docker.Image, error) {
}
}
return
nil
,
err
return
nil
,
err
}
}
imageInfo
:=
&
docker
.
Image
{}
imageInfo
:=
&
docker
types
.
ImageInspect
{}
if
err
:=
convertType
(
&
resp
,
imageInfo
);
err
!=
nil
{
if
err
:=
convertType
(
&
resp
,
imageInfo
);
err
!=
nil
{
return
nil
,
err
return
nil
,
err
}
}
...
...
pkg/kubelet/dockertools/manager_test.go
View file @
3918eee5
...
@@ -30,6 +30,7 @@ import (
...
@@ -30,6 +30,7 @@ import (
"time"
"time"
dockertypes
"github.com/docker/engine-api/types"
dockertypes
"github.com/docker/engine-api/types"
containertypes
"github.com/docker/engine-api/types/container"
dockercontainer
"github.com/docker/engine-api/types/container"
dockercontainer
"github.com/docker/engine-api/types/container"
dockerstrslice
"github.com/docker/engine-api/types/strslice"
dockerstrslice
"github.com/docker/engine-api/types/strslice"
docker
"github.com/fsouza/go-dockerclient"
docker
"github.com/fsouza/go-dockerclient"
...
@@ -1415,7 +1416,7 @@ func TestVerifyNonRoot(t *testing.T) {
...
@@ -1415,7 +1416,7 @@ func TestVerifyNonRoot(t *testing.T) {
tests
:=
map
[
string
]
struct
{
tests
:=
map
[
string
]
struct
{
container
*
api
.
Container
container
*
api
.
Container
inspectImage
*
docker
.
Image
inspectImage
*
docker
types
.
ImageInspect
expectedError
string
expectedError
string
}{
}{
// success cases
// success cases
...
@@ -1428,16 +1429,16 @@ func TestVerifyNonRoot(t *testing.T) {
...
@@ -1428,16 +1429,16 @@ func TestVerifyNonRoot(t *testing.T) {
},
},
"numeric non-root image user"
:
{
"numeric non-root image user"
:
{
container
:
&
api
.
Container
{},
container
:
&
api
.
Container
{},
inspectImage
:
&
docker
.
Image
{
inspectImage
:
&
docker
types
.
ImageInspect
{
Config
:
&
docker
.
Config
{
Config
:
&
containertypes
.
Config
{
User
:
"1"
,
User
:
"1"
,
},
},
},
},
},
},
"numeric non-root image user with gid"
:
{
"numeric non-root image user with gid"
:
{
container
:
&
api
.
Container
{},
container
:
&
api
.
Container
{},
inspectImage
:
&
docker
.
Image
{
inspectImage
:
&
docker
types
.
ImageInspect
{
Config
:
&
docker
.
Config
{
Config
:
&
containertypes
.
Config
{
User
:
"1:2"
,
User
:
"1:2"
,
},
},
},
},
...
@@ -1454,8 +1455,8 @@ func TestVerifyNonRoot(t *testing.T) {
...
@@ -1454,8 +1455,8 @@ func TestVerifyNonRoot(t *testing.T) {
},
},
"non-numeric image user"
:
{
"non-numeric image user"
:
{
container
:
&
api
.
Container
{},
container
:
&
api
.
Container
{},
inspectImage
:
&
docker
.
Image
{
inspectImage
:
&
docker
types
.
ImageInspect
{
Config
:
&
docker
.
Config
{
Config
:
&
containertypes
.
Config
{
User
:
"foo"
,
User
:
"foo"
,
},
},
},
},
...
@@ -1463,8 +1464,8 @@ func TestVerifyNonRoot(t *testing.T) {
...
@@ -1463,8 +1464,8 @@ func TestVerifyNonRoot(t *testing.T) {
},
},
"numeric root image user"
:
{
"numeric root image user"
:
{
container
:
&
api
.
Container
{},
container
:
&
api
.
Container
{},
inspectImage
:
&
docker
.
Image
{
inspectImage
:
&
docker
types
.
ImageInspect
{
Config
:
&
docker
.
Config
{
Config
:
&
containertypes
.
Config
{
User
:
"0"
,
User
:
"0"
,
},
},
},
},
...
@@ -1472,8 +1473,8 @@ func TestVerifyNonRoot(t *testing.T) {
...
@@ -1472,8 +1473,8 @@ func TestVerifyNonRoot(t *testing.T) {
},
},
"numeric root image user with gid"
:
{
"numeric root image user with gid"
:
{
container
:
&
api
.
Container
{},
container
:
&
api
.
Container
{},
inspectImage
:
&
docker
.
Image
{
inspectImage
:
&
docker
types
.
ImageInspect
{
Config
:
&
docker
.
Config
{
Config
:
&
containertypes
.
Config
{
User
:
"0:1"
,
User
:
"0:1"
,
},
},
},
},
...
@@ -1485,7 +1486,7 @@ func TestVerifyNonRoot(t *testing.T) {
...
@@ -1485,7 +1486,7 @@ func TestVerifyNonRoot(t *testing.T) {
},
},
"nil config in image inspect"
:
{
"nil config in image inspect"
:
{
container
:
&
api
.
Container
{},
container
:
&
api
.
Container
{},
inspectImage
:
&
docker
.
Image
{},
inspectImage
:
&
docker
types
.
ImageInspect
{},
expectedError
:
"unable to inspect image"
,
expectedError
:
"unable to inspect image"
,
},
},
}
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment