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  }