From e1c17e9bf7bdeed8491867f9324dcb06ac93eceb Mon Sep 17 00:00:00 2001 From: liuqw Date: Fri, 7 Feb 2025 18:22:27 +0800 Subject: [PATCH] fix(controller): Add scheduler name validation for StatefulSet podgroup creation Signed-off-by: liuqw --- pkg/controllers/podgroup/pg_controller_handler.go | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkg/controllers/podgroup/pg_controller_handler.go b/pkg/controllers/podgroup/pg_controller_handler.go index 45201e4ec3..7e1d732a39 100644 --- a/pkg/controllers/podgroup/pg_controller_handler.go +++ b/pkg/controllers/podgroup/pg_controller_handler.go @@ -19,6 +19,7 @@ package podgroup import ( "context" "encoding/json" + "slices" "strings" appsv1 "k8s.io/api/apps/v1" @@ -138,6 +139,10 @@ func (pg *pgcontroller) addStatefulSet(obj interface{}) { if len(pods) > 0 { pod := pods[0] klog.V(4).Infof("Try to create podgroup for pod %s/%s", pod.Namespace, pod.Name) + if !slices.Contains(pg.schedulerNames, pod.Spec.SchedulerName) { + klog.V(4).Infof("Pod %s field SchedulerName is not matched", klog.KObj(pod)) + return + } err := pg.createNormalPodPGIfNotExist(pod) if err != nil { klog.Errorf("Failed to create PodGroup for pod <%s/%s>: %v", pod.Namespace, pod.Name, err)