From 890829c9c7bf95fbcb867fdb8e102fb72b32887a Mon Sep 17 00:00:00 2001 From: Ravi Shankar Date: Fri, 8 May 2026 17:49:14 -0700 Subject: [PATCH] fix(slinky): Skip exec scontrol show partition when useDynamicNodes flag is set Signed-off-by: Ravi Shankar --- pkg/engines/slinky/engine.go | 7 +++++++ pkg/engines/slurm/slurm.go | 4 ++++ 2 files changed, 11 insertions(+) diff --git a/pkg/engines/slinky/engine.go b/pkg/engines/slinky/engine.go index 71060e38..9c11bb3f 100644 --- a/pkg/engines/slinky/engine.go +++ b/pkg/engines/slinky/engine.go @@ -48,6 +48,8 @@ const ( ConfigUpdateModeNone = "none" ConfigUpdateModeSkeletonOnly = "skeleton-only" + + dynamicShowPartitionNodes = "\tNodes=NONE" ) type SlinkyEngine struct { @@ -428,6 +430,11 @@ func (eng *SlinkyEngine) listPartitionNodes(ctx context.Context, sel *metav1.Lab } func (eng *SlinkyEngine) getPartitionNodes(ctx context.Context, partition string, params []any) (string, error) { + if eng.params.UseDynamicNodes { + klog.Infof("Skipping - scontrol show partition - when using useDynamicNodes flag") + return dynamicShowPartitionNodes, nil + } + if len(params) != 1 { return "", fmt.Errorf("getPartitionNodes expects a namespace as a parameter") } diff --git a/pkg/engines/slurm/slurm.go b/pkg/engines/slurm/slurm.go index f954f9b8..1cb571b7 100644 --- a/pkg/engines/slurm/slurm.go +++ b/pkg/engines/slurm/slurm.go @@ -205,6 +205,10 @@ func GetPartitionNodes(ctx context.Context, partition string, f *TopologyNodeFin func parsePartitionNodes(partition string, data string) ([]string, error) { match := partitionNodesRe.FindStringSubmatch(data) if len(match) > 1 { + // If the nodes are NONE, return an empty list + if match[1] == "NONE" { + return []string{}, nil + } return cluset.Compact(cluset.ExpandList(match[1])), nil }