mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-09-20 01:23:48 +00:00
Merge pull request #92817 from kmala/kubelet
Check for sandboxes before deleting the pod from apiserver
This commit is contained in:
@@ -114,6 +114,8 @@ type Runtime interface {
|
||||
GetContainerLogs(ctx context.Context, pod *v1.Pod, containerID ContainerID, logOptions *v1.PodLogOptions, stdout, stderr io.Writer) (err error)
|
||||
// Delete a container. If the container is still running, an error is returned.
|
||||
DeleteContainer(containerID ContainerID) error
|
||||
// DeleteSandbox deletes a sandbox.
|
||||
DeleteSandbox(sandboxID string) error
|
||||
// ImageService provides methods to image-related methods.
|
||||
ImageService
|
||||
// UpdatePodCIDR sends a new podCIDR to the runtime.
|
||||
@@ -299,7 +301,6 @@ type PodStatus struct {
|
||||
// Status of containers in the pod.
|
||||
ContainerStatuses []*Status
|
||||
// Status of the pod sandbox.
|
||||
// Only for kuberuntime now, other runtime may keep it nil.
|
||||
SandboxStatuses []*runtimeapi.PodSandboxStatus
|
||||
}
|
||||
|
||||
@@ -309,6 +310,8 @@ type Status struct {
|
||||
ID ContainerID
|
||||
// Name of the container.
|
||||
Name string
|
||||
// ID of the sandbox to which this container belongs.
|
||||
PodSandboxID string
|
||||
// Status of the container.
|
||||
State State
|
||||
// Creation time of the container.
|
||||
|
@@ -364,6 +364,14 @@ func (f *FakeRuntime) DeleteContainer(containerID kubecontainer.ContainerID) err
|
||||
return f.Err
|
||||
}
|
||||
|
||||
func (f *FakeRuntime) DeleteSandbox(sandboxID string) error {
|
||||
f.Lock()
|
||||
defer f.Unlock()
|
||||
|
||||
f.CalledFunctions = append(f.CalledFunctions, "DeleteSandbox")
|
||||
return f.Err
|
||||
}
|
||||
|
||||
func (f *FakeRuntime) ImageStats() (*kubecontainer.ImageStats, error) {
|
||||
f.Lock()
|
||||
defer f.Unlock()
|
||||
|
@@ -147,6 +147,11 @@ func (r *Mock) DeleteContainer(containerID kubecontainer.ContainerID) error {
|
||||
return args.Error(0)
|
||||
}
|
||||
|
||||
func (r *Mock) DeleteSandbox(sandboxID string) error {
|
||||
args := r.Called(sandboxID)
|
||||
return args.Error(0)
|
||||
}
|
||||
|
||||
func (r *Mock) ImageStats() (*kubecontainer.ImageStats, error) {
|
||||
args := r.Called()
|
||||
return args.Get(0).(*kubecontainer.ImageStats), args.Error(1)
|
||||
|
Reference in New Issue
Block a user