github.com/pf-qiu/concourse/v6@v6.7.3-0.20201207032516-1f455d73275f/fly/commands/internal/displayhelpers/error_handling.go (about) 1 package displayhelpers 2 3 import ( 4 "fmt" 5 "os" 6 7 "github.com/pf-qiu/concourse/v6/go-concourse/concourse" 8 9 "github.com/pf-qiu/concourse/v6/fly/ui" 10 ) 11 12 func PrintDeprecationWarningHeader() { 13 printColorFunc := ui.ErroredColor.SprintFunc() 14 fmt.Fprintf(ui.Stderr, "%s\n", printColorFunc("DEPRECATION WARNING:")) 15 } 16 17 func PrintWarningHeader() { 18 printColorFunc := ui.BlinkingErrorColor.SprintFunc() 19 fmt.Fprintf(ui.Stderr, "%s\n", printColorFunc("WARNING:")) 20 } 21 22 func ShowErrors(errorHeader string, errorMessages []string) { 23 fmt.Fprintln(ui.Stderr, "") 24 PrintWarningHeader() 25 26 fmt.Fprintln(ui.Stderr, errorHeader+":") 27 for _, errorMessage := range errorMessages { 28 fmt.Fprintf(ui.Stderr, " - %s\n", errorMessage) 29 } 30 31 fmt.Fprintln(ui.Stderr, "") 32 } 33 34 func ShowWarnings(warnings []concourse.ConfigWarning) { 35 fmt.Fprintln(ui.Stderr, "") 36 PrintDeprecationWarningHeader() 37 38 warningTypes := make(map[string]bool) 39 for _, warning := range warnings { 40 warningTypes[warning.Type] = true 41 fmt.Fprintf(ui.Stderr, " - %s\n", warning.Message) 42 } 43 44 fmt.Fprintln(ui.Stderr, "") 45 46 if warningTypes["invalid_identifier"] { 47 fmt.Fprintln(ui.Stderr, "identifier schema documentation: https://concourse-ci.org/config-basics.html#schema.identifier") 48 fmt.Fprintln(ui.Stderr, "") 49 } 50 } 51 52 func Failf(message string, args ...interface{}) { 53 fmt.Fprintf(ui.Stderr, message+"\n", args...) 54 os.Exit(1) 55 } 56 57 func FailWithErrorf(message string, err error, args ...interface{}) { 58 templatedMessage := fmt.Sprintf(message, args...) 59 Failf("%s: %s", templatedMessage, err.Error()) 60 }