Skip to content

Commit d9b49f6

Browse files
committed
Don't update VolumeClaimTemplates filed in StatefulSet
Similarly to the `Selector` field, `VolumeClaimTemplates` is also immutable so we can set it only when new object is going to be created. Related: #OSPRH-19930 Signed-off-by: Slawek Kaplonski <skaplons@redhat.com>
1 parent 9eb684f commit d9b49f6

1 file changed

Lines changed: 4 additions & 3 deletions

File tree

modules/common/statefulset/statefulset.go

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -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

Comments
 (0)