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