databricks-cli/bundle/run/progress/job_events.go

53 lines
1.1 KiB
Go

package progress
import (
"fmt"
"strings"
)
type TaskErrorEvent struct {
TaskKey string `json:"task_key"`
Error string `json:"error"`
ErrorTrace string `json:"error_trace"`
}
func NewTaskErrorEvent(taskKey, errorMessage, errorTrace string) *TaskErrorEvent {
return &TaskErrorEvent{
TaskKey: taskKey,
Error: errorMessage,
ErrorTrace: errorTrace,
}
}
func (event *TaskErrorEvent) String() string {
result := strings.Builder{}
result.WriteString(fmt.Sprintf("Task %s FAILED:\n", event.TaskKey))
result.WriteString(event.Error + "\n")
result.WriteString(event.ErrorTrace + "\n")
return result.String()
}
func (event *TaskErrorEvent) IsInplaceSupported() bool {
return false
}
type JobRunUrlEvent struct {
Type string `json:"type"`
Url string `json:"url"`
}
func NewJobRunUrlEvent(url string) *JobRunUrlEvent {
return &JobRunUrlEvent{
Type: "job_run_url",
Url: url,
}
}
func (event *JobRunUrlEvent) String() string {
return fmt.Sprintf("Run URL: %s\n", event.Url)
}
func (event *JobRunUrlEvent) IsInplaceSupported() bool {
return false
}