Skip to content

Commit bfd8ff7

Browse files
authored
Merge pull request #1176 from nebius/fix-topology
fix topology
2 parents 1b46144 + a785d7e commit bfd8ff7

File tree

2 files changed

+12
-11
lines changed

2 files changed

+12
-11
lines changed

internal/controller/topologyconfcontroller/workertopology_controller.go

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ import (
1010

1111
"github.com/go-logr/logr"
1212
corev1 "k8s.io/api/core/v1"
13+
apierrors "k8s.io/apimachinery/pkg/api/errors"
1314
"k8s.io/apimachinery/pkg/runtime"
1415
ctrl "sigs.k8s.io/controller-runtime"
1516
"sigs.k8s.io/controller-runtime/pkg/builder"
@@ -134,15 +135,15 @@ func isClusterReconciliationNeeded(slurmCluster *slurmv1.SlurmCluster) bool {
134135
func (r *WorkerTopologyReconciler) handleTopologyConfigMapFunctional(
135136
ctx context.Context, req ctrl.Request, slurmCluster *slurmv1.SlurmCluster, logger logr.Logger) (*corev1.ConfigMap, error) {
136137
topologyLabelsConfigMap, err := r.getNodeTopologyLabelsConfigMap(ctx)
137-
138-
switch {
139-
case client.IgnoreNotFound(err) == nil:
140-
logger.Info("Node topology labels ConfigMap not found, creating with default topology")
141-
if err = r.createDefaultTopologyConfigMap(ctx, req, slurmCluster, logger); err != nil {
142-
return nil, fmt.Errorf("create default topology config map: %w", err)
138+
if err != nil {
139+
if apierrors.IsNotFound(err) {
140+
logger.Info("Node topology labels ConfigMap not found, creating with default topology")
141+
if err = r.createDefaultTopologyConfigMap(ctx, req, slurmCluster, logger); err != nil {
142+
return nil, fmt.Errorf("create default topology config map: %w", err)
143+
}
144+
return nil, fmt.Errorf("config map %s not found, created with default topology", err)
143145
}
144-
return nil, fmt.Errorf("config map %s not found, created with default topology", err)
145-
case err != nil:
146+
146147
return nil, fmt.Errorf("get node topology labels config map: %w", err)
147148
}
148149

@@ -224,7 +225,7 @@ func InitializeTopologyConf(asts *kruisev1b1.StatefulSetList) string {
224225
}
225226

226227
for i := 0; i < int(*sts.Spec.Replicas); i++ {
227-
nodes = append(nodes, sts.Name+strconv.Itoa(i))
228+
nodes = append(nodes, sts.Name+"-"+strconv.Itoa(i))
228229
}
229230
}
230231

internal/controller/topologyconfcontroller/workertopology_controller_test.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -128,7 +128,7 @@ func TestInitializeTopologyConf(t *testing.T) {
128128
},
129129
},
130130
},
131-
expected: "SwitchName=unknown Nodes=worker-sts0,worker-sts1,worker-sts2",
131+
expected: "SwitchName=unknown Nodes=worker-sts-0,worker-sts-1,worker-sts-2",
132132
},
133133
{
134134
name: "Multiple StatefulSets with replicas",
@@ -150,7 +150,7 @@ func TestInitializeTopologyConf(t *testing.T) {
150150
},
151151
},
152152
},
153-
expected: "SwitchName=unknown Nodes=worker-sts10,worker-sts11,worker-sts20",
153+
expected: "SwitchName=unknown Nodes=worker-sts1-0,worker-sts1-1,worker-sts2-0",
154154
},
155155
{
156156
name: "StatefulSet with zero replicas",

0 commit comments

Comments
 (0)