mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-29 22:46:12 +00:00
Merge pull request #101995 from ii/Riaankl-daemonset-list-deletecollection
Write List and DeleteCollection DaemonSet Test +2 endpoints
This commit is contained in:
commit
4e0245389f
@ -802,6 +802,39 @@ var _ = SIGDescribe("Daemon set [Serial]", func() {
|
|||||||
framework.ExpectEqual(cur.Revision, int64(2))
|
framework.ExpectEqual(cur.Revision, int64(2))
|
||||||
checkDaemonSetPodsLabels(listDaemonPods(c, ns, label), hash)
|
checkDaemonSetPodsLabels(listDaemonPods(c, ns, label), hash)
|
||||||
})
|
})
|
||||||
|
|
||||||
|
ginkgo.It("should list and delete a collection of DaemonSets", func() {
|
||||||
|
label := map[string]string{daemonsetNameLabel: dsName}
|
||||||
|
labelSelector := labels.SelectorFromSet(label).String()
|
||||||
|
|
||||||
|
dsClient := f.ClientSet.AppsV1().DaemonSets(ns)
|
||||||
|
cs := f.ClientSet
|
||||||
|
one := int64(1)
|
||||||
|
|
||||||
|
ginkgo.By(fmt.Sprintf("Creating simple DaemonSet %q", dsName))
|
||||||
|
testDaemonset, err := c.AppsV1().DaemonSets(ns).Create(context.TODO(), newDaemonSetWithLabel(dsName, image, label), metav1.CreateOptions{})
|
||||||
|
framework.ExpectNoError(err)
|
||||||
|
|
||||||
|
ginkgo.By("Check that daemon pods launch on every node of the cluster.")
|
||||||
|
err = wait.PollImmediate(dsRetryPeriod, dsRetryTimeout, checkRunningOnAllNodes(f, testDaemonset))
|
||||||
|
framework.ExpectNoError(err, "error waiting for daemon pod to start")
|
||||||
|
err = checkDaemonStatus(f, dsName)
|
||||||
|
framework.ExpectNoError(err)
|
||||||
|
|
||||||
|
ginkgo.By("listing all DeamonSets")
|
||||||
|
dsList, err := cs.AppsV1().DaemonSets("").List(context.TODO(), metav1.ListOptions{LabelSelector: labelSelector})
|
||||||
|
framework.ExpectNoError(err, "failed to list Daemon Sets")
|
||||||
|
framework.ExpectEqual(len(dsList.Items), 1, "filtered list wasn't found")
|
||||||
|
|
||||||
|
ginkgo.By("DeleteCollection of the DaemonSets")
|
||||||
|
err = dsClient.DeleteCollection(context.TODO(), metav1.DeleteOptions{GracePeriodSeconds: &one}, metav1.ListOptions{LabelSelector: labelSelector})
|
||||||
|
framework.ExpectNoError(err, "failed to delete DaemonSets")
|
||||||
|
|
||||||
|
ginkgo.By("Verify that ReplicaSets have been deleted")
|
||||||
|
dsList, err = c.AppsV1().DaemonSets("").List(context.TODO(), metav1.ListOptions{LabelSelector: labelSelector})
|
||||||
|
framework.ExpectNoError(err, "failed to list DaemonSets")
|
||||||
|
framework.ExpectEqual(len(dsList.Items), 0, "filtered list should have no daemonset")
|
||||||
|
})
|
||||||
})
|
})
|
||||||
|
|
||||||
// randomPod selects a random pod within pods that causes fn to return true, or nil
|
// randomPod selects a random pod within pods that causes fn to return true, or nil
|
||||||
@ -849,6 +882,34 @@ func newDaemonSet(dsName, image string, label map[string]string) *appsv1.DaemonS
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func newDaemonSetWithLabel(dsName, image string, label map[string]string) *appsv1.DaemonSet {
|
||||||
|
return &appsv1.DaemonSet{
|
||||||
|
ObjectMeta: metav1.ObjectMeta{
|
||||||
|
Name: dsName,
|
||||||
|
Labels: label,
|
||||||
|
},
|
||||||
|
Spec: appsv1.DaemonSetSpec{
|
||||||
|
Selector: &metav1.LabelSelector{
|
||||||
|
MatchLabels: label,
|
||||||
|
},
|
||||||
|
Template: v1.PodTemplateSpec{
|
||||||
|
ObjectMeta: metav1.ObjectMeta{
|
||||||
|
Labels: label,
|
||||||
|
},
|
||||||
|
Spec: v1.PodSpec{
|
||||||
|
Containers: []v1.Container{
|
||||||
|
{
|
||||||
|
Name: "app",
|
||||||
|
Image: image,
|
||||||
|
Ports: []v1.ContainerPort{{ContainerPort: 9376}},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
func listDaemonPods(c clientset.Interface, ns string, label map[string]string) *v1.PodList {
|
func listDaemonPods(c clientset.Interface, ns string, label map[string]string) *v1.PodList {
|
||||||
selector := labels.Set(label).AsSelector()
|
selector := labels.Set(label).AsSelector()
|
||||||
options := metav1.ListOptions{LabelSelector: selector.String()}
|
options := metav1.ListOptions{LabelSelector: selector.String()}
|
||||||
|
Loading…
Reference in New Issue
Block a user