mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-23 19:56:01 +00:00
Create e2e replace pod template test
The test validates the following endpoint - replaceCoreV1NamespacedPodTemplate
This commit is contained in:
parent
267272efe0
commit
522b9b3de2
@ -25,8 +25,10 @@ import (
|
|||||||
v1 "k8s.io/api/core/v1"
|
v1 "k8s.io/api/core/v1"
|
||||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||||
"k8s.io/apimachinery/pkg/types"
|
"k8s.io/apimachinery/pkg/types"
|
||||||
|
utilrand "k8s.io/apimachinery/pkg/util/rand"
|
||||||
"k8s.io/apimachinery/pkg/util/uuid"
|
"k8s.io/apimachinery/pkg/util/uuid"
|
||||||
"k8s.io/apimachinery/pkg/util/wait"
|
"k8s.io/apimachinery/pkg/util/wait"
|
||||||
|
"k8s.io/client-go/util/retry"
|
||||||
"k8s.io/kubernetes/test/e2e/framework"
|
"k8s.io/kubernetes/test/e2e/framework"
|
||||||
imageutils "k8s.io/kubernetes/test/utils/image"
|
imageutils "k8s.io/kubernetes/test/utils/image"
|
||||||
|
|
||||||
@ -159,6 +161,43 @@ var _ = SIGDescribe("PodTemplates", func() {
|
|||||||
|
|
||||||
err = wait.PollImmediate(podTemplateRetryPeriod, podTemplateRetryTimeout, checkPodTemplateListQuantity(f, "podtemplate-set=true", 0))
|
err = wait.PollImmediate(podTemplateRetryPeriod, podTemplateRetryTimeout, checkPodTemplateListQuantity(f, "podtemplate-set=true", 0))
|
||||||
framework.ExpectNoError(err, "failed to count required pod templates")
|
framework.ExpectNoError(err, "failed to count required pod templates")
|
||||||
|
|
||||||
|
})
|
||||||
|
|
||||||
|
ginkgo.It("should replace a pod template", func() {
|
||||||
|
ptClient := f.ClientSet.CoreV1().PodTemplates(f.Namespace.Name)
|
||||||
|
ptName := "podtemplate-" + utilrand.String(5)
|
||||||
|
|
||||||
|
ginkgo.By("Create a pod template")
|
||||||
|
ptResource, err := ptClient.Create(context.TODO(), &v1.PodTemplate{
|
||||||
|
ObjectMeta: metav1.ObjectMeta{
|
||||||
|
Name: ptName,
|
||||||
|
},
|
||||||
|
Template: v1.PodTemplateSpec{
|
||||||
|
Spec: v1.PodSpec{
|
||||||
|
Containers: []v1.Container{
|
||||||
|
{Name: "e2e-test", Image: imageutils.GetE2EImage(imageutils.Agnhost)},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}, metav1.CreateOptions{})
|
||||||
|
framework.ExpectNoError(err, "failed to create pod template")
|
||||||
|
|
||||||
|
ginkgo.By("Replace a pod template")
|
||||||
|
var updatedPT *v1.PodTemplate
|
||||||
|
|
||||||
|
err = retry.RetryOnConflict(retry.DefaultRetry, func() error {
|
||||||
|
ptResource, err = ptClient.Get(context.TODO(), ptName, metav1.GetOptions{})
|
||||||
|
framework.ExpectNoError(err, "Unable to get pod template %s", ptName)
|
||||||
|
ptResource.Annotations = map[string]string{
|
||||||
|
"updated": "true",
|
||||||
|
}
|
||||||
|
updatedPT, err = ptClient.Update(context.TODO(), ptResource, metav1.UpdateOptions{})
|
||||||
|
return err
|
||||||
|
})
|
||||||
|
framework.ExpectNoError(err)
|
||||||
|
framework.ExpectEqual(updatedPT.Annotations["updated"], "true", "updated object should have the applied annotation")
|
||||||
|
framework.Logf("Found updated podtemplate annotation: %#v\n", updatedPT.Annotations["updated"])
|
||||||
})
|
})
|
||||||
|
|
||||||
})
|
})
|
||||||
|
Loading…
Reference in New Issue
Block a user