From 778a269c23fd9e6534c3c15e85f016c38f498e81 Mon Sep 17 00:00:00 2001 From: David Gomez Date: Wed, 28 Aug 2024 13:15:00 +0200 Subject: [PATCH] [bitnami/rabbitmq] Improve Ginkgo test (#29082) * [bitnami/rabbitmq] Improve Ginkgo test Signed-off-by: David Gomez * Update CHANGELOG.md Signed-off-by: Bitnami Containers --------- Signed-off-by: David Gomez Signed-off-by: Bitnami Containers Co-authored-by: Bitnami Containers --- .vib/rabbitmq/ginkgo/rabbitmq_test.go | 24 ++++++++++++++++-------- bitnami/rabbitmq/CHANGELOG.md | 8 ++++++-- bitnami/rabbitmq/Chart.yaml | 2 +- 3 files changed, 23 insertions(+), 11 deletions(-) diff --git a/.vib/rabbitmq/ginkgo/rabbitmq_test.go b/.vib/rabbitmq/ginkgo/rabbitmq_test.go index d82a627d45..f7b52ad696 100644 --- a/.vib/rabbitmq/ginkgo/rabbitmq_test.go +++ b/.vib/rabbitmq/ginkgo/rabbitmq_test.go @@ -10,6 +10,7 @@ import ( . "github.com/onsi/gomega" appsv1 "k8s.io/api/apps/v1" batchv1 "k8s.io/api/batch/v1" + v1 "k8s.io/api/core/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/client-go/kubernetes" ) @@ -35,6 +36,7 @@ var _ = Describe("Rabbitmq", Ordered, func() { getAvailableReplicas := func(ss *appsv1.StatefulSet) int32 { return ss.Status.AvailableReplicas } getSucceededJobs := func(j *batchv1.Job) int32 { return j.Status.Succeeded } + getRestartedAtAnnotation := func(pod *v1.Pod) string { return pod.Annotations["kubectl.kubernetes.io/restartedAt"] } getOpts := metav1.GetOptions{} By("checking all the replicas are available") ss, err := c.AppsV1().StatefulSets(namespace).Get(ctx, stsName, getOpts) @@ -71,18 +73,20 @@ var _ = Describe("Rabbitmq", Ordered, func() { return c.BatchV1().Jobs(namespace).Get(ctx, createQueueJobName, getOpts) }, timeout, PollingInterval).Should(WithTransform(getSucceededJobs, Equal(int32(1)))) - By("scaling down to 0 replicas") - ss, err = utils.StsScale(ctx, c, ss, 0) + By("deleting the job once it has succeeded") + err = c.BatchV1().Jobs(namespace).Delete(ctx, createQueueJobName, metav1.DeleteOptions{}) Expect(err).NotTo(HaveOccurred()) - Eventually(func() (*appsv1.StatefulSet, error) { - return c.AppsV1().StatefulSets(namespace).Get(ctx, stsName, getOpts) - }, timeout, PollingInterval).Should(WithTransform(getAvailableReplicas, BeZero())) - - By("scaling up to the original replicas") - ss, err = utils.StsScale(ctx, c, ss, origReplicas) + By("rollout restart the statefulset") + _, err = utils.StsRolloutRestart(ctx, c, ss) Expect(err).NotTo(HaveOccurred()) + for i := 0; i < int(origReplicas); i++ { + Eventually(func() (*v1.Pod, error) { + return c.CoreV1().Pods(namespace).Get(ctx, fmt.Sprintf("%s-%d", stsName, i), getOpts) + }, timeout, PollingInterval).Should(WithTransform(getRestartedAtAnnotation, Not(BeEmpty()))) + } + Eventually(func() (*appsv1.StatefulSet, error) { return c.AppsV1().StatefulSets(namespace).Get(ctx, stsName, getOpts) }, timeout, PollingInterval).Should(WithTransform(getAvailableReplicas, Equal(origReplicas))) @@ -97,6 +101,10 @@ var _ = Describe("Rabbitmq", Ordered, func() { Eventually(func() (*batchv1.Job, error) { return c.BatchV1().Jobs(namespace).Get(ctx, deleteQueueJobName, getOpts) }, timeout, PollingInterval).Should(WithTransform(getSucceededJobs, Equal(int32(1)))) + + By("deleting the job once it has succeeded") + err = c.BatchV1().Jobs(namespace).Delete(ctx, deleteQueueJobName, metav1.DeleteOptions{}) + Expect(err).NotTo(HaveOccurred()) }) }) diff --git a/bitnami/rabbitmq/CHANGELOG.md b/bitnami/rabbitmq/CHANGELOG.md index 924637b2a9..b3fcf62309 100644 --- a/bitnami/rabbitmq/CHANGELOG.md +++ b/bitnami/rabbitmq/CHANGELOG.md @@ -1,8 +1,12 @@ # Changelog -## 14.6.7 (2024-08-26) +## 14.6.8 (2024-08-28) -* [bitnami/rabbitmq] Release 14.6.7 ([#29018](https://github.com/bitnami/charts/pull/29018)) +* [bitnami/rabbitmq] Improve Ginkgo test ([#29082](https://github.com/bitnami/charts/pull/29082)) + +## 14.6.7 (2024-08-26) + +* [bitnami/rabbitmq] Release 14.6.7 (#29018) ([8eb9085](https://github.com/bitnami/charts/commit/8eb9085b47699e839bae9f0238a775c1d0b0dfa5)), closes [#29018](https://github.com/bitnami/charts/issues/29018) ## 14.6.6 (2024-08-08) diff --git a/bitnami/rabbitmq/Chart.yaml b/bitnami/rabbitmq/Chart.yaml index 9ad6d2810d..b72bd35840 100644 --- a/bitnami/rabbitmq/Chart.yaml +++ b/bitnami/rabbitmq/Chart.yaml @@ -30,4 +30,4 @@ maintainers: name: rabbitmq sources: - https://github.com/bitnami/charts/tree/main/bitnami/rabbitmq -version: 14.6.7 +version: 14.6.8