mirror of
https://github.com/optim-enterprises-bv/kubernetes.git
synced 2025-11-01 10:48:15 +00:00
Fix a bug that StatefulSet applies the revision incorrectly
This commit is contained in:
@@ -289,6 +289,39 @@ func TestCreateApplyRevision(t *testing.T) {
|
||||
}
|
||||
}
|
||||
|
||||
func TestRollingUpdateApplyRevision(t *testing.T) {
|
||||
set := newStatefulSet(1)
|
||||
set.Status.CollisionCount = new(int32)
|
||||
currentSet := set.DeepCopy()
|
||||
currentRevision, err := newRevision(set, 1, set.Status.CollisionCount)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
set.Spec.Template.Spec.Containers[0].Env = []v1.EnvVar{{Name: "foo", Value: "bar"}}
|
||||
updateSet := set.DeepCopy()
|
||||
updateRevision, err := newRevision(set, 2, set.Status.CollisionCount)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
restoredCurrentSet, err := ApplyRevision(set, currentRevision)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
if !reflect.DeepEqual(currentSet.Spec.Template, restoredCurrentSet.Spec.Template) {
|
||||
t.Errorf("want %v got %v", currentSet.Spec.Template, restoredCurrentSet.Spec.Template)
|
||||
}
|
||||
|
||||
restoredUpdateSet, err := ApplyRevision(set, updateRevision)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
if !reflect.DeepEqual(updateSet.Spec.Template, restoredUpdateSet.Spec.Template) {
|
||||
t.Errorf("want %v got %v", updateSet.Spec.Template, restoredUpdateSet.Spec.Template)
|
||||
}
|
||||
}
|
||||
|
||||
func TestGetPersistentVolumeClaims(t *testing.T) {
|
||||
|
||||
// nil inherits statefulset labels
|
||||
|
||||
Reference in New Issue
Block a user