Skip to content

Commit

Permalink
Better messages
Browse files Browse the repository at this point in the history
  • Loading branch information
kanterov committed Sep 25, 2024
1 parent d3032c4 commit 3a3569e
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 7 deletions.
8 changes: 6 additions & 2 deletions bundle/config/validate/job_task_cluster_spec.go
Original file line number Diff line number Diff line change
Expand Up @@ -83,11 +83,15 @@ func validateJobTask(rb bundle.ReadOnlyBundle, task jobs.Task, taskPath dyn.Path
// notebook tasks without cluster spec will use notebook environment
} else {
// path might be not very helpful, adding user-specified task key clarifies the context
detail := fmt.Sprintf("Task %q has a task type that requires a cluster or environment, but neither is specified", task.TaskKey)
detail := fmt.Sprintf(
"Task %q requires a cluster or an environment to run. Specify one of the following fields: %s",
task.TaskKey,
strings.Join(unspecified, ", "),
)

diags = diags.Append(diag.Diagnostic{
Severity: diag.Error,
Summary: fmt.Sprintf("One of the following fields must be set: %s", strings.Join(unspecified, ", ")),
Summary: fmt.Sprintf("Missing required cluster or environment settings"),

Check failure on line 94 in bundle/config/validate/job_task_cluster_spec.go

View workflow job for this annotation

GitHub Actions / tests (macos-latest)

unnecessary use of fmt.Sprintf (S1039)

Check failure on line 94 in bundle/config/validate/job_task_cluster_spec.go

View workflow job for this annotation

GitHub Actions / tests (ubuntu-latest)

unnecessary use of fmt.Sprintf (S1039)

Check failure on line 94 in bundle/config/validate/job_task_cluster_spec.go

View workflow job for this annotation

GitHub Actions / tests (windows-latest)

unnecessary use of fmt.Sprintf (S1039)
Detail: detail,
Locations: rb.Config().GetLocations(taskPath.String()),
Paths: []dyn.Path{taskPath},
Expand Down
12 changes: 7 additions & 5 deletions bundle/config/validate/job_task_cluster_spec_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ import (
)

func TestJobTaskClusterSpec(t *testing.T) {
expectedSummary := "One of the following fields must be set: job_cluster_key, environment_key, existing_cluster_id, new_cluster"
expectedSummary := "Missing required cluster or environment settings"

type testCase struct {
name string
Expand Down Expand Up @@ -143,8 +143,9 @@ func TestJobTaskClusterSpec(t *testing.T) {
PythonWheelTask: &jobs.PythonWheelTask{},
TaskKey: "my_task",
},
errorPath: "resources.jobs.job1.tasks[0]",
errorDetail: "Task \"my_task\" has a task type that requires a cluster or environment, but neither is specified",
errorPath: "resources.jobs.job1.tasks[0]",
errorDetail: "Task \"my_task\" requires a cluster or an environment to run. Specify one of the " +
"following fields: job_cluster_key, environment_key, existing_cluster_id, new_cluster",
errorSummary: expectedSummary,
},
{
Expand All @@ -157,8 +158,9 @@ func TestJobTaskClusterSpec(t *testing.T) {
},
},
},
errorPath: "resources.jobs.job1.tasks[0].for_each_task.task",
errorDetail: "Task \"my_task\" has a task type that requires a cluster or environment, but neither is specified",
errorPath: "resources.jobs.job1.tasks[0].for_each_task.task",
errorDetail: "Task \"my_task\" requires a cluster or an environment to run. Specify one of the " +
"following fields: job_cluster_key, environment_key, existing_cluster_id, new_cluster",
errorSummary: expectedSummary,
},
}
Expand Down

0 comments on commit 3a3569e

Please sign in to comment.