@@ -56,20 +56,21 @@ func (s *StatefulSet) CreateOrPatch(
5656 }
5757
5858 op , err := controllerutil .CreateOrPatch (ctx , h .GetClient (), statefulset , func () error {
59- // selector is immutable so we set this value only if
59+ // selector and VolumeClaimTemplates are immutable so we set this value only if
6060 // a new object is going to be created
6161 if statefulset .CreationTimestamp .IsZero () {
6262 statefulset .Spec .Selector = s .statefulset .Spec .Selector
63+ statefulset .Spec .VolumeClaimTemplates = s .statefulset .Spec .VolumeClaimTemplates
6364 }
6465
6566 statefulset .Annotations = util .MergeStringMaps (statefulset .Annotations , s .statefulset .Annotations )
6667 statefulset .Labels = util .MergeStringMaps (statefulset .Labels , s .statefulset .Labels )
67- // We need to copy the Spec field by field as Selector is not updatable
68+ // We need to copy the Spec field by field as Selector and VolumeClaimTemplates are not updatable
6869 // This list needs to be synced StatefulSet to gain ability to set
6970 // those new fields via lib-common
71+ statefulset .Spec .VolumeClaimTemplates = s .statefulset .Spec .VolumeClaimTemplates
7072 statefulset .Spec .Replicas = s .statefulset .Spec .Replicas
7173 statefulset .Spec .Template = s .statefulset .Spec .Template
72- statefulset .Spec .VolumeClaimTemplates = s .statefulset .Spec .VolumeClaimTemplates
7374 statefulset .Spec .ServiceName = s .statefulset .Spec .ServiceName
7475 statefulset .Spec .PodManagementPolicy = s .statefulset .Spec .PodManagementPolicy
7576 statefulset .Spec .UpdateStrategy = s .statefulset .Spec .UpdateStrategy
0 commit comments