@@ -261,18 +261,21 @@ func (j *JuiceFSEngine) transformTolerations(dataset *datav1alpha1.Dataset, valu
261261func (j * JuiceFSEngine ) transformPodMetadata (runtime * datav1alpha1.JuiceFSRuntime , value * JuiceFS ) (err error ) {
262262 commonLabels := utils .UnionMapsWithOverride (map [string ]string {}, runtime .Spec .PodMetadata .Labels )
263263 value .Worker .Labels = utils .UnionMapsWithOverride (commonLabels , runtime .Spec .Worker .PodMetadata .Labels )
264- // in-place update for worker pods used in webhook mutating.
265- value .Worker .Labels [common .RuntimePodType ] = common .RuntimeWorkerPod
266-
267264 value .Fuse .Labels = utils .UnionMapsWithOverride (commonLabels , runtime .Spec .Fuse .PodMetadata .Labels )
268265
269266 commonAnnotations := utils .UnionMapsWithOverride (map [string ]string {}, runtime .Spec .PodMetadata .Annotations )
270267 value .Worker .Annotations = utils .UnionMapsWithOverride (commonAnnotations , runtime .Spec .Worker .PodMetadata .Annotations )
271- // the runtime name used in webhook mutating to mutate in-place updated worker pods.
272- value .Worker .Annotations [common .AnnotationRuntimeName ] = runtime .Name
273-
274268 value .Fuse .Annotations = utils .UnionMapsWithOverride (commonAnnotations , runtime .Spec .Fuse .PodMetadata .Annotations )
275269
270+ // only Worker Pods requiring in-place updates trigger the mutating webhook
271+ if runtime .Spec .UpdateStrategy == datav1alpha1 .InPlaceIfPossible ||
272+ runtime .Spec .UpdateStrategy == datav1alpha1 .InPlace {
273+ // in-place update for worker pods used in webhook mutating.
274+ value .Worker .Labels [common .RuntimePodType ] = common .RuntimeWorkerPod
275+ // the runtime name used in webhook mutating to mutate in-place updated worker pods.
276+ value .Worker .Annotations [common .AnnotationRuntimeName ] = runtime .Name
277+ }
278+
276279 return nil
277280}
278281
0 commit comments