Skip to content

Commit 38bc539

Browse files
julienmancusonv-anants
authored andcommitted
fix: do not fail if backendFramework cannot be detected (#2655)
1 parent 0cd997b commit 38bc539

File tree

2 files changed

+22
-22
lines changed

2 files changed

+22
-22
lines changed

deploy/cloud/operator/internal/dynamo/graph.go

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1012,7 +1012,7 @@ func detectBackendFrameworkFromArgs(command []string, args []string) (BackendFra
10121012
}
10131013

10141014
if len(detected) == 0 {
1015-
return "", fmt.Errorf("no backend framework detected from command: %q", fullCommand)
1015+
return BackendFrameworkNoop, nil
10161016
}
10171017

10181018
if len(detected) > 1 {
@@ -1059,13 +1059,13 @@ func determineBackendFramework(
10591059
}
10601060

10611061
// Validate consistency if both detected and explicit exist
1062-
if detectedFramework != "" && explicitFramework != "" && detectedFramework != explicitFramework {
1062+
if detectedFramework != "" && detectedFramework != BackendFrameworkNoop && explicitFramework != "" && detectedFramework != explicitFramework {
10631063
return "", fmt.Errorf("backend framework mismatch: detected %q from command but explicitly configured as %q",
10641064
detectedFramework, explicitFramework)
10651065
}
10661066

10671067
// Return in order of preference: detected > explicit > error
1068-
if detectedFramework != "" {
1068+
if detectedFramework != "" && detectedFramework != BackendFrameworkNoop {
10691069
return detectedFramework, nil
10701070
}
10711071

@@ -1079,7 +1079,7 @@ func determineBackendFramework(
10791079
}
10801080

10811081
// No command/args to detect from and no explicit config
1082-
return "", fmt.Errorf("backend framework must be specified explicitly or detectable from command/args")
1082+
return BackendFrameworkNoop, nil
10831083
}
10841084

10851085
// getBackendFrameworkFromComponent attempts to determine backend framework using hybrid approach:

deploy/cloud/operator/internal/dynamo/graph_test.go

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -3626,10 +3626,10 @@ func TestDetectBackendFrameworkFromArgs(t *testing.T) {
36263626
expected: BackendFrameworkSGLang,
36273627
},
36283628
{
3629-
name: "no backend detected",
3630-
command: []string{"/bin/sh", "-c"},
3631-
args: []string{"echo hello world"},
3632-
expectError: true,
3629+
name: "no backend detected",
3630+
command: []string{"/bin/sh", "-c"},
3631+
args: []string{"echo hello world"},
3632+
expected: BackendFrameworkNoop,
36333633
},
36343634
{
36353635
name: "multiple backends detected",
@@ -3709,17 +3709,17 @@ func TestDetermineBackendFramework(t *testing.T) {
37093709
errorContains: "backend framework mismatch",
37103710
},
37113711
{
3712-
name: "worker with no detection, no explicit - returns error",
3712+
name: "worker with no detection, no explicit - returns noop",
37133713
componentType: "worker",
3714-
expectError: true,
3715-
errorContains: "backend framework must be specified explicitly or detectable from command/args",
3714+
expected: BackendFrameworkNoop,
3715+
expectError: false,
37163716
},
37173717
{
3718-
name: "worker with detection failure, no explicit - returns error",
3718+
name: "worker with detection failure, no explicit - returns noop",
37193719
componentType: "worker",
37203720
args: []string{"echo hello world"},
3721-
expectError: true,
3722-
errorContains: "could not determine backend framework",
3721+
expected: BackendFrameworkNoop,
3722+
expectError: false,
37233723
},
37243724
}
37253725

@@ -3843,18 +3843,18 @@ func TestGetBackendFrameworkFromComponent(t *testing.T) {
38433843
expected: BackendFrameworkNoop,
38443844
},
38453845
{
3846-
name: "worker with no detection, no explicit - returns error",
3846+
name: "worker with no detection, no explicit - returns noop",
38473847
component: &v1alpha1.DynamoComponentDeploymentOverridesSpec{
38483848
DynamoComponentDeploymentSharedSpec: v1alpha1.DynamoComponentDeploymentSharedSpec{
38493849
ComponentType: "worker", // Worker component
38503850
},
38513851
},
3852-
deployment: &v1alpha1.DynamoGraphDeployment{},
3853-
expectError: true,
3854-
errorContains: "backend framework must be specified explicitly or detectable from command/args",
3852+
deployment: &v1alpha1.DynamoGraphDeployment{},
3853+
expected: BackendFrameworkNoop,
3854+
expectError: false,
38553855
},
38563856
{
3857-
name: "worker with detection failure, no explicit - returns error",
3857+
name: "worker with detection failure, no explicit - returns noop",
38583858
component: &v1alpha1.DynamoComponentDeploymentOverridesSpec{
38593859
DynamoComponentDeploymentSharedSpec: v1alpha1.DynamoComponentDeploymentSharedSpec{
38603860
ComponentType: "worker", // Worker component
@@ -3865,9 +3865,9 @@ func TestGetBackendFrameworkFromComponent(t *testing.T) {
38653865
},
38663866
},
38673867
},
3868-
deployment: &v1alpha1.DynamoGraphDeployment{},
3869-
expectError: true,
3870-
errorContains: "could not determine backend framework",
3868+
deployment: &v1alpha1.DynamoGraphDeployment{},
3869+
expected: BackendFrameworkNoop,
3870+
expectError: false,
38713871
},
38723872
}
38733873

0 commit comments

Comments
 (0)