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
2f6e5e2e
Commit
2f6e5e2e
authored
May 27, 2015
by
Chao Xu
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Update ContainerState.Termination to ContainerState.Terminated in…
Update ContainerState.Termination to ContainerState.Terminated in pkg/api/types.go and pkg/api/v1/types.go
parent
677d0fdf
Hide whitespace changes
Inline
Side-by-side
Showing
20 changed files
with
217 additions
and
169 deletions
+217
-169
deep_copy_generated.go
pkg/api/deep_copy_generated.go
+4
-4
types.go
pkg/api/types.go
+3
-3
conversion_generated.go
pkg/api/v1/conversion_generated.go
+8
-8
deep_copy_generated.go
pkg/api/v1/deep_copy_generated.go
+4
-4
types.go
pkg/api/v1/types.go
+3
-3
conversion.go
pkg/api/v1beta1/conversion.go
+24
-0
conversion.go
pkg/api/v1beta2/conversion.go
+24
-0
conversion.go
pkg/api/v1beta3/conversion.go
+102
-0
conversion_generated.go
pkg/api/v1beta3/conversion_generated.go
+0
-102
describe.go
pkg/kubectl/describe.go
+10
-10
describe_test.go
pkg/kubectl/describe_test.go
+1
-1
resource_printer.go
pkg/kubectl/resource_printer.go
+3
-3
resource_printer_test.go
pkg/kubectl/resource_printer_test.go
+2
-2
helpers.go
pkg/kubelet/container/helpers.go
+2
-2
manager.go
pkg/kubelet/dockertools/manager.go
+7
-7
manager_test.go
pkg/kubelet/dockertools/manager_test.go
+2
-2
kubelet.go
pkg/kubelet/kubelet.go
+4
-4
kubelet_test.go
pkg/kubelet/kubelet_test.go
+5
-5
pod_info.go
pkg/kubelet/rkt/pod_info.go
+1
-1
util.go
test/e2e/util.go
+8
-8
No files found.
pkg/api/deep_copy_generated.go
View file @
2f6e5e2e
...
@@ -305,13 +305,13 @@ func deepCopy_api_ContainerState(in ContainerState, out *ContainerState, c *conv
...
@@ -305,13 +305,13 @@ func deepCopy_api_ContainerState(in ContainerState, out *ContainerState, c *conv
}
else
{
}
else
{
out
.
Running
=
nil
out
.
Running
=
nil
}
}
if
in
.
Terminat
ion
!=
nil
{
if
in
.
Terminat
ed
!=
nil
{
out
.
Terminat
ion
=
new
(
ContainerStateTerminated
)
out
.
Terminat
ed
=
new
(
ContainerStateTerminated
)
if
err
:=
deepCopy_api_ContainerStateTerminated
(
*
in
.
Terminat
ion
,
out
.
Termination
,
c
);
err
!=
nil
{
if
err
:=
deepCopy_api_ContainerStateTerminated
(
*
in
.
Terminat
ed
,
out
.
Terminated
,
c
);
err
!=
nil
{
return
err
return
err
}
}
}
else
{
}
else
{
out
.
Terminat
ion
=
nil
out
.
Terminat
ed
=
nil
}
}
return
nil
return
nil
}
}
...
...
pkg/api/types.go
View file @
2f6e5e2e
...
@@ -740,9 +740,9 @@ type ContainerStateTerminated struct {
...
@@ -740,9 +740,9 @@ type ContainerStateTerminated struct {
// Only one of its members may be specified.
// Only one of its members may be specified.
// If none of them is specified, the default one is ContainerStateWaiting.
// If none of them is specified, the default one is ContainerStateWaiting.
type
ContainerState
struct
{
type
ContainerState
struct
{
Waiting
*
ContainerStateWaiting
`json:"waiting,omitempty"`
Waiting
*
ContainerStateWaiting
`json:"waiting,omitempty"`
Running
*
ContainerStateRunning
`json:"running,omitempty"`
Running
*
ContainerStateRunning
`json:"running,omitempty"`
Terminat
ion
*
ContainerStateTerminated
`json:"termination
,omitempty"`
Terminat
ed
*
ContainerStateTerminated
`json:"terminated
,omitempty"`
}
}
type
ContainerStatus
struct
{
type
ContainerStatus
struct
{
...
...
pkg/api/v1/conversion_generated.go
View file @
2f6e5e2e
...
@@ -257,13 +257,13 @@ func convert_api_ContainerState_To_v1_ContainerState(in *api.ContainerState, out
...
@@ -257,13 +257,13 @@ func convert_api_ContainerState_To_v1_ContainerState(in *api.ContainerState, out
}
else
{
}
else
{
out
.
Running
=
nil
out
.
Running
=
nil
}
}
if
in
.
Terminat
ion
!=
nil
{
if
in
.
Terminat
ed
!=
nil
{
out
.
Terminat
ion
=
new
(
ContainerStateTerminated
)
out
.
Terminat
ed
=
new
(
ContainerStateTerminated
)
if
err
:=
convert_api_ContainerStateTerminated_To_v1_ContainerStateTerminated
(
in
.
Terminat
ion
,
out
.
Termination
,
s
);
err
!=
nil
{
if
err
:=
convert_api_ContainerStateTerminated_To_v1_ContainerStateTerminated
(
in
.
Terminat
ed
,
out
.
Terminated
,
s
);
err
!=
nil
{
return
err
return
err
}
}
}
else
{
}
else
{
out
.
Terminat
ion
=
nil
out
.
Terminat
ed
=
nil
}
}
return
nil
return
nil
}
}
...
@@ -2532,13 +2532,13 @@ func convert_v1_ContainerState_To_api_ContainerState(in *ContainerState, out *ap
...
@@ -2532,13 +2532,13 @@ func convert_v1_ContainerState_To_api_ContainerState(in *ContainerState, out *ap
}
else
{
}
else
{
out
.
Running
=
nil
out
.
Running
=
nil
}
}
if
in
.
Terminat
ion
!=
nil
{
if
in
.
Terminat
ed
!=
nil
{
out
.
Terminat
ion
=
new
(
api
.
ContainerStateTerminated
)
out
.
Terminat
ed
=
new
(
api
.
ContainerStateTerminated
)
if
err
:=
convert_v1_ContainerStateTerminated_To_api_ContainerStateTerminated
(
in
.
Terminat
ion
,
out
.
Termination
,
s
);
err
!=
nil
{
if
err
:=
convert_v1_ContainerStateTerminated_To_api_ContainerStateTerminated
(
in
.
Terminat
ed
,
out
.
Terminated
,
s
);
err
!=
nil
{
return
err
return
err
}
}
}
else
{
}
else
{
out
.
Terminat
ion
=
nil
out
.
Terminat
ed
=
nil
}
}
return
nil
return
nil
}
}
...
...
pkg/api/v1/deep_copy_generated.go
View file @
2f6e5e2e
...
@@ -246,13 +246,13 @@ func deepCopy_v1_ContainerState(in ContainerState, out *ContainerState, c *conve
...
@@ -246,13 +246,13 @@ func deepCopy_v1_ContainerState(in ContainerState, out *ContainerState, c *conve
}
else
{
}
else
{
out
.
Running
=
nil
out
.
Running
=
nil
}
}
if
in
.
Terminat
ion
!=
nil
{
if
in
.
Terminat
ed
!=
nil
{
out
.
Terminat
ion
=
new
(
ContainerStateTerminated
)
out
.
Terminat
ed
=
new
(
ContainerStateTerminated
)
if
err
:=
deepCopy_v1_ContainerStateTerminated
(
*
in
.
Terminat
ion
,
out
.
Termination
,
c
);
err
!=
nil
{
if
err
:=
deepCopy_v1_ContainerStateTerminated
(
*
in
.
Terminat
ed
,
out
.
Terminated
,
c
);
err
!=
nil
{
return
err
return
err
}
}
}
else
{
}
else
{
out
.
Terminat
ion
=
nil
out
.
Terminat
ed
=
nil
}
}
return
nil
return
nil
}
}
...
...
pkg/api/v1/types.go
View file @
2f6e5e2e
...
@@ -750,9 +750,9 @@ type ContainerStateTerminated struct {
...
@@ -750,9 +750,9 @@ type ContainerStateTerminated struct {
// Only one of its members may be specified.
// Only one of its members may be specified.
// If none of them is specified, the default one is ContainerStateWaiting.
// If none of them is specified, the default one is ContainerStateWaiting.
type
ContainerState
struct
{
type
ContainerState
struct
{
Waiting
*
ContainerStateWaiting
`json:"waiting,omitempty" description:"details about a waiting container"`
Waiting
*
ContainerStateWaiting
`json:"waiting,omitempty" description:"details about a waiting container"`
Running
*
ContainerStateRunning
`json:"running,omitempty" description:"details about a running container"`
Running
*
ContainerStateRunning
`json:"running,omitempty" description:"details about a running container"`
Terminat
ion
*
ContainerStateTerminated
`json:"termination
,omitempty" description:"details about a terminated container"`
Terminat
ed
*
ContainerStateTerminated
`json:"terminated
,omitempty" description:"details about a terminated container"`
}
}
type
ContainerStatus
struct
{
type
ContainerStatus
struct
{
...
...
pkg/api/v1beta1/conversion.go
View file @
2f6e5e2e
...
@@ -1632,6 +1632,30 @@ func addConversionFuncs() {
...
@@ -1632,6 +1632,30 @@ func addConversionFuncs() {
out
.
SecretName
=
in
.
Target
.
ID
out
.
SecretName
=
in
.
Target
.
ID
return
nil
return
nil
},
},
func
(
in
*
api
.
ContainerState
,
out
*
ContainerState
,
s
conversion
.
Scope
)
error
{
if
err
:=
s
.
Convert
(
&
in
.
Waiting
,
&
out
.
Waiting
,
0
);
err
!=
nil
{
return
err
}
if
err
:=
s
.
Convert
(
&
in
.
Running
,
&
out
.
Running
,
0
);
err
!=
nil
{
return
err
}
if
err
:=
s
.
Convert
(
&
in
.
Terminated
,
&
out
.
Termination
,
0
);
err
!=
nil
{
return
err
}
return
nil
},
func
(
in
*
ContainerState
,
out
*
api
.
ContainerState
,
s
conversion
.
Scope
)
error
{
if
err
:=
s
.
Convert
(
&
in
.
Waiting
,
&
out
.
Waiting
,
0
);
err
!=
nil
{
return
err
}
if
err
:=
s
.
Convert
(
&
in
.
Running
,
&
out
.
Running
,
0
);
err
!=
nil
{
return
err
}
if
err
:=
s
.
Convert
(
&
in
.
Termination
,
&
out
.
Terminated
,
0
);
err
!=
nil
{
return
err
}
return
nil
},
)
)
if
err
!=
nil
{
if
err
!=
nil
{
// If one of the conversion functions is malformed, detect it immediately.
// If one of the conversion functions is malformed, detect it immediately.
...
...
pkg/api/v1beta2/conversion.go
View file @
2f6e5e2e
...
@@ -1547,6 +1547,30 @@ func addConversionFuncs() {
...
@@ -1547,6 +1547,30 @@ func addConversionFuncs() {
out
.
SecretName
=
in
.
Target
.
ID
out
.
SecretName
=
in
.
Target
.
ID
return
nil
return
nil
},
},
func
(
in
*
api
.
ContainerState
,
out
*
ContainerState
,
s
conversion
.
Scope
)
error
{
if
err
:=
s
.
Convert
(
&
in
.
Waiting
,
&
out
.
Waiting
,
0
);
err
!=
nil
{
return
err
}
if
err
:=
s
.
Convert
(
&
in
.
Running
,
&
out
.
Running
,
0
);
err
!=
nil
{
return
err
}
if
err
:=
s
.
Convert
(
&
in
.
Terminated
,
&
out
.
Termination
,
0
);
err
!=
nil
{
return
err
}
return
nil
},
func
(
in
*
ContainerState
,
out
*
api
.
ContainerState
,
s
conversion
.
Scope
)
error
{
if
err
:=
s
.
Convert
(
&
in
.
Waiting
,
&
out
.
Waiting
,
0
);
err
!=
nil
{
return
err
}
if
err
:=
s
.
Convert
(
&
in
.
Running
,
&
out
.
Running
,
0
);
err
!=
nil
{
return
err
}
if
err
:=
s
.
Convert
(
&
in
.
Termination
,
&
out
.
Terminated
,
0
);
err
!=
nil
{
return
err
}
return
nil
},
)
)
if
err
!=
nil
{
if
err
!=
nil
{
// If one of the conversion functions is malformed, detect it immediately.
// If one of the conversion functions is malformed, detect it immediately.
...
...
pkg/api/v1beta3/conversion.go
View file @
2f6e5e2e
...
@@ -33,6 +33,10 @@ func addConversionFuncs() {
...
@@ -33,6 +33,10 @@ func addConversionFuncs() {
convert_api_ServiceSpec_To_v1beta3_ServiceSpec
,
convert_api_ServiceSpec_To_v1beta3_ServiceSpec
,
convert_v1beta3_PodSpec_To_api_PodSpec
,
convert_v1beta3_PodSpec_To_api_PodSpec
,
convert_api_PodSpec_To_v1beta3_PodSpec
,
convert_api_PodSpec_To_v1beta3_PodSpec
,
convert_v1beta3_ContainerState_To_api_ContainerState
,
convert_api_ContainerState_To_v1beta3_ContainerState
,
convert_api_ContainerStateTerminated_To_v1beta3_ContainerStateTerminated
,
convert_v1beta3_ContainerStateTerminated_To_api_ContainerStateTerminated
,
)
)
if
err
!=
nil
{
if
err
!=
nil
{
// If one of the conversion functions is malformed, detect it immediately.
// If one of the conversion functions is malformed, detect it immediately.
...
@@ -546,3 +550,101 @@ func convert_api_PodSpec_To_v1beta3_PodSpec(in *api.PodSpec, out *PodSpec, s con
...
@@ -546,3 +550,101 @@ func convert_api_PodSpec_To_v1beta3_PodSpec(in *api.PodSpec, out *PodSpec, s con
}
}
return
nil
return
nil
}
}
func
convert_api_ContainerState_To_v1beta3_ContainerState
(
in
*
api
.
ContainerState
,
out
*
ContainerState
,
s
conversion
.
Scope
)
error
{
if
defaulting
,
found
:=
s
.
DefaultingInterface
(
reflect
.
TypeOf
(
*
in
));
found
{
defaulting
.
(
func
(
*
api
.
ContainerState
))(
in
)
}
if
in
.
Waiting
!=
nil
{
out
.
Waiting
=
new
(
ContainerStateWaiting
)
if
err
:=
convert_api_ContainerStateWaiting_To_v1beta3_ContainerStateWaiting
(
in
.
Waiting
,
out
.
Waiting
,
s
);
err
!=
nil
{
return
err
}
}
else
{
out
.
Waiting
=
nil
}
if
in
.
Running
!=
nil
{
out
.
Running
=
new
(
ContainerStateRunning
)
if
err
:=
convert_api_ContainerStateRunning_To_v1beta3_ContainerStateRunning
(
in
.
Running
,
out
.
Running
,
s
);
err
!=
nil
{
return
err
}
}
else
{
out
.
Running
=
nil
}
if
in
.
Terminated
!=
nil
{
out
.
Termination
=
new
(
ContainerStateTerminated
)
if
err
:=
convert_api_ContainerStateTerminated_To_v1beta3_ContainerStateTerminated
(
in
.
Terminated
,
out
.
Termination
,
s
);
err
!=
nil
{
return
err
}
}
else
{
out
.
Termination
=
nil
}
return
nil
}
func
convert_v1beta3_ContainerState_To_api_ContainerState
(
in
*
ContainerState
,
out
*
api
.
ContainerState
,
s
conversion
.
Scope
)
error
{
if
defaulting
,
found
:=
s
.
DefaultingInterface
(
reflect
.
TypeOf
(
*
in
));
found
{
defaulting
.
(
func
(
*
ContainerState
))(
in
)
}
if
in
.
Waiting
!=
nil
{
out
.
Waiting
=
new
(
api
.
ContainerStateWaiting
)
if
err
:=
convert_v1beta3_ContainerStateWaiting_To_api_ContainerStateWaiting
(
in
.
Waiting
,
out
.
Waiting
,
s
);
err
!=
nil
{
return
err
}
}
else
{
out
.
Waiting
=
nil
}
if
in
.
Running
!=
nil
{
out
.
Running
=
new
(
api
.
ContainerStateRunning
)
if
err
:=
convert_v1beta3_ContainerStateRunning_To_api_ContainerStateRunning
(
in
.
Running
,
out
.
Running
,
s
);
err
!=
nil
{
return
err
}
}
else
{
out
.
Running
=
nil
}
if
in
.
Termination
!=
nil
{
out
.
Terminated
=
new
(
api
.
ContainerStateTerminated
)
if
err
:=
convert_v1beta3_ContainerStateTerminated_To_api_ContainerStateTerminated
(
in
.
Termination
,
out
.
Terminated
,
s
);
err
!=
nil
{
return
err
}
}
else
{
out
.
Terminated
=
nil
}
return
nil
}
func
convert_api_ContainerStateTerminated_To_v1beta3_ContainerStateTerminated
(
in
*
api
.
ContainerStateTerminated
,
out
*
ContainerStateTerminated
,
s
conversion
.
Scope
)
error
{
if
defaulting
,
found
:=
s
.
DefaultingInterface
(
reflect
.
TypeOf
(
*
in
));
found
{
defaulting
.
(
func
(
*
api
.
ContainerStateTerminated
))(
in
)
}
out
.
ExitCode
=
in
.
ExitCode
out
.
Signal
=
in
.
Signal
out
.
Reason
=
in
.
Reason
out
.
Message
=
in
.
Message
if
err
:=
s
.
Convert
(
&
in
.
StartedAt
,
&
out
.
StartedAt
,
0
);
err
!=
nil
{
return
err
}
if
err
:=
s
.
Convert
(
&
in
.
FinishedAt
,
&
out
.
FinishedAt
,
0
);
err
!=
nil
{
return
err
}
out
.
ContainerID
=
in
.
ContainerID
return
nil
}
func
convert_v1beta3_ContainerStateTerminated_To_api_ContainerStateTerminated
(
in
*
ContainerStateTerminated
,
out
*
api
.
ContainerStateTerminated
,
s
conversion
.
Scope
)
error
{
if
defaulting
,
found
:=
s
.
DefaultingInterface
(
reflect
.
TypeOf
(
*
in
));
found
{
defaulting
.
(
func
(
*
ContainerStateTerminated
))(
in
)
}
out
.
ExitCode
=
in
.
ExitCode
out
.
Signal
=
in
.
Signal
out
.
Reason
=
in
.
Reason
out
.
Message
=
in
.
Message
if
err
:=
s
.
Convert
(
&
in
.
StartedAt
,
&
out
.
StartedAt
,
0
);
err
!=
nil
{
return
err
}
if
err
:=
s
.
Convert
(
&
in
.
FinishedAt
,
&
out
.
FinishedAt
,
0
);
err
!=
nil
{
return
err
}
out
.
ContainerID
=
in
.
ContainerID
return
nil
}
pkg/api/v1beta3/conversion_generated.go
View file @
2f6e5e2e
...
@@ -144,37 +144,6 @@ func convert_api_ContainerPort_To_v1beta3_ContainerPort(in *api.ContainerPort, o
...
@@ -144,37 +144,6 @@ func convert_api_ContainerPort_To_v1beta3_ContainerPort(in *api.ContainerPort, o
return
nil
return
nil
}
}
func
convert_api_ContainerState_To_v1beta3_ContainerState
(
in
*
api
.
ContainerState
,
out
*
ContainerState
,
s
conversion
.
Scope
)
error
{
if
defaulting
,
found
:=
s
.
DefaultingInterface
(
reflect
.
TypeOf
(
*
in
));
found
{
defaulting
.
(
func
(
*
api
.
ContainerState
))(
in
)
}
if
in
.
Waiting
!=
nil
{
out
.
Waiting
=
new
(
ContainerStateWaiting
)
if
err
:=
convert_api_ContainerStateWaiting_To_v1beta3_ContainerStateWaiting
(
in
.
Waiting
,
out
.
Waiting
,
s
);
err
!=
nil
{
return
err
}
}
else
{
out
.
Waiting
=
nil
}
if
in
.
Running
!=
nil
{
out
.
Running
=
new
(
ContainerStateRunning
)
if
err
:=
convert_api_ContainerStateRunning_To_v1beta3_ContainerStateRunning
(
in
.
Running
,
out
.
Running
,
s
);
err
!=
nil
{
return
err
}
}
else
{
out
.
Running
=
nil
}
if
in
.
Termination
!=
nil
{
out
.
Termination
=
new
(
ContainerStateTerminated
)
if
err
:=
convert_api_ContainerStateTerminated_To_v1beta3_ContainerStateTerminated
(
in
.
Termination
,
out
.
Termination
,
s
);
err
!=
nil
{
return
err
}
}
else
{
out
.
Termination
=
nil
}
return
nil
}
func
convert_api_ContainerStateRunning_To_v1beta3_ContainerStateRunning
(
in
*
api
.
ContainerStateRunning
,
out
*
ContainerStateRunning
,
s
conversion
.
Scope
)
error
{
func
convert_api_ContainerStateRunning_To_v1beta3_ContainerStateRunning
(
in
*
api
.
ContainerStateRunning
,
out
*
ContainerStateRunning
,
s
conversion
.
Scope
)
error
{
if
defaulting
,
found
:=
s
.
DefaultingInterface
(
reflect
.
TypeOf
(
*
in
));
found
{
if
defaulting
,
found
:=
s
.
DefaultingInterface
(
reflect
.
TypeOf
(
*
in
));
found
{
defaulting
.
(
func
(
*
api
.
ContainerStateRunning
))(
in
)
defaulting
.
(
func
(
*
api
.
ContainerStateRunning
))(
in
)
...
@@ -185,24 +154,6 @@ func convert_api_ContainerStateRunning_To_v1beta3_ContainerStateRunning(in *api.
...
@@ -185,24 +154,6 @@ func convert_api_ContainerStateRunning_To_v1beta3_ContainerStateRunning(in *api.
return
nil
return
nil
}
}
func
convert_api_ContainerStateTerminated_To_v1beta3_ContainerStateTerminated
(
in
*
api
.
ContainerStateTerminated
,
out
*
ContainerStateTerminated
,
s
conversion
.
Scope
)
error
{
if
defaulting
,
found
:=
s
.
DefaultingInterface
(
reflect
.
TypeOf
(
*
in
));
found
{
defaulting
.
(
func
(
*
api
.
ContainerStateTerminated
))(
in
)
}
out
.
ExitCode
=
in
.
ExitCode
out
.
Signal
=
in
.
Signal
out
.
Reason
=
in
.
Reason
out
.
Message
=
in
.
Message
if
err
:=
s
.
Convert
(
&
in
.
StartedAt
,
&
out
.
StartedAt
,
0
);
err
!=
nil
{
return
err
}
if
err
:=
s
.
Convert
(
&
in
.
FinishedAt
,
&
out
.
FinishedAt
,
0
);
err
!=
nil
{
return
err
}
out
.
ContainerID
=
in
.
ContainerID
return
nil
}
func
convert_api_ContainerStateWaiting_To_v1beta3_ContainerStateWaiting
(
in
*
api
.
ContainerStateWaiting
,
out
*
ContainerStateWaiting
,
s
conversion
.
Scope
)
error
{
func
convert_api_ContainerStateWaiting_To_v1beta3_ContainerStateWaiting
(
in
*
api
.
ContainerStateWaiting
,
out
*
ContainerStateWaiting
,
s
conversion
.
Scope
)
error
{
if
defaulting
,
found
:=
s
.
DefaultingInterface
(
reflect
.
TypeOf
(
*
in
));
found
{
if
defaulting
,
found
:=
s
.
DefaultingInterface
(
reflect
.
TypeOf
(
*
in
));
found
{
defaulting
.
(
func
(
*
api
.
ContainerStateWaiting
))(
in
)
defaulting
.
(
func
(
*
api
.
ContainerStateWaiting
))(
in
)
...
@@ -2290,37 +2241,6 @@ func convert_v1beta3_ContainerPort_To_api_ContainerPort(in *ContainerPort, out *
...
@@ -2290,37 +2241,6 @@ func convert_v1beta3_ContainerPort_To_api_ContainerPort(in *ContainerPort, out *
return
nil
return
nil
}
}
func
convert_v1beta3_ContainerState_To_api_ContainerState
(
in
*
ContainerState
,
out
*
api
.
ContainerState
,
s
conversion
.
Scope
)
error
{
if
defaulting
,
found
:=
s
.
DefaultingInterface
(
reflect
.
TypeOf
(
*
in
));
found
{
defaulting
.
(
func
(
*
ContainerState
))(
in
)
}
if
in
.
Waiting
!=
nil
{
out
.
Waiting
=
new
(
api
.
ContainerStateWaiting
)
if
err
:=
convert_v1beta3_ContainerStateWaiting_To_api_ContainerStateWaiting
(
in
.
Waiting
,
out
.
Waiting
,
s
);
err
!=
nil
{
return
err
}
}
else
{
out
.
Waiting
=
nil
}
if
in
.
Running
!=
nil
{
out
.
Running
=
new
(
api
.
ContainerStateRunning
)
if
err
:=
convert_v1beta3_ContainerStateRunning_To_api_ContainerStateRunning
(
in
.
Running
,
out
.
Running
,
s
);
err
!=
nil
{
return
err
}
}
else
{
out
.
Running
=
nil
}
if
in
.
Termination
!=
nil
{
out
.
Termination
=
new
(
api
.
ContainerStateTerminated
)
if
err
:=
convert_v1beta3_ContainerStateTerminated_To_api_ContainerStateTerminated
(
in
.
Termination
,
out
.
Termination
,
s
);
err
!=
nil
{
return
err
}
}
else
{
out
.
Termination
=
nil
}
return
nil
}
func
convert_v1beta3_ContainerStateRunning_To_api_ContainerStateRunning
(
in
*
ContainerStateRunning
,
out
*
api
.
ContainerStateRunning
,
s
conversion
.
Scope
)
error
{
func
convert_v1beta3_ContainerStateRunning_To_api_ContainerStateRunning
(
in
*
ContainerStateRunning
,
out
*
api
.
ContainerStateRunning
,
s
conversion
.
Scope
)
error
{
if
defaulting
,
found
:=
s
.
DefaultingInterface
(
reflect
.
TypeOf
(
*
in
));
found
{
if
defaulting
,
found
:=
s
.
DefaultingInterface
(
reflect
.
TypeOf
(
*
in
));
found
{
defaulting
.
(
func
(
*
ContainerStateRunning
))(
in
)
defaulting
.
(
func
(
*
ContainerStateRunning
))(
in
)
...
@@ -2331,24 +2251,6 @@ func convert_v1beta3_ContainerStateRunning_To_api_ContainerStateRunning(in *Cont
...
@@ -2331,24 +2251,6 @@ func convert_v1beta3_ContainerStateRunning_To_api_ContainerStateRunning(in *Cont
return
nil
return
nil
}
}
func
convert_v1beta3_ContainerStateTerminated_To_api_ContainerStateTerminated
(
in
*
ContainerStateTerminated
,
out
*
api
.
ContainerStateTerminated
,
s
conversion
.
Scope
)
error
{
if
defaulting
,
found
:=
s
.
DefaultingInterface
(
reflect
.
TypeOf
(
*
in
));
found
{
defaulting
.
(
func
(
*
ContainerStateTerminated
))(
in
)
}
out
.
ExitCode
=
in
.
ExitCode
out
.
Signal
=
in
.
Signal
out
.
Reason
=
in
.
Reason
out
.
Message
=
in
.
Message
if
err
:=
s
.
Convert
(
&
in
.
StartedAt
,
&
out
.
StartedAt
,
0
);
err
!=
nil
{
return
err
}
if
err
:=
s
.
Convert
(
&
in
.
FinishedAt
,
&
out
.
FinishedAt
,
0
);
err
!=
nil
{
return
err
}
out
.
ContainerID
=
in
.
ContainerID
return
nil
}
func
convert_v1beta3_ContainerStateWaiting_To_api_ContainerStateWaiting
(
in
*
ContainerStateWaiting
,
out
*
api
.
ContainerStateWaiting
,
s
conversion
.
Scope
)
error
{
func
convert_v1beta3_ContainerStateWaiting_To_api_ContainerStateWaiting
(
in
*
ContainerStateWaiting
,
out
*
api
.
ContainerStateWaiting
,
s
conversion
.
Scope
)
error
{
if
defaulting
,
found
:=
s
.
DefaultingInterface
(
reflect
.
TypeOf
(
*
in
));
found
{
if
defaulting
,
found
:=
s
.
DefaultingInterface
(
reflect
.
TypeOf
(
*
in
));
found
{
defaulting
.
(
func
(
*
ContainerStateWaiting
))(
in
)
defaulting
.
(
func
(
*
ContainerStateWaiting
))(
in
)
...
@@ -4327,9 +4229,7 @@ func init() {
...
@@ -4327,9 +4229,7 @@ func init() {
convert_api_ComponentStatus_To_v1beta3_ComponentStatus
,
convert_api_ComponentStatus_To_v1beta3_ComponentStatus
,
convert_api_ContainerPort_To_v1beta3_ContainerPort
,
convert_api_ContainerPort_To_v1beta3_ContainerPort
,
convert_api_ContainerStateRunning_To_v1beta3_ContainerStateRunning
,
convert_api_ContainerStateRunning_To_v1beta3_ContainerStateRunning
,
convert_api_ContainerStateTerminated_To_v1beta3_ContainerStateTerminated
,
convert_api_ContainerStateWaiting_To_v1beta3_ContainerStateWaiting
,
convert_api_ContainerStateWaiting_To_v1beta3_ContainerStateWaiting
,
convert_api_ContainerState_To_v1beta3_ContainerState
,
convert_api_ContainerStatus_To_v1beta3_ContainerStatus
,
convert_api_ContainerStatus_To_v1beta3_ContainerStatus
,
convert_api_DeleteOptions_To_v1beta3_DeleteOptions
,
convert_api_DeleteOptions_To_v1beta3_DeleteOptions
,
convert_api_EmptyDirVolumeSource_To_v1beta3_EmptyDirVolumeSource
,
convert_api_EmptyDirVolumeSource_To_v1beta3_EmptyDirVolumeSource
,
...
@@ -4438,9 +4338,7 @@ func init() {
...
@@ -4438,9 +4338,7 @@ func init() {
convert_v1beta3_ComponentStatus_To_api_ComponentStatus
,
convert_v1beta3_ComponentStatus_To_api_ComponentStatus
,
convert_v1beta3_ContainerPort_To_api_ContainerPort
,
convert_v1beta3_ContainerPort_To_api_ContainerPort
,
convert_v1beta3_ContainerStateRunning_To_api_ContainerStateRunning
,
convert_v1beta3_ContainerStateRunning_To_api_ContainerStateRunning
,
convert_v1beta3_ContainerStateTerminated_To_api_ContainerStateTerminated
,
convert_v1beta3_ContainerStateWaiting_To_api_ContainerStateWaiting
,
convert_v1beta3_ContainerStateWaiting_To_api_ContainerStateWaiting
,
convert_v1beta3_ContainerState_To_api_ContainerState
,
convert_v1beta3_ContainerStatus_To_api_ContainerStatus
,
convert_v1beta3_ContainerStatus_To_api_ContainerStatus
,
convert_v1beta3_DeleteOptions_To_api_DeleteOptions
,
convert_v1beta3_DeleteOptions_To_api_DeleteOptions
,
convert_v1beta3_EmptyDirVolumeSource_To_api_EmptyDirVolumeSource
,
convert_v1beta3_EmptyDirVolumeSource_To_api_EmptyDirVolumeSource
,
...
...
pkg/kubectl/describe.go
View file @
2f6e5e2e
...
@@ -349,20 +349,20 @@ func describeContainers(containers []api.ContainerStatus, out io.Writer) {
...
@@ -349,20 +349,20 @@ func describeContainers(containers []api.ContainerStatus, out io.Writer) {
if
container
.
State
.
Waiting
.
Reason
!=
""
{
if
container
.
State
.
Waiting
.
Reason
!=
""
{
fmt
.
Fprintf
(
out
,
" Reason:
\t
%s
\n
"
,
container
.
State
.
Waiting
.
Reason
)
fmt
.
Fprintf
(
out
,
" Reason:
\t
%s
\n
"
,
container
.
State
.
Waiting
.
Reason
)
}
}
case
container
.
State
.
Terminat
ion
!=
nil
:
case
container
.
State
.
Terminat
ed
!=
nil
:
fmt
.
Fprintf
(
out
,
" State:
\t
Terminated
\n
"
)
fmt
.
Fprintf
(
out
,
" State:
\t
Terminated
\n
"
)
if
container
.
State
.
Terminat
ion
.
Reason
!=
""
{
if
container
.
State
.
Terminat
ed
.
Reason
!=
""
{
fmt
.
Fprintf
(
out
,
" Reason:
\t
%s
\n
"
,
container
.
State
.
Terminat
ion
.
Reason
)
fmt
.
Fprintf
(
out
,
" Reason:
\t
%s
\n
"
,
container
.
State
.
Terminat
ed
.
Reason
)
}
}
if
container
.
State
.
Terminat
ion
.
Message
!=
""
{
if
container
.
State
.
Terminat
ed
.
Message
!=
""
{
fmt
.
Fprintf
(
out
,
" Message:
\t
%s
\n
"
,
container
.
State
.
Terminat
ion
.
Message
)
fmt
.
Fprintf
(
out
,
" Message:
\t
%s
\n
"
,
container
.
State
.
Terminat
ed
.
Message
)
}
}
fmt
.
Fprintf
(
out
,
" Exit Code:
\t
%d
\n
"
,
container
.
State
.
Terminat
ion
.
ExitCode
)
fmt
.
Fprintf
(
out
,
" Exit Code:
\t
%d
\n
"
,
container
.
State
.
Terminat
ed
.
ExitCode
)
if
container
.
State
.
Terminat
ion
.
Signal
>
0
{
if
container
.
State
.
Terminat
ed
.
Signal
>
0
{
fmt
.
Fprintf
(
out
,
" Signal:
\t
%d
\n
"
,
container
.
State
.
Terminat
ion
.
Signal
)
fmt
.
Fprintf
(
out
,
" Signal:
\t
%d
\n
"
,
container
.
State
.
Terminat
ed
.
Signal
)
}
}
fmt
.
Fprintf
(
out
,
" Started:
\t
%s
\n
"
,
container
.
State
.
Terminat
ion
.
StartedAt
.
Time
.
Format
(
time
.
RFC1123Z
))
fmt
.
Fprintf
(
out
,
" Started:
\t
%s
\n
"
,
container
.
State
.
Terminat
ed
.
StartedAt
.
Time
.
Format
(
time
.
RFC1123Z
))
fmt
.
Fprintf
(
out
,
" Finished:
\t
%s
\n
"
,
container
.
State
.
Terminat
ion
.
FinishedAt
.
Time
.
Format
(
time
.
RFC1123Z
))
fmt
.
Fprintf
(
out
,
" Finished:
\t
%s
\n
"
,
container
.
State
.
Terminat
ed
.
FinishedAt
.
Time
.
Format
(
time
.
RFC1123Z
))
default
:
default
:
fmt
.
Fprintf
(
out
,
" State:
\t
Waiting
\n
"
)
fmt
.
Fprintf
(
out
,
" State:
\t
Waiting
\n
"
)
}
}
...
...
pkg/kubectl/describe_test.go
View file @
2f6e5e2e
...
@@ -157,7 +157,7 @@ func TestDescribeContainers(t *testing.T) {
...
@@ -157,7 +157,7 @@ func TestDescribeContainers(t *testing.T) {
input
:
api
.
ContainerStatus
{
input
:
api
.
ContainerStatus
{
Name
:
"test"
,
Name
:
"test"
,
State
:
api
.
ContainerState
{
State
:
api
.
ContainerState
{
Terminat
ion
:
&
api
.
ContainerStateTerminated
{
Terminat
ed
:
&
api
.
ContainerStateTerminated
{
StartedAt
:
util
.
NewTime
(
time
.
Now
()),
StartedAt
:
util
.
NewTime
(
time
.
Now
()),
FinishedAt
:
util
.
NewTime
(
time
.
Now
()),
FinishedAt
:
util
.
NewTime
(
time
.
Now
()),
Reason
:
"potato"
,
Reason
:
"potato"
,
...
...
pkg/kubectl/resource_printer.go
View file @
2f6e5e2e
...
@@ -381,7 +381,7 @@ func interpretContainerStatus(status *api.ContainerStatus) (string, string, stri
...
@@ -381,7 +381,7 @@ func interpretContainerStatus(status *api.ContainerStatus) (string, string, stri
}
else
if
state
.
Running
!=
nil
{
}
else
if
state
.
Running
!=
nil
{
// Get the information of the last termination state. This is useful if
// Get the information of the last termination state. This is useful if
// a container is stuck in a crash loop.
// a container is stuck in a crash loop.
message
:=
getTermMsg
(
status
.
LastTerminationState
.
Terminat
ion
)
message
:=
getTermMsg
(
status
.
LastTerminationState
.
Terminat
ed
)
if
message
!=
""
{
if
message
!=
""
{
message
=
"last termination: "
+
message
message
=
"last termination: "
+
message
}
}
...
@@ -390,8 +390,8 @@ func interpretContainerStatus(status *api.ContainerStatus) (string, string, stri
...
@@ -390,8 +390,8 @@ func interpretContainerStatus(status *api.ContainerStatus) (string, string, stri
stateMsg
=
stateMsg
+
" *not ready*"
stateMsg
=
stateMsg
+
" *not ready*"
}
}
return
stateMsg
,
translateTimestamp
(
state
.
Running
.
StartedAt
),
message
,
nil
return
stateMsg
,
translateTimestamp
(
state
.
Running
.
StartedAt
),
message
,
nil
}
else
if
state
.
Terminat
ion
!=
nil
{
}
else
if
state
.
Terminat
ed
!=
nil
{
return
"Terminated"
,
translateTimestamp
(
state
.
Terminat
ion
.
StartedAt
),
getTermMsg
(
state
.
Termination
),
nil
return
"Terminated"
,
translateTimestamp
(
state
.
Terminat
ed
.
StartedAt
),
getTermMsg
(
state
.
Terminated
),
nil
}
}
return
""
,
""
,
""
,
fmt
.
Errorf
(
"unknown container state %#v"
,
*
state
)
return
""
,
""
,
""
,
fmt
.
Errorf
(
"unknown container state %#v"
,
*
state
)
}
}
...
...
pkg/kubectl/resource_printer_test.go
View file @
2f6e5e2e
...
@@ -838,7 +838,7 @@ func TestInterpretContainerStatus(t *testing.T) {
...
@@ -838,7 +838,7 @@ func TestInterpretContainerStatus(t *testing.T) {
{
{
status
:
&
api
.
ContainerStatus
{
status
:
&
api
.
ContainerStatus
{
State
:
api
.
ContainerState
{
State
:
api
.
ContainerState
{
Terminat
ion
:
&
api
.
ContainerStateTerminated
{
Terminat
ed
:
&
api
.
ContainerStateTerminated
{
ExitCode
:
3
,
ExitCode
:
3
,
},
},
},
},
...
@@ -851,7 +851,7 @@ func TestInterpretContainerStatus(t *testing.T) {
...
@@ -851,7 +851,7 @@ func TestInterpretContainerStatus(t *testing.T) {
{
{
status
:
&
api
.
ContainerStatus
{
status
:
&
api
.
ContainerStatus
{
State
:
api
.
ContainerState
{
State
:
api
.
ContainerState
{
Terminat
ion
:
&
api
.
ContainerStateTerminated
{
Terminat
ed
:
&
api
.
ContainerStateTerminated
{
ExitCode
:
5
,
ExitCode
:
5
,
Reason
:
"test reason"
,
Reason
:
"test reason"
,
},
},
...
...
pkg/kubelet/container/helpers.go
View file @
2f6e5e2e
...
@@ -57,7 +57,7 @@ func ShouldContainerBeRestarted(container *api.Container, pod *api.Pod, podStatu
...
@@ -57,7 +57,7 @@ func ShouldContainerBeRestarted(container *api.Container, pod *api.Pod, podStatu
// Get all dead container status.
// Get all dead container status.
var
resultStatus
[]
*
api
.
ContainerStatus
var
resultStatus
[]
*
api
.
ContainerStatus
for
i
,
containerStatus
:=
range
podStatus
.
ContainerStatuses
{
for
i
,
containerStatus
:=
range
podStatus
.
ContainerStatuses
{
if
containerStatus
.
Name
==
container
.
Name
&&
containerStatus
.
State
.
Terminat
ion
!=
nil
{
if
containerStatus
.
Name
==
container
.
Name
&&
containerStatus
.
State
.
Terminat
ed
!=
nil
{
resultStatus
=
append
(
resultStatus
,
&
podStatus
.
ContainerStatuses
[
i
])
resultStatus
=
append
(
resultStatus
,
&
podStatus
.
ContainerStatuses
[
i
])
}
}
}
}
...
@@ -76,7 +76,7 @@ func ShouldContainerBeRestarted(container *api.Container, pod *api.Pod, podStatu
...
@@ -76,7 +76,7 @@ func ShouldContainerBeRestarted(container *api.Container, pod *api.Pod, podStatu
if
pod
.
Spec
.
RestartPolicy
==
api
.
RestartPolicyOnFailure
{
if
pod
.
Spec
.
RestartPolicy
==
api
.
RestartPolicyOnFailure
{
// Check the exit code of last run. Note: This assumes the result is sorted
// Check the exit code of last run. Note: This assumes the result is sorted
// by the created time in reverse order.
// by the created time in reverse order.
if
resultStatus
[
0
]
.
State
.
Terminat
ion
.
ExitCode
==
0
{
if
resultStatus
[
0
]
.
State
.
Terminat
ed
.
ExitCode
==
0
{
glog
.
V
(
4
)
.
Infof
(
"Already successfully ran container %q of pod %q, do nothing"
,
container
.
Name
,
podFullName
)
glog
.
V
(
4
)
.
Infof
(
"Already successfully ran container %q of pod %q, do nothing"
,
container
.
Name
,
podFullName
)
return
false
return
false
}
}
...
...
pkg/kubelet/dockertools/manager.go
View file @
2f6e5e2e
...
@@ -290,7 +290,7 @@ func (dm *DockerManager) inspectContainer(dockerID, containerName, tPath string)
...
@@ -290,7 +290,7 @@ func (dm *DockerManager) inspectContainer(dockerID, containerName, tPath string)
}
else
{
}
else
{
reason
=
inspectResult
.
State
.
Error
reason
=
inspectResult
.
State
.
Error
}
}
result
.
status
.
State
.
Terminat
ion
=
&
api
.
ContainerStateTerminated
{
result
.
status
.
State
.
Terminat
ed
=
&
api
.
ContainerStateTerminated
{
ExitCode
:
inspectResult
.
State
.
ExitCode
,
ExitCode
:
inspectResult
.
State
.
ExitCode
,
Reason
:
reason
,
Reason
:
reason
,
StartedAt
:
util
.
NewTime
(
inspectResult
.
State
.
StartedAt
),
StartedAt
:
util
.
NewTime
(
inspectResult
.
State
.
StartedAt
),
...
@@ -304,7 +304,7 @@ func (dm *DockerManager) inspectContainer(dockerID, containerName, tPath string)
...
@@ -304,7 +304,7 @@ func (dm *DockerManager) inspectContainer(dockerID, containerName, tPath string)
if
err
!=
nil
{
if
err
!=
nil
{
glog
.
Errorf
(
"Error on reading termination-log %s: %v"
,
path
,
err
)
glog
.
Errorf
(
"Error on reading termination-log %s: %v"
,
path
,
err
)
}
else
{
}
else
{
result
.
status
.
State
.
Terminat
ion
.
Message
=
string
(
data
)
result
.
status
.
State
.
Terminat
ed
.
Message
=
string
(
data
)
}
}
}
}
}
}
...
@@ -329,8 +329,8 @@ func (dm *DockerManager) GetPodStatus(pod *api.Pod) (*api.PodStatus, error) {
...
@@ -329,8 +329,8 @@ func (dm *DockerManager) GetPodStatus(pod *api.Pod) (*api.PodStatus, error) {
lastObservedTime
:=
make
(
map
[
string
]
util
.
Time
,
len
(
pod
.
Spec
.
Containers
))
lastObservedTime
:=
make
(
map
[
string
]
util
.
Time
,
len
(
pod
.
Spec
.
Containers
))
for
_
,
status
:=
range
pod
.
Status
.
ContainerStatuses
{
for
_
,
status
:=
range
pod
.
Status
.
ContainerStatuses
{
oldStatuses
[
status
.
Name
]
=
status
oldStatuses
[
status
.
Name
]
=
status
if
status
.
LastTerminationState
.
Terminat
ion
!=
nil
{
if
status
.
LastTerminationState
.
Terminat
ed
!=
nil
{
lastObservedTime
[
status
.
Name
]
=
status
.
LastTerminationState
.
Terminat
ion
.
FinishedAt
lastObservedTime
[
status
.
Name
]
=
status
.
LastTerminationState
.
Terminat
ed
.
FinishedAt
}
}
}
}
...
@@ -381,19 +381,19 @@ func (dm *DockerManager) GetPodStatus(pod *api.Pod) (*api.PodStatus, error) {
...
@@ -381,19 +381,19 @@ func (dm *DockerManager) GetPodStatus(pod *api.Pod) (*api.PodStatus, error) {
result
:=
dm
.
inspectContainer
(
value
.
ID
,
dockerContainerName
,
terminationMessagePath
)
result
:=
dm
.
inspectContainer
(
value
.
ID
,
dockerContainerName
,
terminationMessagePath
)
if
result
.
err
!=
nil
{
if
result
.
err
!=
nil
{
return
nil
,
result
.
err
return
nil
,
result
.
err
}
else
if
result
.
status
.
State
.
Terminat
ion
!=
nil
{
}
else
if
result
.
status
.
State
.
Terminat
ed
!=
nil
{
terminationState
=
&
result
.
status
.
State
terminationState
=
&
result
.
status
.
State
}
}
if
containerStatus
,
found
:=
statuses
[
dockerContainerName
];
found
{
if
containerStatus
,
found
:=
statuses
[
dockerContainerName
];
found
{
if
containerStatus
.
LastTerminationState
.
Terminat
ion
==
nil
&&
terminationState
!=
nil
{
if
containerStatus
.
LastTerminationState
.
Terminat
ed
==
nil
&&
terminationState
!=
nil
{
// Populate the last termination state.
// Populate the last termination state.
containerStatus
.
LastTerminationState
=
*
terminationState
containerStatus
.
LastTerminationState
=
*
terminationState
}
}
count
:=
true
count
:=
true
// Only count dead containers terminated after last time we observed,
// Only count dead containers terminated after last time we observed,
if
lastObservedTime
,
ok
:=
lastObservedTime
[
dockerContainerName
];
ok
{
if
lastObservedTime
,
ok
:=
lastObservedTime
[
dockerContainerName
];
ok
{
if
terminationState
!=
nil
&&
terminationState
.
Terminat
ion
.
FinishedAt
.
After
(
lastObservedTime
.
Time
)
{
if
terminationState
!=
nil
&&
terminationState
.
Terminat
ed
.
FinishedAt
.
After
(
lastObservedTime
.
Time
)
{
count
=
false
count
=
false
}
else
{
}
else
{
// The container finished before the last observation. No
// The container finished before the last observation. No
...
...
pkg/kubelet/dockertools/manager_test.go
View file @
2f6e5e2e
...
@@ -1567,8 +1567,8 @@ func TestGetPodStatusWithLastTermination(t *testing.T) {
...
@@ -1567,8 +1567,8 @@ func TestGetPodStatusWithLastTermination(t *testing.T) {
}
}
terminatedContainers
:=
[]
string
{}
terminatedContainers
:=
[]
string
{}
for
_
,
cs
:=
range
status
.
ContainerStatuses
{
for
_
,
cs
:=
range
status
.
ContainerStatuses
{
if
cs
.
LastTerminationState
.
Terminat
ion
!=
nil
{
if
cs
.
LastTerminationState
.
Terminat
ed
!=
nil
{
terminatedContainers
=
append
(
terminatedContainers
,
cs
.
LastTerminationState
.
Terminat
ion
.
ContainerID
)
terminatedContainers
=
append
(
terminatedContainers
,
cs
.
LastTerminationState
.
Terminat
ed
.
ContainerID
)
}
}
}
}
sort
.
StringSlice
(
terminatedContainers
)
.
Sort
()
sort
.
StringSlice
(
terminatedContainers
)
.
Sort
()
...
...
pkg/kubelet/kubelet.go
View file @
2f6e5e2e
...
@@ -1662,10 +1662,10 @@ func (kl *Kubelet) validateContainerStatus(podStatus *api.PodStatus, containerNa
...
@@ -1662,10 +1662,10 @@ func (kl *Kubelet) validateContainerStatus(podStatus *api.PodStatus, containerNa
return
""
,
fmt
.
Errorf
(
"container %q not found in pod"
,
containerName
)
return
""
,
fmt
.
Errorf
(
"container %q not found in pod"
,
containerName
)
}
}
if
previous
{
if
previous
{
if
cStatus
.
LastTerminationState
.
Terminat
ion
==
nil
{
if
cStatus
.
LastTerminationState
.
Terminat
ed
==
nil
{
return
""
,
fmt
.
Errorf
(
"previous terminated container %q not found in pod"
,
containerName
)
return
""
,
fmt
.
Errorf
(
"previous terminated container %q not found in pod"
,
containerName
)
}
}
cID
=
cStatus
.
LastTerminationState
.
Terminat
ion
.
ContainerID
cID
=
cStatus
.
LastTerminationState
.
Terminat
ed
.
ContainerID
}
else
{
}
else
{
if
cStatus
.
State
.
Waiting
!=
nil
{
if
cStatus
.
State
.
Waiting
!=
nil
{
return
""
,
fmt
.
Errorf
(
"container %q is in waiting state."
,
containerName
)
return
""
,
fmt
.
Errorf
(
"container %q is in waiting state."
,
containerName
)
...
@@ -1977,9 +1977,9 @@ func getPhase(spec *api.PodSpec, info []api.ContainerStatus) api.PodPhase {
...
@@ -1977,9 +1977,9 @@ func getPhase(spec *api.PodSpec, info []api.ContainerStatus) api.PodPhase {
if
containerStatus
,
ok
:=
api
.
GetContainerStatus
(
info
,
container
.
Name
);
ok
{
if
containerStatus
,
ok
:=
api
.
GetContainerStatus
(
info
,
container
.
Name
);
ok
{
if
containerStatus
.
State
.
Running
!=
nil
{
if
containerStatus
.
State
.
Running
!=
nil
{
running
++
running
++
}
else
if
containerStatus
.
State
.
Terminat
ion
!=
nil
{
}
else
if
containerStatus
.
State
.
Terminat
ed
!=
nil
{
stopped
++
stopped
++
if
containerStatus
.
State
.
Terminat
ion
.
ExitCode
==
0
{
if
containerStatus
.
State
.
Terminat
ed
.
ExitCode
==
0
{
succeeded
++
succeeded
++
}
else
{
}
else
{
failed
++
failed
++
...
...
pkg/kubelet/kubelet_test.go
View file @
2f6e5e2e
...
@@ -1712,7 +1712,7 @@ func stoppedState(cName string) api.ContainerStatus {
...
@@ -1712,7 +1712,7 @@ func stoppedState(cName string) api.ContainerStatus {
return
api
.
ContainerStatus
{
return
api
.
ContainerStatus
{
Name
:
cName
,
Name
:
cName
,
State
:
api
.
ContainerState
{
State
:
api
.
ContainerState
{
Terminat
ion
:
&
api
.
ContainerStateTerminated
{},
Terminat
ed
:
&
api
.
ContainerStateTerminated
{},
},
},
}
}
}
}
...
@@ -1720,7 +1720,7 @@ func succeededState(cName string) api.ContainerStatus {
...
@@ -1720,7 +1720,7 @@ func succeededState(cName string) api.ContainerStatus {
return
api
.
ContainerStatus
{
return
api
.
ContainerStatus
{
Name
:
cName
,
Name
:
cName
,
State
:
api
.
ContainerState
{
State
:
api
.
ContainerState
{
Terminat
ion
:
&
api
.
ContainerStateTerminated
{
Terminat
ed
:
&
api
.
ContainerStateTerminated
{
ExitCode
:
0
,
ExitCode
:
0
,
},
},
},
},
...
@@ -1730,7 +1730,7 @@ func failedState(cName string) api.ContainerStatus {
...
@@ -1730,7 +1730,7 @@ func failedState(cName string) api.ContainerStatus {
return
api
.
ContainerStatus
{
return
api
.
ContainerStatus
{
Name
:
cName
,
Name
:
cName
,
State
:
api
.
ContainerState
{
State
:
api
.
ContainerState
{
Terminat
ion
:
&
api
.
ContainerStateTerminated
{
Terminat
ed
:
&
api
.
ContainerStateTerminated
{
ExitCode
:
-
1
,
ExitCode
:
-
1
,
},
},
},
},
...
@@ -2577,7 +2577,7 @@ func TestValidateContainerStatus(t *testing.T) {
...
@@ -2577,7 +2577,7 @@ func TestValidateContainerStatus(t *testing.T) {
Running
:
&
api
.
ContainerStateRunning
{},
Running
:
&
api
.
ContainerStateRunning
{},
},
},
LastTerminationState
:
api
.
ContainerState
{
LastTerminationState
:
api
.
ContainerState
{
Terminat
ion
:
&
api
.
ContainerStateTerminated
{},
Terminat
ed
:
&
api
.
ContainerStateTerminated
{},
},
},
},
},
},
},
...
@@ -2588,7 +2588,7 @@ func TestValidateContainerStatus(t *testing.T) {
...
@@ -2588,7 +2588,7 @@ func TestValidateContainerStatus(t *testing.T) {
{
{
Name
:
containerName
,
Name
:
containerName
,
State
:
api
.
ContainerState
{
State
:
api
.
ContainerState
{
Terminat
ion
:
&
api
.
ContainerStateTerminated
{},
Terminat
ed
:
&
api
.
ContainerStateTerminated
{},
},
},
},
},
},
},
...
...
pkg/kubelet/rkt/pod_info.go
View file @
2f6e5e2e
...
@@ -136,7 +136,7 @@ func (p *podInfo) getContainerStatus(container *kubecontainer.Container) api.Con
...
@@ -136,7 +136,7 @@ func (p *podInfo) getContainerStatus(container *kubecontainer.Container) api.Con
}
}
exitCode
=
-
1
exitCode
=
-
1
status
.
State
=
api
.
ContainerState
{
status
.
State
=
api
.
ContainerState
{
Terminat
ion
:
&
api
.
ContainerStateTerminated
{
Terminat
ed
:
&
api
.
ContainerStateTerminated
{
ExitCode
:
exitCode
,
ExitCode
:
exitCode
,
StartedAt
:
util
.
Unix
(
container
.
Created
,
0
),
StartedAt
:
util
.
Unix
(
container
.
Created
,
0
),
},
},
...
...
test/e2e/util.go
View file @
2f6e5e2e
...
@@ -271,15 +271,15 @@ func waitForPodSuccessInNamespace(c *client.Client, podName string, contName str
...
@@ -271,15 +271,15 @@ func waitForPodSuccessInNamespace(c *client.Client, podName string, contName str
if
!
ok
{
if
!
ok
{
Logf
(
"No Status.Info for container '%s' in pod '%s' yet"
,
contName
,
podName
)
Logf
(
"No Status.Info for container '%s' in pod '%s' yet"
,
contName
,
podName
)
}
else
{
}
else
{
if
ci
.
State
.
Terminat
ion
!=
nil
{
if
ci
.
State
.
Terminat
ed
!=
nil
{
if
ci
.
State
.
Terminat
ion
.
ExitCode
==
0
{
if
ci
.
State
.
Terminat
ed
.
ExitCode
==
0
{
By
(
"Saw pod success"
)
By
(
"Saw pod success"
)
return
true
,
nil
return
true
,
nil
}
else
{
}
else
{
return
true
,
fmt
.
Errorf
(
"pod '%s' terminated with failure: %+v"
,
podName
,
ci
.
State
.
Terminat
ion
)
return
true
,
fmt
.
Errorf
(
"pod '%s' terminated with failure: %+v"
,
podName
,
ci
.
State
.
Terminat
ed
)
}
}
}
else
{
}
else
{
Logf
(
"Nil State.Terminat
ion
for container '%s' in pod '%s' in namespace '%s' so far"
,
contName
,
podName
,
namespace
)
Logf
(
"Nil State.Terminat
ed
for container '%s' in pod '%s' in namespace '%s' so far"
,
contName
,
podName
,
namespace
)
}
}
}
}
return
false
,
nil
return
false
,
nil
...
@@ -875,10 +875,10 @@ func FailedContainers(pod api.Pod) map[string]ContainerFailures {
...
@@ -875,10 +875,10 @@ func FailedContainers(pod api.Pod) map[string]ContainerFailures {
return
nil
return
nil
}
else
{
}
else
{
for
_
,
status
:=
range
statuses
{
for
_
,
status
:=
range
statuses
{
if
status
.
State
.
Terminat
ion
!=
nil
{
if
status
.
State
.
Terminat
ed
!=
nil
{
states
[
status
.
ContainerID
]
=
ContainerFailures
{
status
:
status
.
State
.
Terminat
ion
}
states
[
status
.
ContainerID
]
=
ContainerFailures
{
status
:
status
.
State
.
Terminat
ed
}
}
else
if
status
.
LastTerminationState
.
Terminat
ion
!=
nil
{
}
else
if
status
.
LastTerminationState
.
Terminat
ed
!=
nil
{
states
[
status
.
ContainerID
]
=
ContainerFailures
{
status
:
status
.
LastTerminationState
.
Terminat
ion
}
states
[
status
.
ContainerID
]
=
ContainerFailures
{
status
:
status
.
LastTerminationState
.
Terminat
ed
}
}
}
if
status
.
RestartCount
>
0
{
if
status
.
RestartCount
>
0
{
var
ok
bool
var
ok
bool
...
...
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