mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-08-24 11:01:26 +00:00
skip update when deleting with grace-period=0
This commit is contained in:
parent
635cf5877f
commit
fdf6a0f61c
@ -673,7 +673,8 @@ func (t *Tester) testDeleteGracefulImmediate(obj runtime.Object, setFn SetFunc,
|
|||||||
t.Errorf("unexpected error, object should be deleted immediately: %v", err)
|
t.Errorf("unexpected error, object should be deleted immediately: %v", err)
|
||||||
}
|
}
|
||||||
objectMeta = t.getObjectMetaOrFail(out)
|
objectMeta = t.getObjectMetaOrFail(out)
|
||||||
if objectMeta.DeletionTimestamp == nil || objectMeta.DeletionGracePeriodSeconds == nil || *objectMeta.DeletionGracePeriodSeconds != 0 {
|
// the second delete shouldn't update the object, so the objectMeta.DeletionGracePeriodSeconds should eqaul to the value set in the first delete.
|
||||||
|
if objectMeta.DeletionTimestamp == nil || objectMeta.DeletionGracePeriodSeconds == nil || *objectMeta.DeletionGracePeriodSeconds != expectedGrace {
|
||||||
t.Errorf("unexpected deleted meta: %#v", objectMeta)
|
t.Errorf("unexpected deleted meta: %#v", objectMeta)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -387,7 +387,7 @@ func (e *Etcd) Delete(ctx api.Context, name string, options *api.DeleteOptions)
|
|||||||
if pendingGraceful {
|
if pendingGraceful {
|
||||||
return e.finalizeDelete(obj, false)
|
return e.finalizeDelete(obj, false)
|
||||||
}
|
}
|
||||||
if graceful {
|
if graceful && *options.GracePeriodSeconds > 0 {
|
||||||
out := e.NewFunc()
|
out := e.NewFunc()
|
||||||
lastGraceful := int64(0)
|
lastGraceful := int64(0)
|
||||||
err := e.Storage.GuaranteedUpdate(
|
err := e.Storage.GuaranteedUpdate(
|
||||||
|
@ -343,8 +343,12 @@ var _ = Describe("Pods", func() {
|
|||||||
Fail("Timeout while waiting for pod creation")
|
Fail("Timeout while waiting for pod creation")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// We need to wait for the pod to be scheduled, otherwise the deletion
|
||||||
|
// will be carried out immediately rather than gracefully.
|
||||||
|
expectNoError(framework.WaitForPodRunning(pod.Name))
|
||||||
|
|
||||||
By("deleting the pod gracefully")
|
By("deleting the pod gracefully")
|
||||||
if err := podClient.Delete(pod.Name, nil); err != nil {
|
if err := podClient.Delete(pod.Name, api.NewDeleteOptions(30)); err != nil {
|
||||||
Failf("Failed to delete pod: %v", err)
|
Failf("Failed to delete pod: %v", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -352,7 +356,7 @@ var _ = Describe("Pods", func() {
|
|||||||
deleted := false
|
deleted := false
|
||||||
timeout := false
|
timeout := false
|
||||||
var lastPod *api.Pod
|
var lastPod *api.Pod
|
||||||
timer := time.After(podStartTimeout)
|
timer := time.After(30 * time.Second)
|
||||||
for !deleted && !timeout {
|
for !deleted && !timeout {
|
||||||
select {
|
select {
|
||||||
case event, _ := <-w.ResultChan():
|
case event, _ := <-w.ResultChan():
|
||||||
|
Loading…
Reference in New Issue
Block a user