mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-30 15:05:27 +00:00
Merge pull request #119485 from carlory/cleanup-e2e-apps-framework-equal
e2e_apps: stop using deprecated framework.ExpectEqual
This commit is contained in:
commit
67733c650b
@ -142,7 +142,7 @@ var _ = SIGDescribe("ControllerRevision [Serial]", func() {
|
||||
ginkgo.By(fmt.Sprintf("Confirm DaemonSet %q successfully created with %q label", dsName, dsLabelSelector))
|
||||
dsList, err := csAppsV1.DaemonSets("").List(ctx, metav1.ListOptions{LabelSelector: dsLabelSelector})
|
||||
framework.ExpectNoError(err, "failed to list Daemon Sets")
|
||||
framework.ExpectEqual(len(dsList.Items), 1, "filtered list wasn't found")
|
||||
gomega.Expect(dsList.Items).To(gomega.HaveLen(1), "filtered list wasn't found")
|
||||
|
||||
ds, err := c.AppsV1().DaemonSets(ns).Get(ctx, dsName, metav1.GetOptions{})
|
||||
framework.ExpectNoError(err)
|
||||
@ -151,7 +151,7 @@ var _ = SIGDescribe("ControllerRevision [Serial]", func() {
|
||||
ginkgo.By(fmt.Sprintf("Listing all ControllerRevisions with label %q", dsLabelSelector))
|
||||
revs, err := csAppsV1.ControllerRevisions("").List(ctx, metav1.ListOptions{LabelSelector: dsLabelSelector})
|
||||
framework.ExpectNoError(err, "Failed to list ControllerRevision: %v", err)
|
||||
framework.ExpectEqual(len(revs.Items), 1, "Failed to find any controllerRevisions")
|
||||
gomega.Expect(revs.Items).To(gomega.HaveLen(1), "Failed to find any controllerRevisions")
|
||||
|
||||
// Locate the current ControllerRevision from the list
|
||||
var initialRevision *appsv1.ControllerRevision
|
||||
@ -169,7 +169,7 @@ var _ = SIGDescribe("ControllerRevision [Serial]", func() {
|
||||
payload := "{\"metadata\":{\"labels\":{\"" + initialRevision.Name + "\":\"patched\"}}}"
|
||||
patchedControllerRevision, err := csAppsV1.ControllerRevisions(ns).Patch(ctx, initialRevision.Name, types.StrategicMergePatchType, []byte(payload), metav1.PatchOptions{})
|
||||
framework.ExpectNoError(err, "failed to patch ControllerRevision %s in namespace %s", initialRevision.Name, ns)
|
||||
framework.ExpectEqual(patchedControllerRevision.Labels[initialRevision.Name], "patched", "Did not find 'patched' label for this ControllerRevision. Current labels: %v", patchedControllerRevision.Labels)
|
||||
gomega.Expect(patchedControllerRevision.Labels).To(gomega.HaveKeyWithValue(initialRevision.Name, "patched"), "Did not find 'patched' label for this ControllerRevision. Current labels: %v", patchedControllerRevision.Labels)
|
||||
framework.Logf("%s has been patched", patchedControllerRevision.Name)
|
||||
|
||||
ginkgo.By("Create a new ControllerRevision")
|
||||
@ -216,7 +216,7 @@ var _ = SIGDescribe("ControllerRevision [Serial]", func() {
|
||||
return err
|
||||
})
|
||||
framework.ExpectNoError(err, "failed to update ControllerRevision in namespace: %s", ns)
|
||||
framework.ExpectEqual(updatedControllerRevision.Labels[currentControllerRevision.Name], "updated", "Did not find 'updated' label for this ControllerRevision. Current labels: %v", currentControllerRevision.Labels)
|
||||
gomega.Expect(updatedControllerRevision.Labels).To(gomega.HaveKeyWithValue(currentControllerRevision.Name, "updated"), "Did not find 'updated' label for this ControllerRevision. Current labels: %v", updatedControllerRevision.Labels)
|
||||
framework.Logf("%s has been updated", updatedControllerRevision.Name)
|
||||
|
||||
ginkgo.By("Generate another ControllerRevision by patching the Daemonset")
|
||||
@ -242,7 +242,7 @@ var _ = SIGDescribe("ControllerRevision [Serial]", func() {
|
||||
|
||||
list, err := csAppsV1.ControllerRevisions(ns).List(ctx, metav1.ListOptions{})
|
||||
framework.ExpectNoError(err, "failed to list ControllerRevision")
|
||||
framework.ExpectEqual(list.Items[0].Revision, int64(3), "failed to find the expected revision for the Controller")
|
||||
gomega.Expect(list.Items[0].Revision).To(gomega.Equal(int64(3)), "failed to find the expected revision for the Controller")
|
||||
framework.Logf("ControllerRevision %q has revision %d", list.Items[0].Name, list.Items[0].Revision)
|
||||
})
|
||||
})
|
||||
|
@ -342,12 +342,12 @@ var _ = SIGDescribe("CronJob", func() {
|
||||
ginkgo.By("getting")
|
||||
gottenCronJob, err := cjClient.Get(ctx, createdCronJob.Name, metav1.GetOptions{})
|
||||
framework.ExpectNoError(err)
|
||||
framework.ExpectEqual(gottenCronJob.UID, createdCronJob.UID)
|
||||
gomega.Expect(gottenCronJob.UID).To(gomega.Equal(createdCronJob.UID))
|
||||
|
||||
ginkgo.By("listing")
|
||||
cjs, err := cjClient.List(ctx, metav1.ListOptions{LabelSelector: "special-label=" + f.UniqueName})
|
||||
framework.ExpectNoError(err)
|
||||
framework.ExpectEqual(len(cjs.Items), 1, "filtered list should have 1 item")
|
||||
gomega.Expect(cjs.Items).To(gomega.HaveLen(1), "filtered list should have 1 item")
|
||||
|
||||
ginkgo.By("watching")
|
||||
framework.Logf("starting watch")
|
||||
@ -359,7 +359,7 @@ var _ = SIGDescribe("CronJob", func() {
|
||||
ginkgo.By("cluster-wide listing")
|
||||
clusterCJs, err := clusterCJClient.List(ctx, metav1.ListOptions{LabelSelector: "special-label=" + f.UniqueName})
|
||||
framework.ExpectNoError(err)
|
||||
framework.ExpectEqual(len(clusterCJs.Items), 1, "filtered list should have 1 items")
|
||||
gomega.Expect(clusterCJs.Items).To(gomega.HaveLen(1), "filtered list should have 1 item")
|
||||
|
||||
ginkgo.By("cluster-wide watching")
|
||||
framework.Logf("starting watch")
|
||||
@ -370,7 +370,7 @@ var _ = SIGDescribe("CronJob", func() {
|
||||
patchedCronJob, err := cjClient.Patch(ctx, createdCronJob.Name, types.MergePatchType,
|
||||
[]byte(`{"metadata":{"annotations":{"patched":"true"}}}`), metav1.PatchOptions{})
|
||||
framework.ExpectNoError(err)
|
||||
framework.ExpectEqual(patchedCronJob.Annotations["patched"], "true", "patched object should have the applied annotation")
|
||||
gomega.Expect(patchedCronJob.Annotations).To(gomega.HaveKeyWithValue("patched", "true"), "patched object should have the applied annotation")
|
||||
|
||||
ginkgo.By("updating")
|
||||
var cjToUpdate, updatedCronJob *batchv1.CronJob
|
||||
@ -384,7 +384,7 @@ var _ = SIGDescribe("CronJob", func() {
|
||||
return err
|
||||
})
|
||||
framework.ExpectNoError(err)
|
||||
framework.ExpectEqual(updatedCronJob.Annotations["updated"], "true", "updated object should have the applied annotation")
|
||||
gomega.Expect(updatedCronJob.Annotations).To(gomega.HaveKeyWithValue("updated", "true"), "updated object should have the applied annotation")
|
||||
|
||||
framework.Logf("waiting for watch events with expected annotations")
|
||||
for sawAnnotations := false; !sawAnnotations; {
|
||||
@ -394,7 +394,7 @@ var _ = SIGDescribe("CronJob", func() {
|
||||
if !ok {
|
||||
framework.Fail("Watch channel is closed.")
|
||||
}
|
||||
framework.ExpectEqual(evt.Type, watch.Modified)
|
||||
gomega.Expect(evt.Type).To(gomega.Equal(watch.Modified))
|
||||
watchedCronJob, isCronJob := evt.Object.(*batchv1.CronJob)
|
||||
if !isCronJob {
|
||||
framework.Failf("expected CronJob, got %T", evt.Object)
|
||||
@ -427,7 +427,7 @@ var _ = SIGDescribe("CronJob", func() {
|
||||
if !patchedStatus.Status.LastScheduleTime.Equal(&now1) {
|
||||
framework.Failf("patched object should have the applied lastScheduleTime %#v, got %#v instead", cjStatus.LastScheduleTime, patchedStatus.Status.LastScheduleTime)
|
||||
}
|
||||
framework.ExpectEqual(patchedStatus.Annotations["patchedstatus"], "true", "patched object should have the applied annotation")
|
||||
gomega.Expect(patchedStatus.Annotations).To(gomega.HaveKeyWithValue("patchedstatus", "true"), "patched object should have the applied annotation")
|
||||
|
||||
ginkgo.By("updating /status")
|
||||
// we need to use RFC3339 version since conversion over the wire cuts nanoseconds
|
||||
@ -454,7 +454,7 @@ var _ = SIGDescribe("CronJob", func() {
|
||||
framework.ExpectNoError(err)
|
||||
statusUID, _, err := unstructured.NestedFieldCopy(gottenStatus.Object, "metadata", "uid")
|
||||
framework.ExpectNoError(err)
|
||||
framework.ExpectEqual(string(createdCronJob.UID), statusUID, fmt.Sprintf("createdCronJob.UID: %v expected to match statusUID: %v ", createdCronJob.UID, statusUID))
|
||||
gomega.Expect(string(createdCronJob.UID)).To(gomega.Equal(statusUID), "createdCronJob.UID: %v expected to match statusUID: %v ", createdCronJob.UID, statusUID)
|
||||
|
||||
// CronJob resource delete operations
|
||||
expectFinalizer := func(cj *batchv1.CronJob, msg string) {
|
||||
@ -508,7 +508,7 @@ func ensureHistoryLimits(ctx context.Context, c clientset.Interface, ns string,
|
||||
activeJobs, finishedJobs := filterActiveJobs(jobs)
|
||||
if len(finishedJobs) != 1 {
|
||||
framework.Logf("Expected one finished job in namespace %s; activeJobs=%v; finishedJobs=%v", ns, activeJobs, finishedJobs)
|
||||
framework.ExpectEqual(len(finishedJobs), 1)
|
||||
gomega.Expect(finishedJobs).To(gomega.HaveLen(1))
|
||||
}
|
||||
|
||||
// Job should get deleted when the next job finishes the next minute
|
||||
@ -524,7 +524,7 @@ func ensureHistoryLimits(ctx context.Context, c clientset.Interface, ns string,
|
||||
activeJobs, finishedJobs = filterActiveJobs(jobs)
|
||||
if len(finishedJobs) != 1 {
|
||||
framework.Logf("Expected one finished job in namespace %s; activeJobs=%v; finishedJobs=%v", ns, activeJobs, finishedJobs)
|
||||
framework.ExpectEqual(len(finishedJobs), 1)
|
||||
gomega.Expect(finishedJobs).To(gomega.HaveLen(1))
|
||||
}
|
||||
|
||||
ginkgo.By("Removing cronjob")
|
||||
|
@ -221,7 +221,7 @@ var _ = SIGDescribe("Daemon set [Serial]", func() {
|
||||
newNode, err := setDaemonSetNodeLabels(ctx, c, node.Name, nodeSelector)
|
||||
framework.ExpectNoError(err, "error setting labels on node")
|
||||
daemonSetLabels, _ := separateDaemonSetNodeLabels(newNode.Labels)
|
||||
framework.ExpectEqual(len(daemonSetLabels), 1)
|
||||
gomega.Expect(daemonSetLabels).To(gomega.HaveLen(1))
|
||||
err = wait.PollImmediateWithContext(ctx, dsRetryPeriod, dsRetryTimeout, e2edaemonset.CheckDaemonPodOnNodes(f, ds, []string{newNode.Name}))
|
||||
framework.ExpectNoError(err, "error waiting for daemon pods to be running on new nodes")
|
||||
err = e2edaemonset.CheckDaemonStatus(ctx, f, dsName)
|
||||
@ -240,7 +240,7 @@ var _ = SIGDescribe("Daemon set [Serial]", func() {
|
||||
ds, err = c.AppsV1().DaemonSets(ns).Patch(ctx, dsName, types.StrategicMergePatchType, []byte(patch), metav1.PatchOptions{})
|
||||
framework.ExpectNoError(err, "error patching daemon set")
|
||||
daemonSetLabels, _ = separateDaemonSetNodeLabels(greenNode.Labels)
|
||||
framework.ExpectEqual(len(daemonSetLabels), 1)
|
||||
gomega.Expect(daemonSetLabels).To(gomega.HaveLen(1))
|
||||
err = wait.PollImmediateWithContext(ctx, dsRetryPeriod, dsRetryTimeout, e2edaemonset.CheckDaemonPodOnNodes(f, ds, []string{greenNode.Name}))
|
||||
framework.ExpectNoError(err, "error waiting for daemon pods to be running on new nodes")
|
||||
err = e2edaemonset.CheckDaemonStatus(ctx, f, dsName)
|
||||
@ -284,7 +284,7 @@ var _ = SIGDescribe("Daemon set [Serial]", func() {
|
||||
newNode, err := setDaemonSetNodeLabels(ctx, c, node.Name, nodeSelector)
|
||||
framework.ExpectNoError(err, "error setting labels on node")
|
||||
daemonSetLabels, _ := separateDaemonSetNodeLabels(newNode.Labels)
|
||||
framework.ExpectEqual(len(daemonSetLabels), 1)
|
||||
gomega.Expect(daemonSetLabels).To(gomega.HaveLen(1))
|
||||
err = wait.PollImmediateWithContext(ctx, dsRetryPeriod, dsRetryTimeout, e2edaemonset.CheckDaemonPodOnNodes(f, ds, []string{newNode.Name}))
|
||||
framework.ExpectNoError(err, "error waiting for daemon pods to be running on new nodes")
|
||||
err = e2edaemonset.CheckDaemonStatus(ctx, f, dsName)
|
||||
@ -351,7 +351,7 @@ var _ = SIGDescribe("Daemon set [Serial]", func() {
|
||||
waitForHistoryCreated(ctx, c, ns, label, 1)
|
||||
first := curHistory(listDaemonHistories(ctx, c, ns, label), ds)
|
||||
firstHash := first.Labels[appsv1.DefaultDaemonSetUniqueLabelKey]
|
||||
framework.ExpectEqual(first.Revision, int64(1))
|
||||
gomega.Expect(first.Revision).To(gomega.Equal(int64(1)))
|
||||
checkDaemonSetPodsLabels(listDaemonPods(ctx, c, ns, label), firstHash)
|
||||
|
||||
ginkgo.By("Update daemon pods image.")
|
||||
@ -372,7 +372,7 @@ var _ = SIGDescribe("Daemon set [Serial]", func() {
|
||||
framework.ExpectNoError(err)
|
||||
waitForHistoryCreated(ctx, c, ns, label, 2)
|
||||
cur := curHistory(listDaemonHistories(ctx, c, ns, label), ds)
|
||||
framework.ExpectEqual(cur.Revision, int64(2))
|
||||
gomega.Expect(cur.Revision).To(gomega.Equal(int64(2)))
|
||||
gomega.Expect(cur.Labels).NotTo(gomega.HaveKeyWithValue(appsv1.DefaultDaemonSetUniqueLabelKey, firstHash))
|
||||
checkDaemonSetPodsLabels(listDaemonPods(ctx, c, ns, label), firstHash)
|
||||
})
|
||||
@ -401,7 +401,7 @@ var _ = SIGDescribe("Daemon set [Serial]", func() {
|
||||
waitForHistoryCreated(ctx, c, ns, label, 1)
|
||||
cur := curHistory(listDaemonHistories(ctx, c, ns, label), ds)
|
||||
hash := cur.Labels[appsv1.DefaultDaemonSetUniqueLabelKey]
|
||||
framework.ExpectEqual(cur.Revision, int64(1))
|
||||
gomega.Expect(cur.Revision).To(gomega.Equal(int64(1)))
|
||||
checkDaemonSetPodsLabels(listDaemonPods(ctx, c, ns, label), hash)
|
||||
|
||||
ginkgo.By("Update daemon pods image.")
|
||||
@ -430,7 +430,7 @@ var _ = SIGDescribe("Daemon set [Serial]", func() {
|
||||
waitForHistoryCreated(ctx, c, ns, label, 2)
|
||||
cur = curHistory(listDaemonHistories(ctx, c, ns, label), ds)
|
||||
hash = cur.Labels[appsv1.DefaultDaemonSetUniqueLabelKey]
|
||||
framework.ExpectEqual(cur.Revision, int64(2))
|
||||
gomega.Expect(cur.Revision).To(gomega.Equal(int64(2)))
|
||||
checkDaemonSetPodsLabels(listDaemonPods(ctx, c, ns, label), hash)
|
||||
})
|
||||
|
||||
@ -484,7 +484,7 @@ var _ = SIGDescribe("Daemon set [Serial]", func() {
|
||||
schedulableNodes, err = e2enode.GetReadySchedulableNodes(ctx, c)
|
||||
framework.ExpectNoError(err)
|
||||
if len(schedulableNodes.Items) < 2 {
|
||||
framework.ExpectEqual(len(existingPods), 0)
|
||||
gomega.Expect(existingPods).To(gomega.BeEmpty())
|
||||
} else {
|
||||
gomega.Expect(existingPods).NotTo(gomega.BeEmpty())
|
||||
}
|
||||
@ -571,7 +571,7 @@ var _ = SIGDescribe("Daemon set [Serial]", func() {
|
||||
waitForHistoryCreated(ctx, c, ns, label, 1)
|
||||
cur := curHistory(listDaemonHistories(ctx, c, ns, label), ds)
|
||||
hash := cur.Labels[appsv1.DefaultDaemonSetUniqueLabelKey]
|
||||
framework.ExpectEqual(cur.Revision, int64(1))
|
||||
gomega.Expect(cur.Revision).To(gomega.Equal(int64(1)))
|
||||
checkDaemonSetPodsLabels(listDaemonPods(ctx, c, ns, label), hash)
|
||||
|
||||
newVersion := "2"
|
||||
@ -822,7 +822,7 @@ var _ = SIGDescribe("Daemon set [Serial]", func() {
|
||||
waitForHistoryCreated(ctx, c, ns, label, 2)
|
||||
cur = curHistory(listDaemonHistories(ctx, c, ns, label), ds)
|
||||
hash = cur.Labels[appsv1.DefaultDaemonSetUniqueLabelKey]
|
||||
framework.ExpectEqual(cur.Revision, int64(2))
|
||||
gomega.Expect(cur.Revision).To(gomega.Equal(int64(2)))
|
||||
checkDaemonSetPodsLabels(listDaemonPods(ctx, c, ns, label), hash)
|
||||
})
|
||||
|
||||
@ -854,7 +854,7 @@ var _ = SIGDescribe("Daemon set [Serial]", func() {
|
||||
ginkgo.By("listing all DaemonSets")
|
||||
dsList, err := cs.AppsV1().DaemonSets("").List(ctx, metav1.ListOptions{LabelSelector: labelSelector})
|
||||
framework.ExpectNoError(err, "failed to list Daemon Sets")
|
||||
framework.ExpectEqual(len(dsList.Items), 1, "filtered list wasn't found")
|
||||
gomega.Expect(dsList.Items).To(gomega.HaveLen(1), "filtered list wasn't found")
|
||||
|
||||
ginkgo.By("DeleteCollection of the DaemonSets")
|
||||
err = dsClient.DeleteCollection(ctx, metav1.DeleteOptions{GracePeriodSeconds: &one}, metav1.ListOptions{LabelSelector: labelSelector})
|
||||
@ -863,7 +863,7 @@ var _ = SIGDescribe("Daemon set [Serial]", func() {
|
||||
ginkgo.By("Verify that ReplicaSets have been deleted")
|
||||
dsList, err = c.AppsV1().DaemonSets("").List(ctx, metav1.ListOptions{LabelSelector: labelSelector})
|
||||
framework.ExpectNoError(err, "failed to list DaemonSets")
|
||||
framework.ExpectEqual(len(dsList.Items), 0, "filtered list should have no daemonset")
|
||||
gomega.Expect(dsList.Items).To(gomega.BeEmpty(), "filtered list should have no daemonset")
|
||||
})
|
||||
|
||||
/* Release: v1.22
|
||||
@ -1207,7 +1207,7 @@ func checkDaemonSetPodsLabels(podList *v1.PodList, hash string) {
|
||||
podHash := pod.Labels[appsv1.DefaultDaemonSetUniqueLabelKey]
|
||||
gomega.Expect(podHash).ToNot(gomega.BeEmpty())
|
||||
if len(hash) > 0 {
|
||||
framework.ExpectEqual(podHash, hash, "unexpected hash for pod %s", pod.Name)
|
||||
gomega.Expect(podHash).To(gomega.Equal(hash), "unexpected hash for pod %s", pod.Name)
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1253,7 +1253,7 @@ func curHistory(historyList *appsv1.ControllerRevisionList, ds *appsv1.DaemonSet
|
||||
foundCurHistories++
|
||||
}
|
||||
}
|
||||
framework.ExpectEqual(foundCurHistories, 1)
|
||||
gomega.Expect(foundCurHistories).To(gomega.Equal(1))
|
||||
gomega.Expect(curHistory).NotTo(gomega.BeNil())
|
||||
return curHistory
|
||||
}
|
||||
|
@ -373,8 +373,8 @@ var _ = SIGDescribe("Deployment", func() {
|
||||
deploymentGet := appsv1.Deployment{}
|
||||
err = runtime.DefaultUnstructuredConverter.FromUnstructured(deploymentGetUnstructured.Object, &deploymentGet)
|
||||
framework.ExpectNoError(err, "failed to convert the unstructured response to a Deployment")
|
||||
framework.ExpectEqual(deploymentGet.Spec.Template.Spec.Containers[0].Image, testDeploymentUpdateImage, "failed to update image")
|
||||
framework.ExpectEqual(deploymentGet.ObjectMeta.Labels["test-deployment"], "updated", "failed to update labels")
|
||||
gomega.Expect(deploymentGet.Spec.Template.Spec.Containers[0].Image).To(gomega.Equal(testDeploymentUpdateImage), "failed to update image")
|
||||
gomega.Expect(deploymentGet.ObjectMeta.Labels).To(gomega.HaveKeyWithValue("test-deployment", "updated"), "failed to update labels")
|
||||
|
||||
ctxUntil, cancel = context.WithTimeout(ctx, f.Timeouts.PodStart)
|
||||
defer cancel()
|
||||
@ -432,8 +432,9 @@ var _ = SIGDescribe("Deployment", func() {
|
||||
deploymentGet = appsv1.Deployment{}
|
||||
err = runtime.DefaultUnstructuredConverter.FromUnstructured(deploymentGetUnstructured.Object, &deploymentGet)
|
||||
framework.ExpectNoError(err, "failed to convert the unstructured response to a Deployment")
|
||||
framework.ExpectEqual(deploymentGet.Spec.Template.Spec.Containers[0].Image, testDeploymentUpdateImage, "failed to update image")
|
||||
framework.ExpectEqual(deploymentGet.ObjectMeta.Labels["test-deployment"], "updated", "failed to update labels")
|
||||
gomega.Expect(deploymentGet.Spec.Template.Spec.Containers[0].Image).To(gomega.Equal(testDeploymentUpdateImage), "failed to update image")
|
||||
gomega.Expect(deploymentGet.ObjectMeta.Labels).To(gomega.HaveKeyWithValue("test-deployment", "updated"), "failed to update labels")
|
||||
|
||||
ctxUntil, cancel = context.WithTimeout(ctx, f.Timeouts.PodStart)
|
||||
defer cancel()
|
||||
_, err = watchtools.Until(ctxUntil, deploymentsList.ResourceVersion, w, func(event watch.Event) (bool, error) {
|
||||
@ -782,7 +783,7 @@ func testRollingUpdateDeployment(ctx context.Context, f *framework.Framework) {
|
||||
framework.ExpectNoError(err)
|
||||
_, allOldRSs, err := testutil.GetOldReplicaSets(deployment, c)
|
||||
framework.ExpectNoError(err)
|
||||
framework.ExpectEqual(len(allOldRSs), 1)
|
||||
gomega.Expect(allOldRSs).To(gomega.HaveLen(1))
|
||||
}
|
||||
|
||||
func testRecreateDeployment(ctx context.Context, f *framework.Framework) {
|
||||
@ -984,8 +985,8 @@ func testRolloverDeployment(ctx context.Context, f *framework.Framework) {
|
||||
}
|
||||
|
||||
func ensureReplicas(rs *appsv1.ReplicaSet, replicas int32) {
|
||||
framework.ExpectEqual(*rs.Spec.Replicas, replicas)
|
||||
framework.ExpectEqual(rs.Status.Replicas, replicas)
|
||||
gomega.Expect(*rs.Spec.Replicas).To(gomega.Equal(replicas))
|
||||
gomega.Expect(rs.Status.Replicas).To(gomega.Equal(replicas))
|
||||
}
|
||||
|
||||
func randomScale(d *appsv1.Deployment, i int) {
|
||||
@ -1141,7 +1142,7 @@ func testDeploymentsControllerRef(ctx context.Context, f *framework.Framework) {
|
||||
|
||||
framework.Logf("Verifying Deployment %q has only one ReplicaSet", deploymentName)
|
||||
rsList := listDeploymentReplicaSets(ctx, c, ns, podLabels)
|
||||
framework.ExpectEqual(len(rsList.Items), 1)
|
||||
gomega.Expect(rsList.Items).To(gomega.HaveLen(1))
|
||||
|
||||
framework.Logf("Obtaining the ReplicaSet's UID")
|
||||
orphanedRSUID := rsList.Items[0].UID
|
||||
@ -1172,10 +1173,10 @@ func testDeploymentsControllerRef(ctx context.Context, f *framework.Framework) {
|
||||
|
||||
framework.Logf("Verifying no extra ReplicaSet is created (Deployment %q still has only one ReplicaSet after adoption)", deploymentName)
|
||||
rsList = listDeploymentReplicaSets(ctx, c, ns, podLabels)
|
||||
framework.ExpectEqual(len(rsList.Items), 1)
|
||||
gomega.Expect(rsList.Items).To(gomega.HaveLen(1))
|
||||
|
||||
framework.Logf("Verifying the ReplicaSet has the same UID as the orphaned ReplicaSet")
|
||||
framework.ExpectEqual(rsList.Items[0].UID, orphanedRSUID)
|
||||
gomega.Expect(rsList.Items[0].UID).To(gomega.Equal(orphanedRSUID))
|
||||
}
|
||||
|
||||
// testProportionalScalingDeployment tests that when a RollingUpdate Deployment is scaled in the middle
|
||||
@ -1258,7 +1259,7 @@ func testProportionalScalingDeployment(ctx context.Context, f *framework.Framewo
|
||||
|
||||
// Second rollout's replicaset should have 0 available replicas.
|
||||
framework.Logf("Verifying that the second rollout's replicaset has .status.availableReplicas = 0")
|
||||
framework.ExpectEqual(secondRS.Status.AvailableReplicas, int32(0))
|
||||
gomega.Expect(secondRS.Status.AvailableReplicas).To(gomega.Equal(int32(0)))
|
||||
|
||||
// Second rollout's replicaset should have Deployment's (replicas + maxSurge - first RS's replicas) = 10 + 3 - 8 = 5 for .spec.replicas.
|
||||
newReplicas := replicas + int32(maxSurge) - minAvailableReplicas
|
||||
@ -1664,8 +1665,8 @@ func testDeploymentSubresources(ctx context.Context, f *framework.Framework) {
|
||||
if err != nil {
|
||||
framework.Failf("Failed to get scale subresource: %v", err)
|
||||
}
|
||||
framework.ExpectEqual(scale.Spec.Replicas, int32(1))
|
||||
framework.ExpectEqual(scale.Status.Replicas, int32(1))
|
||||
gomega.Expect(scale.Spec.Replicas).To(gomega.Equal(int32(1)))
|
||||
gomega.Expect(scale.Status.Replicas).To(gomega.Equal(int32(1)))
|
||||
|
||||
ginkgo.By("updating a scale subresource")
|
||||
scale.ResourceVersion = "" // indicate the scale update should be unconditional
|
||||
@ -1674,14 +1675,14 @@ func testDeploymentSubresources(ctx context.Context, f *framework.Framework) {
|
||||
if err != nil {
|
||||
framework.Failf("Failed to put scale subresource: %v", err)
|
||||
}
|
||||
framework.ExpectEqual(scaleResult.Spec.Replicas, int32(2))
|
||||
gomega.Expect(scaleResult.Spec.Replicas).To(gomega.Equal(int32(2)))
|
||||
|
||||
ginkgo.By("verifying the deployment Spec.Replicas was modified")
|
||||
deployment, err := c.AppsV1().Deployments(ns).Get(ctx, deploymentName, metav1.GetOptions{})
|
||||
if err != nil {
|
||||
framework.Failf("Failed to get deployment resource: %v", err)
|
||||
}
|
||||
framework.ExpectEqual(*(deployment.Spec.Replicas), int32(2))
|
||||
gomega.Expect(*(deployment.Spec.Replicas)).To(gomega.Equal(int32(2)))
|
||||
|
||||
ginkgo.By("Patch a scale subresource")
|
||||
scale.ResourceVersion = "" // indicate the scale update should be unconditional
|
||||
@ -1698,5 +1699,5 @@ func testDeploymentSubresources(ctx context.Context, f *framework.Framework) {
|
||||
|
||||
deployment, err = c.AppsV1().Deployments(ns).Get(ctx, deploymentName, metav1.GetOptions{})
|
||||
framework.ExpectNoError(err, "Failed to get deployment resource: %v", err)
|
||||
framework.ExpectEqual(*(deployment.Spec.Replicas), int32(4), "deployment should have 4 replicas")
|
||||
gomega.Expect(*(deployment.Spec.Replicas)).To(gomega.Equal(int32(4)), "deployment should have 4 replicas")
|
||||
}
|
||||
|
@ -115,7 +115,7 @@ var _ = SIGDescribe("DisruptionController", func() {
|
||||
pdb.Spec.MinAvailable = &newMinAvailable
|
||||
return pdb
|
||||
}, cs.PolicyV1().PodDisruptionBudgets(ns).Update)
|
||||
framework.ExpectEqual(updatedPDB.Spec.MinAvailable.String(), "2%")
|
||||
gomega.Expect(updatedPDB.Spec.MinAvailable.String()).To(gomega.Equal("2%"))
|
||||
|
||||
ginkgo.By("patching the pdb")
|
||||
patchedPDB := patchPDBOrDie(ctx, cs, dc, ns, defaultName, func(old *policyv1.PodDisruptionBudget) (bytes []byte, err error) {
|
||||
@ -127,7 +127,7 @@ var _ = SIGDescribe("DisruptionController", func() {
|
||||
framework.ExpectNoError(err, "failed to marshal JSON for new data")
|
||||
return newBytes, nil
|
||||
})
|
||||
framework.ExpectEqual(patchedPDB.Spec.MinAvailable.String(), "3%")
|
||||
gomega.Expect(patchedPDB.Spec.MinAvailable.String()).To(gomega.Equal("3%"))
|
||||
|
||||
deletePDBOrDie(ctx, cs, ns, defaultName)
|
||||
})
|
||||
@ -500,7 +500,7 @@ func deletePDBOrDie(ctx context.Context, cs kubernetes.Interface, ns string, nam
|
||||
func listPDBs(ctx context.Context, cs kubernetes.Interface, ns string, labelSelector string, count int, expectedPDBNames []string) {
|
||||
pdbList, err := cs.PolicyV1().PodDisruptionBudgets(ns).List(ctx, metav1.ListOptions{LabelSelector: labelSelector})
|
||||
framework.ExpectNoError(err, "Listing PDB set in namespace %s", ns)
|
||||
framework.ExpectEqual(len(pdbList.Items), count, "Expecting %d PDBs returned in namespace %s", count, ns)
|
||||
gomega.Expect(pdbList.Items).To(gomega.HaveLen(count), "Expecting %d PDBs returned in namespace %s", count, ns)
|
||||
|
||||
pdbNames := make([]string, 0)
|
||||
for _, item := range pdbList.Items {
|
||||
|
@ -19,7 +19,6 @@ package apps
|
||||
import (
|
||||
"context"
|
||||
"encoding/json"
|
||||
"errors"
|
||||
"fmt"
|
||||
"strconv"
|
||||
"time"
|
||||
@ -99,7 +98,7 @@ var _ = SIGDescribe("Job", func() {
|
||||
successes++
|
||||
}
|
||||
}
|
||||
framework.ExpectEqual(successes, completions, "expected %d successful job pods, but got %d", completions, successes)
|
||||
gomega.Expect(successes).To(gomega.Equal(completions), "expected %d successful job pods, but got %d", completions, successes)
|
||||
})
|
||||
|
||||
ginkgo.It("should allow to use the pod failure policy on exit code to fail the job early", func(ctx context.Context) {
|
||||
@ -216,7 +215,7 @@ var _ = SIGDescribe("Job", func() {
|
||||
|
||||
pods, err := e2ejob.GetAllRunningJobPods(ctx, f.ClientSet, f.Namespace.Name, job.Name)
|
||||
framework.ExpectNoError(err, "failed to get running pods for the job: %s/%s", job.Name, job.Namespace)
|
||||
framework.ExpectEqual(len(pods), 1, "Exactly one running pod is expected")
|
||||
gomega.Expect(pods).To(gomega.HaveLen(1), "Exactly one running pod is expected")
|
||||
pod := pods[0]
|
||||
ginkgo.By(fmt.Sprintf("Evicting the running pod: %s/%s", pod.Name, pod.Namespace))
|
||||
evictTarget := &policyv1.Eviction{
|
||||
@ -281,13 +280,14 @@ var _ = SIGDescribe("Job", func() {
|
||||
framework.ExpectNoError(err, "failed to create job in namespace: %s", f.Namespace.Name)
|
||||
|
||||
ginkgo.By("Ensuring pods aren't created for job")
|
||||
framework.ExpectEqual(wait.Poll(framework.Poll, wait.ForeverTestTimeout, func() (bool, error) {
|
||||
err = framework.Gomega().Consistently(ctx, framework.HandleRetry(func(ctx context.Context) ([]v1.Pod, error) {
|
||||
pods, err := e2ejob.GetJobPods(ctx, f.ClientSet, f.Namespace.Name, job.Name)
|
||||
if err != nil {
|
||||
return false, err
|
||||
return nil, fmt.Errorf("failed to list pod for a given job %s in namespace %s: %w", job.Name, f.Namespace.Name, err)
|
||||
}
|
||||
return len(pods.Items) > 0, nil
|
||||
}), wait.ErrorInterrupted(errors.New("timed out waiting for the condition")))
|
||||
return pods.Items, nil
|
||||
})).WithPolling(framework.Poll).WithTimeout(wait.ForeverTestTimeout).Should(gomega.BeEmpty())
|
||||
framework.ExpectNoError(err, "failed to confirm that pods aren't created for job %s in namespace %s", job.Name, f.Namespace.Name)
|
||||
|
||||
ginkgo.By("Checking Job status to observe Suspended state")
|
||||
job, err = e2ejob.GetJob(ctx, f.ClientSet, f.Namespace.Name, job.Name)
|
||||
@ -325,21 +325,15 @@ var _ = SIGDescribe("Job", func() {
|
||||
framework.ExpectNoError(err, "failed to ensure number of pods associated with job %s is equal to parallelism count in namespace: %s", job.Name, f.Namespace.Name)
|
||||
|
||||
ginkgo.By("Updating the job with suspend=true")
|
||||
err = wait.PollImmediate(framework.Poll, framework.SingleCallTimeout, func() (bool, error) {
|
||||
err = retry.RetryOnConflict(retry.DefaultRetry, func() error {
|
||||
job, err = e2ejob.GetJob(ctx, f.ClientSet, f.Namespace.Name, job.Name)
|
||||
if err != nil {
|
||||
return false, err
|
||||
}
|
||||
framework.ExpectNoError(err, "unable to get job %s in namespace %s", job.Name, f.Namespace.Name)
|
||||
job.Spec.Suspend = pointer.Bool(true)
|
||||
updatedJob, err := e2ejob.UpdateJob(ctx, f.ClientSet, f.Namespace.Name, job)
|
||||
if err == nil {
|
||||
job = updatedJob
|
||||
return true, nil
|
||||
}
|
||||
if apierrors.IsConflict(err) {
|
||||
return false, nil
|
||||
}
|
||||
return false, err
|
||||
return err
|
||||
})
|
||||
framework.ExpectNoError(err, "failed to update job in namespace: %s", f.Namespace.Name)
|
||||
|
||||
@ -390,12 +384,12 @@ var _ = SIGDescribe("Job", func() {
|
||||
framework.ExpectNoError(err, "failed obtaining completion index from pod in namespace: %s", f.Namespace.Name)
|
||||
succeededIndexes.Insert(ix)
|
||||
expectedName := fmt.Sprintf("%s-%d", job.Name, ix)
|
||||
framework.ExpectEqual(pod.Spec.Hostname, expectedName, "expected completed pod with hostname %s, but got %s", expectedName, pod.Spec.Hostname)
|
||||
gomega.Expect(pod.Spec.Hostname).To(gomega.Equal(expectedName), "expected completed pod with hostname %s, but got %s", expectedName, pod.Spec.Hostname)
|
||||
}
|
||||
}
|
||||
gotIndexes := succeededIndexes.List()
|
||||
wantIndexes := []int{0, 1, 2, 3}
|
||||
framework.ExpectEqual(gotIndexes, wantIndexes, "expected completed indexes %s, but got %s", wantIndexes, gotIndexes)
|
||||
gomega.Expect(gotIndexes).To(gomega.Equal(wantIndexes), "expected completed indexes %s, but got %s", wantIndexes, gotIndexes)
|
||||
})
|
||||
|
||||
/*
|
||||
@ -581,7 +575,7 @@ var _ = SIGDescribe("Job", func() {
|
||||
framework.ExpectNoError(err, "failed to get PodList for job %s in namespace: %s", job.Name, f.Namespace.Name)
|
||||
gomega.Expect(pods.Items).To(gomega.HaveLen(backoff + 1))
|
||||
for _, pod := range pods.Items {
|
||||
framework.ExpectEqual(pod.Status.Phase, v1.PodFailed)
|
||||
gomega.Expect(pod.Status.Phase).To(gomega.Equal(v1.PodFailed))
|
||||
}
|
||||
})
|
||||
|
||||
@ -628,7 +622,7 @@ var _ = SIGDescribe("Job", func() {
|
||||
successes++
|
||||
}
|
||||
}
|
||||
framework.ExpectEqual(successes, largeCompletions, "expected %d successful job pods, but got %d", largeCompletions, successes)
|
||||
gomega.Expect(successes).To(gomega.Equal(largeCompletions), "expected %d successful job pods, but got %d", largeCompletions, successes)
|
||||
})
|
||||
|
||||
/*
|
||||
@ -671,7 +665,7 @@ var _ = SIGDescribe("Job", func() {
|
||||
if !patchedStatus.Status.StartTime.Equal(&now1) {
|
||||
framework.Failf("patched object should have the applied StartTime %#v, got %#v instead", jStatus.StartTime, patchedStatus.Status.StartTime)
|
||||
}
|
||||
framework.ExpectEqual(patchedStatus.Annotations["patchedstatus"], "true", "patched object should have the applied annotation")
|
||||
gomega.Expect(patchedStatus.Annotations).To(gomega.HaveKeyWithValue("patchedstatus", "true"), "patched object should have the applied annotation")
|
||||
|
||||
ginkgo.By("updating /status")
|
||||
// we need to use RFC3339 version since conversion over the wire cuts nanoseconds
|
||||
@ -697,7 +691,7 @@ var _ = SIGDescribe("Job", func() {
|
||||
framework.ExpectNoError(err)
|
||||
statusUID, _, err := unstructured.NestedFieldCopy(gottenStatus.Object, "metadata", "uid")
|
||||
framework.ExpectNoError(err)
|
||||
framework.ExpectEqual(string(job.UID), statusUID, fmt.Sprintf("job.UID: %v expected to match statusUID: %v ", job.UID, statusUID))
|
||||
gomega.Expect(string(job.UID)).To(gomega.Equal(statusUID), fmt.Sprintf("job.UID: %v expected to match statusUID: %v ", job.UID, statusUID))
|
||||
})
|
||||
|
||||
/*
|
||||
@ -753,7 +747,7 @@ var _ = SIGDescribe("Job", func() {
|
||||
updatedValue: "patched",
|
||||
}
|
||||
waitForJobEvent(ctx, c)
|
||||
framework.ExpectEqual(patchedJob.Labels[jobName], "patched", "Did not find job label for this job. Current labels: %v", patchedJob.Labels)
|
||||
gomega.Expect(patchedJob.Labels).To(gomega.HaveKeyWithValue(jobName, "patched"), "Did not find job label for this job. Current labels: %v", patchedJob.Labels)
|
||||
|
||||
ginkgo.By("Updating the job")
|
||||
var updatedJob *batchv1.Job
|
||||
@ -784,13 +778,13 @@ var _ = SIGDescribe("Job", func() {
|
||||
updatedValue: "true",
|
||||
}
|
||||
waitForJobEvent(ctx, c)
|
||||
framework.ExpectEqual(updatedJob.Annotations["updated"], "true", "updated Job should have the applied annotation")
|
||||
gomega.Expect(updatedJob.Annotations).To(gomega.HaveKeyWithValue("updated", "true"), "updated Job should have the applied annotation")
|
||||
framework.Logf("Found Job annotations: %#v", patchedJob.Annotations)
|
||||
|
||||
ginkgo.By("Listing all Jobs with LabelSelector")
|
||||
jobs, err := f.ClientSet.BatchV1().Jobs("").List(ctx, metav1.ListOptions{LabelSelector: labelSelector})
|
||||
framework.ExpectNoError(err, "Failed to list job. %v", err)
|
||||
framework.ExpectEqual(len(jobs.Items), 1, "Failed to find job %v", jobName)
|
||||
gomega.Expect(jobs.Items).To(gomega.HaveLen(1), "Failed to find job %v", jobName)
|
||||
testJob := jobs.Items[0]
|
||||
framework.Logf("Job: %v as labels: %v", testJob.Name, testJob.Labels)
|
||||
|
||||
@ -820,7 +814,7 @@ var _ = SIGDescribe("Job", func() {
|
||||
ginkgo.By("Relist jobs to confirm deletion")
|
||||
jobs, err = f.ClientSet.BatchV1().Jobs("").List(ctx, metav1.ListOptions{LabelSelector: labelSelector})
|
||||
framework.ExpectNoError(err, "Failed to list job. %v", err)
|
||||
framework.ExpectEqual(len(jobs.Items), 0, "Found job %v", jobName)
|
||||
gomega.Expect(jobs.Items).To(gomega.BeEmpty(), "Found job %v", jobName)
|
||||
})
|
||||
|
||||
})
|
||||
|
@ -206,7 +206,7 @@ var _ = SIGDescribe("ReplicationController", func() {
|
||||
ginkgo.By("patching ReplicationController")
|
||||
testRcPatched, err := f.ClientSet.CoreV1().ReplicationControllers(testRcNamespace).Patch(ctx, testRcName, types.StrategicMergePatchType, []byte(rcLabelPatchPayload), metav1.PatchOptions{})
|
||||
framework.ExpectNoError(err, "Failed to patch ReplicationController")
|
||||
framework.ExpectEqual(testRcPatched.ObjectMeta.Labels["test-rc"], "patched", "failed to patch RC")
|
||||
gomega.Expect(testRcPatched.ObjectMeta.Labels).To(gomega.HaveKeyWithValue("test-rc", "patched"), "failed to patch RC")
|
||||
ginkgo.By("waiting for RC to be modified")
|
||||
eventFound = false
|
||||
ctxUntil, cancel = context.WithTimeout(ctx, 60*time.Second)
|
||||
@ -236,7 +236,7 @@ var _ = SIGDescribe("ReplicationController", func() {
|
||||
ginkgo.By("patching ReplicationController status")
|
||||
rcStatus, err := f.ClientSet.CoreV1().ReplicationControllers(testRcNamespace).Patch(ctx, testRcName, types.StrategicMergePatchType, []byte(rcStatusPatchPayload), metav1.PatchOptions{}, "status")
|
||||
framework.ExpectNoError(err, "Failed to patch ReplicationControllerStatus")
|
||||
framework.ExpectEqual(rcStatus.Status.ReadyReplicas, int32(0), "ReplicationControllerStatus's readyReplicas does not equal 0")
|
||||
gomega.Expect(rcStatus.Status.ReadyReplicas).To(gomega.Equal(int32(0)), "ReplicationControllerStatus's readyReplicas does not equal 0")
|
||||
ginkgo.By("waiting for RC to be modified")
|
||||
eventFound = false
|
||||
ctxUntil, cancel = context.WithTimeout(ctx, 60*time.Second)
|
||||
@ -282,7 +282,7 @@ var _ = SIGDescribe("ReplicationController", func() {
|
||||
rcStatusUjson, err := json.Marshal(rcStatusUnstructured)
|
||||
framework.ExpectNoError(err, "Failed to marshal json of replicationcontroller label patch")
|
||||
json.Unmarshal(rcStatusUjson, &rcStatus)
|
||||
framework.ExpectEqual(rcStatus.Status.Replicas, testRcInitialReplicaCount, "ReplicationController ReplicaSet cound does not match initial Replica count")
|
||||
gomega.Expect(rcStatus.Status.Replicas).To(gomega.Equal(testRcInitialReplicaCount), "ReplicationController ReplicaSet cound does not match initial Replica count")
|
||||
|
||||
rcScalePatchPayload, err := json.Marshal(autoscalingv1.Scale{
|
||||
Spec: autoscalingv1.ScaleSpec{
|
||||
@ -339,7 +339,7 @@ var _ = SIGDescribe("ReplicationController", func() {
|
||||
ginkgo.By("fetching ReplicationController; ensuring that it's patched")
|
||||
rc, err := f.ClientSet.CoreV1().ReplicationControllers(testRcNamespace).Get(ctx, testRcName, metav1.GetOptions{})
|
||||
framework.ExpectNoError(err, "failed to fetch ReplicationController")
|
||||
framework.ExpectEqual(rc.ObjectMeta.Labels["test-rc"], "patched", "ReplicationController is missing a label from earlier patch")
|
||||
gomega.Expect(rc.ObjectMeta.Labels).To(gomega.HaveKeyWithValue("test-rc", "patched"), "ReplicationController is missing a label from earlier patch")
|
||||
|
||||
rcStatusUpdatePayload := rc
|
||||
rcStatusUpdatePayload.Status.AvailableReplicas = 1
|
||||
@ -439,7 +439,7 @@ var _ = SIGDescribe("ReplicationController", func() {
|
||||
ginkgo.By(fmt.Sprintf("Getting scale subresource for ReplicationController %q", rcName))
|
||||
scale, err := rcClient.GetScale(ctx, rcName, metav1.GetOptions{})
|
||||
framework.ExpectNoError(err, "Failed to get scale subresource: %v", err)
|
||||
framework.ExpectEqual(scale.Status.Replicas, initialRCReplicaCount, "Failed to get the current replica count")
|
||||
gomega.Expect(scale.Status.Replicas).To(gomega.Equal(initialRCReplicaCount), "Failed to get the current replica count")
|
||||
|
||||
ginkgo.By("Updating a scale subresource")
|
||||
scale.ResourceVersion = "" // indicate the scale update should be unconditional
|
||||
@ -525,7 +525,7 @@ func TestReplicationControllerServeImageOrFail(ctx context.Context, f *framework
|
||||
}
|
||||
|
||||
// Sanity check
|
||||
framework.ExpectEqual(running, replicas, "unexpected number of running and ready pods: %+v", pods.Items)
|
||||
gomega.Expect(running).To(gomega.Equal(replicas), "unexpected number of running and ready pods: %+v", pods.Items)
|
||||
|
||||
// Verify that something is listening.
|
||||
framework.Logf("Trying to dial the pod")
|
||||
|
@ -45,10 +45,11 @@ import (
|
||||
e2epod "k8s.io/kubernetes/test/e2e/framework/pod"
|
||||
e2ereplicaset "k8s.io/kubernetes/test/e2e/framework/replicaset"
|
||||
e2eskipper "k8s.io/kubernetes/test/e2e/framework/skipper"
|
||||
imageutils "k8s.io/kubernetes/test/utils/image"
|
||||
admissionapi "k8s.io/pod-security-admission/api"
|
||||
|
||||
"github.com/onsi/ginkgo/v2"
|
||||
imageutils "k8s.io/kubernetes/test/utils/image"
|
||||
"github.com/onsi/gomega"
|
||||
)
|
||||
|
||||
const (
|
||||
@ -221,7 +222,7 @@ func testReplicaSetServeImageOrFail(ctx context.Context, f *framework.Framework,
|
||||
}
|
||||
|
||||
// Sanity check
|
||||
framework.ExpectEqual(running, replicas, "unexpected number of running pods: %+v", pods.Items)
|
||||
gomega.Expect(running).To(gomega.Equal(replicas), "unexpected number of running pods: %+v", pods.Items)
|
||||
|
||||
// Verify that something is listening.
|
||||
framework.Logf("Trying to dial the pod")
|
||||
@ -423,8 +424,8 @@ func testRSScaleSubresources(ctx context.Context, f *framework.Framework) {
|
||||
if err != nil {
|
||||
framework.Failf("Failed to get scale subresource: %v", err)
|
||||
}
|
||||
framework.ExpectEqual(scale.Spec.Replicas, int32(1))
|
||||
framework.ExpectEqual(scale.Status.Replicas, int32(1))
|
||||
gomega.Expect(scale.Spec.Replicas).To(gomega.Equal(int32(1)))
|
||||
gomega.Expect(scale.Status.Replicas).To(gomega.Equal(int32(1)))
|
||||
|
||||
ginkgo.By("updating a scale subresource")
|
||||
scale.ResourceVersion = "" // indicate the scale update should be unconditional
|
||||
@ -433,14 +434,14 @@ func testRSScaleSubresources(ctx context.Context, f *framework.Framework) {
|
||||
if err != nil {
|
||||
framework.Failf("Failed to put scale subresource: %v", err)
|
||||
}
|
||||
framework.ExpectEqual(scaleResult.Spec.Replicas, int32(2))
|
||||
gomega.Expect(scaleResult.Spec.Replicas).To(gomega.Equal(int32(2)))
|
||||
|
||||
ginkgo.By("verifying the replicaset Spec.Replicas was modified")
|
||||
rs, err = c.AppsV1().ReplicaSets(ns).Get(ctx, rsName, metav1.GetOptions{})
|
||||
if err != nil {
|
||||
framework.Failf("Failed to get statefulset resource: %v", err)
|
||||
}
|
||||
framework.ExpectEqual(*(rs.Spec.Replicas), int32(2))
|
||||
gomega.Expect(*(rs.Spec.Replicas)).To(gomega.Equal(int32(2)))
|
||||
|
||||
ginkgo.By("Patch a scale subresource")
|
||||
scale.ResourceVersion = "" // indicate the scale update should be unconditional
|
||||
@ -457,8 +458,7 @@ func testRSScaleSubresources(ctx context.Context, f *framework.Framework) {
|
||||
|
||||
rs, err = c.AppsV1().ReplicaSets(ns).Get(ctx, rsName, metav1.GetOptions{})
|
||||
framework.ExpectNoError(err, "Failed to get replicaset resource: %v", err)
|
||||
framework.ExpectEqual(*(rs.Spec.Replicas), int32(4), "replicaset should have 4 replicas")
|
||||
|
||||
gomega.Expect(*(rs.Spec.Replicas)).To(gomega.Equal(int32(4)), "replicaset should have 4 replicas")
|
||||
}
|
||||
|
||||
// ReplicaSet Replace and Patch tests
|
||||
@ -585,7 +585,7 @@ func listRSDeleteCollection(ctx context.Context, f *framework.Framework) {
|
||||
ginkgo.By("Listing all ReplicaSets")
|
||||
rsList, err := c.AppsV1().ReplicaSets("").List(ctx, metav1.ListOptions{LabelSelector: "e2e=" + e2eValue})
|
||||
framework.ExpectNoError(err, "failed to list ReplicaSets")
|
||||
framework.ExpectEqual(len(rsList.Items), 1, "filtered list wasn't found")
|
||||
gomega.Expect(rsList.Items).To(gomega.HaveLen(1), "filtered list wasn't found")
|
||||
|
||||
ginkgo.By("DeleteCollection of the ReplicaSets")
|
||||
err = rsClient.DeleteCollection(ctx, metav1.DeleteOptions{GracePeriodSeconds: &one}, metav1.ListOptions{LabelSelector: "e2e=" + e2eValue})
|
||||
@ -594,7 +594,7 @@ func listRSDeleteCollection(ctx context.Context, f *framework.Framework) {
|
||||
ginkgo.By("After DeleteCollection verify that ReplicaSets have been deleted")
|
||||
rsList, err = c.AppsV1().ReplicaSets("").List(ctx, metav1.ListOptions{LabelSelector: "e2e=" + e2eValue})
|
||||
framework.ExpectNoError(err, "failed to list ReplicaSets")
|
||||
framework.ExpectEqual(len(rsList.Items), 0, "filtered list should have no replicas")
|
||||
gomega.Expect(rsList.Items).To(gomega.BeEmpty(), "filtered list should have no replicas")
|
||||
}
|
||||
|
||||
func testRSStatus(ctx context.Context, f *framework.Framework) {
|
||||
|
@ -204,9 +204,9 @@ var _ = SIGDescribe("StatefulSet", func() {
|
||||
pod := pods.Items[0]
|
||||
controllerRef := metav1.GetControllerOf(&pod)
|
||||
gomega.Expect(controllerRef).ToNot(gomega.BeNil())
|
||||
framework.ExpectEqual(controllerRef.Kind, ss.Kind)
|
||||
framework.ExpectEqual(controllerRef.Name, ss.Name)
|
||||
framework.ExpectEqual(controllerRef.UID, ss.UID)
|
||||
gomega.Expect(controllerRef.Kind).To(gomega.Equal(ss.Kind))
|
||||
gomega.Expect(controllerRef.Name).To(gomega.Equal(ss.Name))
|
||||
gomega.Expect(controllerRef.UID).To(gomega.Equal(ss.UID))
|
||||
|
||||
ginkgo.By("Orphaning one of the stateful set's pods")
|
||||
e2epod.NewPodClient(f).Update(ctx, pod.Name, func(pod *v1.Pod) {
|
||||
@ -343,15 +343,15 @@ var _ = SIGDescribe("StatefulSet", func() {
|
||||
e2estatefulset.WaitForRunningAndReady(ctx, c, *ss.Spec.Replicas, ss)
|
||||
ss = waitForStatus(ctx, c, ss)
|
||||
currentRevision, updateRevision := ss.Status.CurrentRevision, ss.Status.UpdateRevision
|
||||
framework.ExpectEqual(currentRevision, updateRevision, fmt.Sprintf("StatefulSet %s/%s created with update revision %s not equal to current revision %s",
|
||||
ss.Namespace, ss.Name, updateRevision, currentRevision))
|
||||
gomega.Expect(currentRevision).To(gomega.Equal(updateRevision), "StatefulSet %s/%s created with update revision %s not equal to current revision %s",
|
||||
ss.Namespace, ss.Name, updateRevision, currentRevision)
|
||||
pods := e2estatefulset.GetPodList(ctx, c, ss)
|
||||
for i := range pods.Items {
|
||||
framework.ExpectEqual(pods.Items[i].Labels[appsv1.StatefulSetRevisionLabel], currentRevision, fmt.Sprintf("Pod %s/%s revision %s is not equal to currentRevision %s",
|
||||
gomega.Expect(pods.Items[i].Labels).To(gomega.HaveKeyWithValue(appsv1.StatefulSetRevisionLabel, currentRevision), "Pod %s/%s revision %s is not equal to currentRevision %s",
|
||||
pods.Items[i].Namespace,
|
||||
pods.Items[i].Name,
|
||||
pods.Items[i].Labels[appsv1.StatefulSetRevisionLabel],
|
||||
currentRevision))
|
||||
currentRevision)
|
||||
}
|
||||
newImage := NewWebserverImage
|
||||
oldImage := ss.Spec.Template.Spec.Containers[0].Image
|
||||
@ -370,16 +370,16 @@ var _ = SIGDescribe("StatefulSet", func() {
|
||||
|
||||
ginkgo.By("Not applying an update when the partition is greater than the number of replicas")
|
||||
for i := range pods.Items {
|
||||
framework.ExpectEqual(pods.Items[i].Spec.Containers[0].Image, oldImage, fmt.Sprintf("Pod %s/%s has image %s not equal to current image %s",
|
||||
gomega.Expect(pods.Items[i].Spec.Containers[0].Image).To(gomega.Equal(oldImage), "Pod %s/%s has image %s not equal to current image %s",
|
||||
pods.Items[i].Namespace,
|
||||
pods.Items[i].Name,
|
||||
pods.Items[i].Spec.Containers[0].Image,
|
||||
oldImage))
|
||||
framework.ExpectEqual(pods.Items[i].Labels[appsv1.StatefulSetRevisionLabel], currentRevision, fmt.Sprintf("Pod %s/%s has revision %s not equal to current revision %s",
|
||||
oldImage)
|
||||
gomega.Expect(pods.Items[i].Labels).To(gomega.HaveKeyWithValue(appsv1.StatefulSetRevisionLabel, currentRevision), "Pod %s/%s has revision %s not equal to current revision %s",
|
||||
pods.Items[i].Namespace,
|
||||
pods.Items[i].Name,
|
||||
pods.Items[i].Labels[appsv1.StatefulSetRevisionLabel],
|
||||
currentRevision))
|
||||
currentRevision)
|
||||
}
|
||||
|
||||
ginkgo.By("Performing a canary update")
|
||||
@ -405,27 +405,27 @@ var _ = SIGDescribe("StatefulSet", func() {
|
||||
ss, pods = waitForPartitionedRollingUpdate(ctx, c, ss)
|
||||
for i := range pods.Items {
|
||||
if i < int(*ss.Spec.UpdateStrategy.RollingUpdate.Partition) {
|
||||
framework.ExpectEqual(pods.Items[i].Spec.Containers[0].Image, oldImage, fmt.Sprintf("Pod %s/%s has image %s not equal to current image %s",
|
||||
gomega.Expect(pods.Items[i].Spec.Containers[0].Image).To(gomega.Equal(oldImage), "Pod %s/%s has image %s not equal to current image %s",
|
||||
pods.Items[i].Namespace,
|
||||
pods.Items[i].Name,
|
||||
pods.Items[i].Spec.Containers[0].Image,
|
||||
oldImage))
|
||||
framework.ExpectEqual(pods.Items[i].Labels[appsv1.StatefulSetRevisionLabel], currentRevision, fmt.Sprintf("Pod %s/%s has revision %s not equal to current revision %s",
|
||||
oldImage)
|
||||
gomega.Expect(pods.Items[i].Labels).To(gomega.HaveKeyWithValue(appsv1.StatefulSetRevisionLabel, currentRevision), "Pod %s/%s has revision %s not equal to current revision %s",
|
||||
pods.Items[i].Namespace,
|
||||
pods.Items[i].Name,
|
||||
pods.Items[i].Labels[appsv1.StatefulSetRevisionLabel],
|
||||
currentRevision))
|
||||
currentRevision)
|
||||
} else {
|
||||
framework.ExpectEqual(pods.Items[i].Spec.Containers[0].Image, newImage, fmt.Sprintf("Pod %s/%s has image %s not equal to new image %s",
|
||||
gomega.Expect(pods.Items[i].Spec.Containers[0].Image).To(gomega.Equal(newImage), "Pod %s/%s has image %s not equal to new image %s",
|
||||
pods.Items[i].Namespace,
|
||||
pods.Items[i].Name,
|
||||
pods.Items[i].Spec.Containers[0].Image,
|
||||
newImage))
|
||||
framework.ExpectEqual(pods.Items[i].Labels[appsv1.StatefulSetRevisionLabel], updateRevision, fmt.Sprintf("Pod %s/%s has revision %s not equal to new revision %s",
|
||||
newImage)
|
||||
gomega.Expect(pods.Items[i].Labels).To(gomega.HaveKeyWithValue(appsv1.StatefulSetRevisionLabel, updateRevision), "Pod %s/%s has revision %s not equal to new revision %s",
|
||||
pods.Items[i].Namespace,
|
||||
pods.Items[i].Name,
|
||||
pods.Items[i].Labels[appsv1.StatefulSetRevisionLabel],
|
||||
updateRevision))
|
||||
updateRevision)
|
||||
}
|
||||
}
|
||||
|
||||
@ -437,27 +437,27 @@ var _ = SIGDescribe("StatefulSet", func() {
|
||||
pods = e2estatefulset.GetPodList(ctx, c, ss)
|
||||
for i := range pods.Items {
|
||||
if i < int(*ss.Spec.UpdateStrategy.RollingUpdate.Partition) {
|
||||
framework.ExpectEqual(pods.Items[i].Spec.Containers[0].Image, oldImage, fmt.Sprintf("Pod %s/%s has image %s not equal to current image %s",
|
||||
gomega.Expect(pods.Items[i].Spec.Containers[0].Image).To(gomega.Equal(oldImage), "Pod %s/%s has image %s not equal to current image %s",
|
||||
pods.Items[i].Namespace,
|
||||
pods.Items[i].Name,
|
||||
pods.Items[i].Spec.Containers[0].Image,
|
||||
oldImage))
|
||||
framework.ExpectEqual(pods.Items[i].Labels[appsv1.StatefulSetRevisionLabel], currentRevision, fmt.Sprintf("Pod %s/%s has revision %s not equal to current revision %s",
|
||||
oldImage)
|
||||
gomega.Expect(pods.Items[i].Labels).To(gomega.HaveKeyWithValue(appsv1.StatefulSetRevisionLabel, currentRevision), "Pod %s/%s has revision %s not equal to current revision %s",
|
||||
pods.Items[i].Namespace,
|
||||
pods.Items[i].Name,
|
||||
pods.Items[i].Labels[appsv1.StatefulSetRevisionLabel],
|
||||
currentRevision))
|
||||
currentRevision)
|
||||
} else {
|
||||
framework.ExpectEqual(pods.Items[i].Spec.Containers[0].Image, newImage, fmt.Sprintf("Pod %s/%s has image %s not equal to new image %s",
|
||||
gomega.Expect(pods.Items[i].Spec.Containers[0].Image).To(gomega.Equal(newImage), "Pod %s/%s has image %s not equal to new image %s",
|
||||
pods.Items[i].Namespace,
|
||||
pods.Items[i].Name,
|
||||
pods.Items[i].Spec.Containers[0].Image,
|
||||
newImage))
|
||||
framework.ExpectEqual(pods.Items[i].Labels[appsv1.StatefulSetRevisionLabel], updateRevision, fmt.Sprintf("Pod %s/%s has revision %s not equal to new revision %s",
|
||||
newImage)
|
||||
gomega.Expect(pods.Items[i].Labels).To(gomega.HaveKeyWithValue(appsv1.StatefulSetRevisionLabel, updateRevision), "Pod %s/%s has revision %s not equal to new revision %s",
|
||||
pods.Items[i].Namespace,
|
||||
pods.Items[i].Name,
|
||||
pods.Items[i].Labels[appsv1.StatefulSetRevisionLabel],
|
||||
updateRevision))
|
||||
updateRevision)
|
||||
}
|
||||
}
|
||||
|
||||
@ -478,35 +478,35 @@ var _ = SIGDescribe("StatefulSet", func() {
|
||||
ss, pods = waitForPartitionedRollingUpdate(ctx, c, ss)
|
||||
for i := range pods.Items {
|
||||
if i < int(*ss.Spec.UpdateStrategy.RollingUpdate.Partition) {
|
||||
framework.ExpectEqual(pods.Items[i].Spec.Containers[0].Image, oldImage, fmt.Sprintf("Pod %s/%s has image %s not equal to current image %s",
|
||||
gomega.Expect(pods.Items[i].Spec.Containers[0].Image).To(gomega.Equal(oldImage), "Pod %s/%s has image %s not equal to current image %s",
|
||||
pods.Items[i].Namespace,
|
||||
pods.Items[i].Name,
|
||||
pods.Items[i].Spec.Containers[0].Image,
|
||||
oldImage))
|
||||
framework.ExpectEqual(pods.Items[i].Labels[appsv1.StatefulSetRevisionLabel], currentRevision, fmt.Sprintf("Pod %s/%s has revision %s not equal to current revision %s",
|
||||
oldImage)
|
||||
gomega.Expect(pods.Items[i].Labels).To(gomega.HaveKeyWithValue(appsv1.StatefulSetRevisionLabel, currentRevision), "Pod %s/%s has revision %s not equal to current revision %s",
|
||||
pods.Items[i].Namespace,
|
||||
pods.Items[i].Name,
|
||||
pods.Items[i].Labels[appsv1.StatefulSetRevisionLabel],
|
||||
currentRevision))
|
||||
currentRevision)
|
||||
} else {
|
||||
framework.ExpectEqual(pods.Items[i].Spec.Containers[0].Image, newImage, fmt.Sprintf("Pod %s/%s has image %s not equal to new image %s",
|
||||
gomega.Expect(pods.Items[i].Spec.Containers[0].Image).To(gomega.Equal(newImage), "Pod %s/%s has image %s not equal to new image %s",
|
||||
pods.Items[i].Namespace,
|
||||
pods.Items[i].Name,
|
||||
pods.Items[i].Spec.Containers[0].Image,
|
||||
newImage))
|
||||
framework.ExpectEqual(pods.Items[i].Labels[appsv1.StatefulSetRevisionLabel], updateRevision, fmt.Sprintf("Pod %s/%s has revision %s not equal to new revision %s",
|
||||
newImage)
|
||||
gomega.Expect(pods.Items[i].Labels).To(gomega.HaveKeyWithValue(appsv1.StatefulSetRevisionLabel, updateRevision), "Pod %s/%s has revision %s not equal to new revision %s",
|
||||
pods.Items[i].Namespace,
|
||||
pods.Items[i].Name,
|
||||
pods.Items[i].Labels[appsv1.StatefulSetRevisionLabel],
|
||||
updateRevision))
|
||||
updateRevision)
|
||||
}
|
||||
}
|
||||
}
|
||||
framework.ExpectEqual(ss.Status.CurrentRevision, updateRevision, fmt.Sprintf("StatefulSet %s/%s current revision %s does not equal update revision %s on update completion",
|
||||
gomega.Expect(ss.Status.CurrentRevision).To(gomega.Equal(updateRevision), "StatefulSet %s/%s current revision %s does not equal update revision %s on update completion",
|
||||
ss.Namespace,
|
||||
ss.Name,
|
||||
ss.Status.CurrentRevision,
|
||||
updateRevision))
|
||||
updateRevision)
|
||||
|
||||
})
|
||||
|
||||
@ -524,15 +524,15 @@ var _ = SIGDescribe("StatefulSet", func() {
|
||||
e2estatefulset.WaitForRunningAndReady(ctx, c, *ss.Spec.Replicas, ss)
|
||||
ss = waitForStatus(ctx, c, ss)
|
||||
currentRevision, updateRevision := ss.Status.CurrentRevision, ss.Status.UpdateRevision
|
||||
framework.ExpectEqual(currentRevision, updateRevision, fmt.Sprintf("StatefulSet %s/%s created with update revision %s not equal to current revision %s",
|
||||
ss.Namespace, ss.Name, updateRevision, currentRevision))
|
||||
gomega.Expect(currentRevision).To(gomega.Equal(updateRevision), "StatefulSet %s/%s created with update revision %s not equal to current revision %s",
|
||||
ss.Namespace, ss.Name, updateRevision, currentRevision)
|
||||
pods := e2estatefulset.GetPodList(ctx, c, ss)
|
||||
for i := range pods.Items {
|
||||
framework.ExpectEqual(pods.Items[i].Labels[appsv1.StatefulSetRevisionLabel], currentRevision, fmt.Sprintf("Pod %s/%s revision %s is not equal to current revision %s",
|
||||
gomega.Expect(pods.Items[i].Labels).To(gomega.HaveKeyWithValue(appsv1.StatefulSetRevisionLabel, currentRevision), "Pod %s/%s revision %s is not equal to current revision %s",
|
||||
pods.Items[i].Namespace,
|
||||
pods.Items[i].Name,
|
||||
pods.Items[i].Labels[appsv1.StatefulSetRevisionLabel],
|
||||
currentRevision))
|
||||
currentRevision)
|
||||
}
|
||||
|
||||
ginkgo.By("Restoring Pods to the current revision")
|
||||
@ -543,11 +543,11 @@ var _ = SIGDescribe("StatefulSet", func() {
|
||||
ss = getStatefulSet(ctx, c, ss.Namespace, ss.Name)
|
||||
pods = e2estatefulset.GetPodList(ctx, c, ss)
|
||||
for i := range pods.Items {
|
||||
framework.ExpectEqual(pods.Items[i].Labels[appsv1.StatefulSetRevisionLabel], currentRevision, fmt.Sprintf("Pod %s/%s revision %s is not equal to current revision %s",
|
||||
gomega.Expect(pods.Items[i].Labels).To(gomega.HaveKeyWithValue(appsv1.StatefulSetRevisionLabel, currentRevision), "Pod %s/%s revision %s is not equal to current revision %s",
|
||||
pods.Items[i].Namespace,
|
||||
pods.Items[i].Name,
|
||||
pods.Items[i].Labels[appsv1.StatefulSetRevisionLabel],
|
||||
currentRevision))
|
||||
currentRevision)
|
||||
}
|
||||
newImage := NewWebserverImage
|
||||
oldImage := ss.Spec.Template.Spec.Containers[0].Image
|
||||
@ -572,16 +572,16 @@ var _ = SIGDescribe("StatefulSet", func() {
|
||||
ss = getStatefulSet(ctx, c, ss.Namespace, ss.Name)
|
||||
pods = e2estatefulset.GetPodList(ctx, c, ss)
|
||||
for i := range pods.Items {
|
||||
framework.ExpectEqual(pods.Items[i].Spec.Containers[0].Image, newImage, fmt.Sprintf("Pod %s/%s has image %s not equal to new image %s",
|
||||
gomega.Expect(pods.Items[i].Spec.Containers[0].Image).To(gomega.Equal(newImage), "Pod %s/%s has image %s not equal to new image %s",
|
||||
pods.Items[i].Namespace,
|
||||
pods.Items[i].Name,
|
||||
pods.Items[i].Spec.Containers[0].Image,
|
||||
newImage))
|
||||
framework.ExpectEqual(pods.Items[i].Labels[appsv1.StatefulSetRevisionLabel], updateRevision, fmt.Sprintf("Pod %s/%s has revision %s not equal to current revision %s",
|
||||
newImage)
|
||||
gomega.Expect(pods.Items[i].Labels).To(gomega.HaveKeyWithValue(appsv1.StatefulSetRevisionLabel, updateRevision), "Pod %s/%s has revision %s not equal to current revision %s",
|
||||
pods.Items[i].Namespace,
|
||||
pods.Items[i].Name,
|
||||
pods.Items[i].Labels[appsv1.StatefulSetRevisionLabel],
|
||||
updateRevision))
|
||||
updateRevision)
|
||||
}
|
||||
})
|
||||
|
||||
@ -865,8 +865,8 @@ var _ = SIGDescribe("StatefulSet", func() {
|
||||
if err != nil {
|
||||
framework.Failf("Failed to get scale subresource: %v", err)
|
||||
}
|
||||
framework.ExpectEqual(scale.Spec.Replicas, int32(1))
|
||||
framework.ExpectEqual(scale.Status.Replicas, int32(1))
|
||||
gomega.Expect(scale.Spec.Replicas).To(gomega.Equal(int32(1)))
|
||||
gomega.Expect(scale.Status.Replicas).To(gomega.Equal(int32(1)))
|
||||
|
||||
ginkgo.By("updating a scale subresource")
|
||||
scale.ResourceVersion = "" // indicate the scale update should be unconditional
|
||||
@ -875,14 +875,14 @@ var _ = SIGDescribe("StatefulSet", func() {
|
||||
if err != nil {
|
||||
framework.Failf("Failed to put scale subresource: %v", err)
|
||||
}
|
||||
framework.ExpectEqual(scaleResult.Spec.Replicas, int32(2))
|
||||
gomega.Expect(scaleResult.Spec.Replicas).To(gomega.Equal(int32(2)))
|
||||
|
||||
ginkgo.By("verifying the statefulset Spec.Replicas was modified")
|
||||
ss, err = c.AppsV1().StatefulSets(ns).Get(ctx, ssName, metav1.GetOptions{})
|
||||
if err != nil {
|
||||
framework.Failf("Failed to get statefulset resource: %v", err)
|
||||
}
|
||||
framework.ExpectEqual(*(ss.Spec.Replicas), int32(2))
|
||||
gomega.Expect(*(ss.Spec.Replicas)).To(gomega.Equal(int32(2)))
|
||||
|
||||
ginkgo.By("Patch a scale subresource")
|
||||
scale.ResourceVersion = "" // indicate the scale update should be unconditional
|
||||
@ -900,7 +900,7 @@ var _ = SIGDescribe("StatefulSet", func() {
|
||||
ginkgo.By("verifying the statefulset Spec.Replicas was modified")
|
||||
ss, err = c.AppsV1().StatefulSets(ns).Get(ctx, ssName, metav1.GetOptions{})
|
||||
framework.ExpectNoError(err, "Failed to get statefulset resource: %v", err)
|
||||
framework.ExpectEqual(*(ss.Spec.Replicas), int32(4), "statefulset should have 4 replicas")
|
||||
gomega.Expect(*(ss.Spec.Replicas)).To(gomega.Equal(int32(4)), "statefulset should have 4 replicas")
|
||||
})
|
||||
|
||||
/*
|
||||
@ -953,15 +953,15 @@ var _ = SIGDescribe("StatefulSet", func() {
|
||||
framework.ExpectNoError(err, "failed to patch Set")
|
||||
ss, err = c.AppsV1().StatefulSets(ns).Get(ctx, ssName, metav1.GetOptions{})
|
||||
framework.ExpectNoError(err, "Failed to get statefulset resource: %v", err)
|
||||
framework.ExpectEqual(*(ss.Spec.Replicas), ssPatchReplicas, "statefulset should have 2 replicas")
|
||||
framework.ExpectEqual(ss.Spec.Template.Spec.Containers[0].Image, ssPatchImage, "statefulset not using ssPatchImage. Is using %v", ss.Spec.Template.Spec.Containers[0].Image)
|
||||
gomega.Expect(*(ss.Spec.Replicas)).To(gomega.Equal(ssPatchReplicas), "statefulset should have 2 replicas")
|
||||
gomega.Expect(ss.Spec.Template.Spec.Containers[0].Image).To(gomega.Equal(ssPatchImage), "statefulset not using ssPatchImage. Is using %v", ss.Spec.Template.Spec.Containers[0].Image)
|
||||
e2estatefulset.WaitForRunningAndReady(ctx, c, *ss.Spec.Replicas, ss)
|
||||
waitForStatus(ctx, c, ss)
|
||||
|
||||
ginkgo.By("Listing all StatefulSets")
|
||||
ssList, err := c.AppsV1().StatefulSets("").List(ctx, metav1.ListOptions{LabelSelector: "test-ss=patched"})
|
||||
framework.ExpectNoError(err, "failed to list StatefulSets")
|
||||
framework.ExpectEqual(len(ssList.Items), 1, "filtered list wasn't found")
|
||||
gomega.Expect(ssList.Items).To(gomega.HaveLen(1), "filtered list wasn't found")
|
||||
|
||||
ginkgo.By("Delete all of the StatefulSets")
|
||||
err = c.AppsV1().StatefulSets(ns).DeleteCollection(ctx, metav1.DeleteOptions{GracePeriodSeconds: &one}, metav1.ListOptions{LabelSelector: "test-ss=patched"})
|
||||
@ -970,7 +970,7 @@ var _ = SIGDescribe("StatefulSet", func() {
|
||||
ginkgo.By("Verify that StatefulSets have been deleted")
|
||||
ssList, err = c.AppsV1().StatefulSets("").List(ctx, metav1.ListOptions{LabelSelector: "test-ss=patched"})
|
||||
framework.ExpectNoError(err, "failed to list StatefulSets")
|
||||
framework.ExpectEqual(len(ssList.Items), 0, "filtered list should have no Statefulsets")
|
||||
gomega.Expect(ssList.Items).To(gomega.BeEmpty(), "filtered list should have no Statefulsets")
|
||||
})
|
||||
|
||||
/*
|
||||
@ -1401,7 +1401,7 @@ var _ = SIGDescribe("StatefulSet", func() {
|
||||
framework.ExpectNoError(err)
|
||||
|
||||
nodeName := pod.Spec.NodeName
|
||||
framework.ExpectEqual(nodeName, readyNode.Name)
|
||||
gomega.Expect(nodeName).To(gomega.Equal(readyNode.Name))
|
||||
node, err := c.CoreV1().Nodes().Get(ctx, nodeName, metav1.GetOptions{})
|
||||
framework.ExpectNoError(err)
|
||||
|
||||
@ -1441,7 +1441,7 @@ var _ = SIGDescribe("StatefulSet", func() {
|
||||
|
||||
pvcList, err := c.CoreV1().PersistentVolumeClaims(ns).List(ctx, metav1.ListOptions{LabelSelector: klabels.Everything().String()})
|
||||
framework.ExpectNoError(err)
|
||||
framework.ExpectEqual(len(pvcList.Items), 1)
|
||||
gomega.Expect(pvcList.Items).To(gomega.HaveLen(1))
|
||||
pvcName := pvcList.Items[0].Name
|
||||
|
||||
ginkgo.By("Deleting PVC")
|
||||
@ -1459,7 +1459,7 @@ var _ = SIGDescribe("StatefulSet", func() {
|
||||
e2estatefulset.WaitForStatusReadyReplicas(ctx, c, ss, 1)
|
||||
pod, err = c.CoreV1().Pods(ns).Get(ctx, podName, metav1.GetOptions{})
|
||||
framework.ExpectNoError(err)
|
||||
framework.ExpectEqual(pod.Spec.NodeName, readyNode.Name) // confirm the pod was scheduled back to the original node
|
||||
gomega.Expect(pod.Spec.NodeName).To(gomega.Equal(readyNode.Name)) // confirm the pod was scheduled back to the original node
|
||||
})
|
||||
})
|
||||
|
||||
@ -1851,15 +1851,15 @@ func rollbackTest(ctx context.Context, c clientset.Interface, ns string, ss *app
|
||||
e2estatefulset.WaitForRunningAndReady(ctx, c, *ss.Spec.Replicas, ss)
|
||||
ss = waitForStatus(ctx, c, ss)
|
||||
currentRevision, updateRevision := ss.Status.CurrentRevision, ss.Status.UpdateRevision
|
||||
framework.ExpectEqual(currentRevision, updateRevision, fmt.Sprintf("StatefulSet %s/%s created with update revision %s not equal to current revision %s",
|
||||
ss.Namespace, ss.Name, updateRevision, currentRevision))
|
||||
gomega.Expect(currentRevision).To(gomega.Equal(updateRevision), "StatefulSet %s/%s created with update revision %s not equal to current revision %s",
|
||||
ss.Namespace, ss.Name, updateRevision, currentRevision)
|
||||
pods := e2estatefulset.GetPodList(ctx, c, ss)
|
||||
for i := range pods.Items {
|
||||
framework.ExpectEqual(pods.Items[i].Labels[appsv1.StatefulSetRevisionLabel], currentRevision, fmt.Sprintf("Pod %s/%s revision %s is not equal to current revision %s",
|
||||
gomega.Expect(pods.Items[i].Labels).To(gomega.HaveKeyWithValue(appsv1.StatefulSetRevisionLabel, currentRevision), "Pod %s/%s revision %s is not equal to current revision %s",
|
||||
pods.Items[i].Namespace,
|
||||
pods.Items[i].Name,
|
||||
pods.Items[i].Labels[appsv1.StatefulSetRevisionLabel],
|
||||
currentRevision))
|
||||
currentRevision)
|
||||
}
|
||||
e2estatefulset.SortStatefulPods(pods)
|
||||
err = breakPodHTTPProbe(ss, &pods.Items[1])
|
||||
@ -1887,22 +1887,22 @@ func rollbackTest(ctx context.Context, c clientset.Interface, ns string, ss *app
|
||||
framework.ExpectNoError(err)
|
||||
ss, _ = e2estatefulset.WaitForPodReady(ctx, c, ss, pods.Items[1].Name)
|
||||
ss, pods = waitForRollingUpdate(ctx, c, ss)
|
||||
framework.ExpectEqual(ss.Status.CurrentRevision, updateRevision, fmt.Sprintf("StatefulSet %s/%s current revision %s does not equal update revision %s on update completion",
|
||||
gomega.Expect(ss.Status.CurrentRevision).To(gomega.Equal(updateRevision), "StatefulSet %s/%s current revision %s does not equal update revision %s on update completion",
|
||||
ss.Namespace,
|
||||
ss.Name,
|
||||
ss.Status.CurrentRevision,
|
||||
updateRevision))
|
||||
updateRevision)
|
||||
for i := range pods.Items {
|
||||
framework.ExpectEqual(pods.Items[i].Spec.Containers[0].Image, newImage, fmt.Sprintf(" Pod %s/%s has image %s not have new image %s",
|
||||
gomega.Expect(pods.Items[i].Spec.Containers[0].Image).To(gomega.Equal(newImage), "Pod %s/%s has image %s not have new image %s",
|
||||
pods.Items[i].Namespace,
|
||||
pods.Items[i].Name,
|
||||
pods.Items[i].Spec.Containers[0].Image,
|
||||
newImage))
|
||||
framework.ExpectEqual(pods.Items[i].Labels[appsv1.StatefulSetRevisionLabel], updateRevision, fmt.Sprintf("Pod %s/%s revision %s is not equal to update revision %s",
|
||||
newImage)
|
||||
gomega.Expect(pods.Items[i].Labels).To(gomega.HaveKeyWithValue(appsv1.StatefulSetRevisionLabel, updateRevision), "Pod %s/%s revision %s is not equal to update revision %s",
|
||||
pods.Items[i].Namespace,
|
||||
pods.Items[i].Name,
|
||||
pods.Items[i].Labels[appsv1.StatefulSetRevisionLabel],
|
||||
updateRevision))
|
||||
updateRevision)
|
||||
}
|
||||
|
||||
ginkgo.By("Rolling back to a previous revision")
|
||||
@ -1916,7 +1916,7 @@ func rollbackTest(ctx context.Context, c clientset.Interface, ns string, ss *app
|
||||
framework.ExpectNoError(err)
|
||||
ss = waitForStatus(ctx, c, ss)
|
||||
currentRevision, updateRevision = ss.Status.CurrentRevision, ss.Status.UpdateRevision
|
||||
framework.ExpectEqual(priorRevision, updateRevision, "Prior revision should equal update revision during roll back")
|
||||
gomega.Expect(priorRevision).To(gomega.Equal(updateRevision), "Prior revision should equal update revision during roll back")
|
||||
gomega.Expect(currentRevision).NotTo(gomega.Equal(updateRevision), "Current revision should not equal update revision during roll back")
|
||||
|
||||
ginkgo.By("Rolling back update in reverse ordinal order")
|
||||
@ -1925,23 +1925,23 @@ func rollbackTest(ctx context.Context, c clientset.Interface, ns string, ss *app
|
||||
restorePodHTTPProbe(ss, &pods.Items[1])
|
||||
ss, _ = e2estatefulset.WaitForPodReady(ctx, c, ss, pods.Items[1].Name)
|
||||
ss, pods = waitForRollingUpdate(ctx, c, ss)
|
||||
framework.ExpectEqual(ss.Status.CurrentRevision, priorRevision, fmt.Sprintf("StatefulSet %s/%s current revision %s does not equal prior revision %s on rollback completion",
|
||||
gomega.Expect(ss.Status.CurrentRevision).To(gomega.Equal(priorRevision), "StatefulSet %s/%s current revision %s does not equal prior revision %s on rollback completion",
|
||||
ss.Namespace,
|
||||
ss.Name,
|
||||
ss.Status.CurrentRevision,
|
||||
updateRevision))
|
||||
updateRevision)
|
||||
|
||||
for i := range pods.Items {
|
||||
framework.ExpectEqual(pods.Items[i].Spec.Containers[0].Image, oldImage, fmt.Sprintf("Pod %s/%s has image %s not equal to previous image %s",
|
||||
gomega.Expect(pods.Items[i].Spec.Containers[0].Image).To(gomega.Equal(oldImage), "Pod %s/%s has image %s not equal to previous image %s",
|
||||
pods.Items[i].Namespace,
|
||||
pods.Items[i].Name,
|
||||
pods.Items[i].Spec.Containers[0].Image,
|
||||
oldImage))
|
||||
framework.ExpectEqual(pods.Items[i].Labels[appsv1.StatefulSetRevisionLabel], priorRevision, fmt.Sprintf("Pod %s/%s revision %s is not equal to prior revision %s",
|
||||
oldImage)
|
||||
gomega.Expect(pods.Items[i].Labels).To(gomega.HaveKeyWithValue(appsv1.StatefulSetRevisionLabel, priorRevision), "Pod %s/%s revision %s is not equal to prior revision %s",
|
||||
pods.Items[i].Namespace,
|
||||
pods.Items[i].Name,
|
||||
pods.Items[i].Labels[appsv1.StatefulSetRevisionLabel],
|
||||
priorRevision))
|
||||
priorRevision)
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user