@@ -262,6 +262,97 @@ var _ = Describe("StatefulSet", func() {
262262 },
263263 ))
264264 })
265+
266+ It ("successfully overrides PVC list even when namespace not specified" , func () {
267+ storageClass := "my-storage-class"
268+ builder .Instance .Spec .Override .StatefulSet = & rabbitmqv1beta1.StatefulSet {
269+ Spec : & rabbitmqv1beta1.StatefulSetSpec {
270+ VolumeClaimTemplates : []rabbitmqv1beta1.PersistentVolumeClaim {
271+ {
272+ EmbeddedObjectMeta : rabbitmqv1beta1.EmbeddedObjectMeta {
273+ Name : "pert-1" ,
274+ },
275+ Spec : corev1.PersistentVolumeClaimSpec {
276+ Resources : corev1.ResourceRequirements {
277+ Requests : corev1.ResourceList {
278+ corev1 .ResourceStorage : * instance .Spec .Persistence .Storage ,
279+ },
280+ },
281+ StorageClassName : & storageClass ,
282+ },
283+ },
284+ {
285+ EmbeddedObjectMeta : rabbitmqv1beta1.EmbeddedObjectMeta {
286+ Name : "pert-2" ,
287+ },
288+ Spec : corev1.PersistentVolumeClaimSpec {
289+ Resources : corev1.ResourceRequirements {
290+ Requests : corev1.ResourceList {
291+ corev1 .ResourceStorage : * instance .Spec .Persistence .Storage ,
292+ },
293+ },
294+ StorageClassName : & storageClass ,
295+ },
296+ },
297+ },
298+ },
299+ }
300+ stsBuilder := builder .StatefulSet ()
301+ obj , err := stsBuilder .Build ()
302+ Expect (err ).NotTo (HaveOccurred ())
303+ statefulSet := obj .(* appsv1.StatefulSet )
304+
305+ Expect (statefulSet .Spec .VolumeClaimTemplates ).To (ConsistOf (
306+ corev1.PersistentVolumeClaim {
307+ ObjectMeta : metav1.ObjectMeta {
308+ Name : "pert-1" ,
309+ Namespace : "foo-namespace" ,
310+ OwnerReferences : []v1.OwnerReference {
311+ {
312+ APIVersion : "rabbitmq.com/v1beta1" ,
313+ Kind : "RabbitmqCluster" ,
314+ Name : instance .Name ,
315+ UID : "" ,
316+ Controller : pointer .BoolPtr (true ),
317+ BlockOwnerDeletion : pointer .BoolPtr (false ),
318+ },
319+ },
320+ },
321+ Spec : corev1.PersistentVolumeClaimSpec {
322+ Resources : corev1.ResourceRequirements {
323+ Requests : corev1.ResourceList {
324+ corev1 .ResourceStorage : * instance .Spec .Persistence .Storage ,
325+ },
326+ },
327+ StorageClassName : & storageClass ,
328+ },
329+ },
330+ corev1.PersistentVolumeClaim {
331+ ObjectMeta : metav1.ObjectMeta {
332+ Name : "pert-2" ,
333+ Namespace : "foo-namespace" ,
334+ OwnerReferences : []v1.OwnerReference {
335+ {
336+ APIVersion : "rabbitmq.com/v1beta1" ,
337+ Kind : "RabbitmqCluster" ,
338+ Name : instance .Name ,
339+ UID : "" ,
340+ Controller : pointer .BoolPtr (true ),
341+ BlockOwnerDeletion : pointer .BoolPtr (false ),
342+ },
343+ },
344+ },
345+ Spec : corev1.PersistentVolumeClaimSpec {
346+ Resources : corev1.ResourceRequirements {
347+ Requests : corev1.ResourceList {
348+ corev1 .ResourceStorage : * instance .Spec .Persistence .Storage ,
349+ },
350+ },
351+ StorageClassName : & storageClass ,
352+ },
353+ },
354+ ))
355+ })
265356 })
266357 })
267358
@@ -1344,8 +1435,7 @@ var _ = Describe("StatefulSet", func() {
13441435 Spec : & rabbitmqv1beta1.StatefulSetSpec {
13451436 Template : & rabbitmqv1beta1.PodTemplateSpec {
13461437 EmbeddedObjectMeta : & rabbitmqv1beta1.EmbeddedObjectMeta {
1347- Namespace : "my-ns" ,
1348- Name : "my-name" ,
1438+ Name : "my-name" ,
13491439 Labels : map [string ]string {
13501440 "my-label" : "my-label" ,
13511441 },
@@ -1359,7 +1449,6 @@ var _ = Describe("StatefulSet", func() {
13591449 stsBuilder := builder .StatefulSet ()
13601450 Expect (stsBuilder .Update (statefulSet )).To (Succeed ())
13611451 Expect (statefulSet .Spec .Template .ObjectMeta .Name ).To (Equal ("my-name" ))
1362- Expect (statefulSet .Spec .Template .ObjectMeta .Namespace ).To (Equal ("my-ns" ))
13631452 Expect (statefulSet .Spec .Template .ObjectMeta .Labels ).To (Equal (map [string ]string {
13641453 "my-label" : "my-label" ,
13651454 "app.kubernetes.io/component" : "rabbitmq" ,
0 commit comments