Skip to content

Commit d2b3d1b

Browse files
jzweifeldaveshanley
authored andcommitted
summary - suppress spinner if noColor is true
This behavior is consistent with how html-report behaves, and is desireable for CI environments such as GitHub Actions where the spinner output won't look near as pretty.
1 parent 34bab3e commit d2b3d1b

File tree

1 file changed

+35
-24
lines changed

1 file changed

+35
-24
lines changed

cmd/summary.go

+35-24
Original file line numberDiff line numberDiff line change
@@ -64,21 +64,24 @@ func GetSummaryCommand() *cobra.Command {
6464
}
6565

6666
listenForUpdates := func(updateChan chan *model.ProgressUpdate, errorChan chan model.ProgressError) {
67-
spinner, _ := pterm.DefaultSpinner.Start("starting work.")
68-
69-
spinner.InfoPrinter = &pterm.PrefixPrinter{
70-
MessageStyle: &pterm.Style{pterm.FgLightCyan},
71-
Prefix: pterm.Prefix{
72-
Style: &pterm.Style{pterm.FgBlack, pterm.BgLightMagenta},
73-
Text: " SPEC ",
74-
},
75-
}
76-
spinner.SuccessPrinter = &pterm.PrefixPrinter{
77-
MessageStyle: &pterm.Style{pterm.FgLightCyan},
78-
Prefix: pterm.Prefix{
79-
Style: &pterm.Style{pterm.FgBlack, pterm.BgLightCyan},
80-
Text: " DONE ",
81-
},
67+
var spinner *pterm.SpinnerPrinter
68+
if !noColorFlag {
69+
spinner, _ := pterm.DefaultSpinner.Start("starting work.")
70+
71+
spinner.InfoPrinter = &pterm.PrefixPrinter{
72+
MessageStyle: &pterm.Style{pterm.FgLightCyan},
73+
Prefix: pterm.Prefix{
74+
Style: &pterm.Style{pterm.FgBlack, pterm.BgLightMagenta},
75+
Text: " SPEC ",
76+
},
77+
}
78+
spinner.SuccessPrinter = &pterm.PrefixPrinter{
79+
MessageStyle: &pterm.Style{pterm.FgLightCyan},
80+
Prefix: pterm.Prefix{
81+
Style: &pterm.Style{pterm.FgBlack, pterm.BgLightCyan},
82+
Text: " DONE ",
83+
},
84+
}
8285
}
8386

8487
var warnings []string
@@ -87,20 +90,26 @@ func GetSummaryCommand() *cobra.Command {
8790
select {
8891
case update, ok := <-updateChan:
8992
if ok {
90-
if !update.Completed {
91-
spinner.UpdateText(update.Message)
92-
} else {
93-
spinner.Info(update.Message)
93+
if !noColorFlag {
94+
if !update.Completed {
95+
spinner.UpdateText(update.Message)
96+
} else {
97+
spinner.Info(update.Message)
98+
}
9499
}
95100
if update.Warning {
96101
warnings = append(warnings, update.Message)
97102
}
98103
} else {
99104
if !failed {
100-
spinner.Success("completed")
101-
fmt.Println()
105+
if !noColorFlag {
106+
spinner.Success("completed")
107+
fmt.Println()
108+
}
102109
} else {
103-
spinner.Fail("failed to complete. sorry!")
110+
if !noColorFlag {
111+
spinner.Fail("failed to complete. sorry!")
112+
}
104113
}
105114
if len(warnings) > 0 {
106115
pterm.Warning.Print("warnings reported during processing")
@@ -123,8 +132,10 @@ func GetSummaryCommand() *cobra.Command {
123132
}
124133
case err := <-errorChan:
125134
if err.Fatal {
126-
spinner.Fail(fmt.Sprintf("Stopped: %s", err.Message))
127-
spinner.Stop()
135+
if !noColorFlag {
136+
spinner.Fail(fmt.Sprintf("Stopped: %s", err.Message))
137+
spinner.Stop()
138+
}
128139
} else {
129140
warnings = append(warnings, err.Message)
130141
}

0 commit comments

Comments
 (0)