Skip to content

Commit 0a19d35

Browse files
dexhorthySalah Aldeen Al Saleh
andauthored
hide spinner if interactive false (#328)
* hide preflight spinner if interactive is false Co-authored-by: Salah Aldeen Al Saleh <[email protected]>
1 parent 7c4135d commit 0a19d35

File tree

1 file changed

+28
-26
lines changed

1 file changed

+28
-26
lines changed

cmd/preflight/cli/run.go

Lines changed: 28 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -91,35 +91,37 @@ func runPreflights(v *viper.Viper, arg string) error {
9191
finishedCh := make(chan bool, 1)
9292
progressCh := make(chan interface{}, 0) // non-zero buffer will result in missed messages
9393

94-
s := spin.New()
95-
go func() {
96-
lastMsg := ""
97-
for {
98-
select {
99-
case msg, ok := <-progressCh:
100-
if !ok {
101-
continue
102-
}
103-
switch msg := msg.(type) {
104-
case error:
105-
c := color.New(color.FgHiRed)
106-
c.Println(fmt.Sprintf("%s\r * %v", cursor.ClearEntireLine(), msg))
107-
case string:
108-
if lastMsg == msg {
109-
break
94+
if v.GetBool("interactive") {
95+
s := spin.New()
96+
go func() {
97+
lastMsg := ""
98+
for {
99+
select {
100+
case msg, ok := <-progressCh:
101+
if !ok {
102+
continue
103+
}
104+
switch msg := msg.(type) {
105+
case error:
106+
c := color.New(color.FgHiRed)
107+
c.Println(fmt.Sprintf("%s\r * %v", cursor.ClearEntireLine(), msg))
108+
case string:
109+
if lastMsg == msg {
110+
break
111+
}
112+
lastMsg = msg
113+
c := color.New(color.FgCyan)
114+
c.Println(fmt.Sprintf("%s\r * %s", cursor.ClearEntireLine(), msg))
110115
}
111-
lastMsg = msg
112-
c := color.New(color.FgCyan)
113-
c.Println(fmt.Sprintf("%s\r * %s", cursor.ClearEntireLine(), msg))
116+
case <-time.After(time.Millisecond * 100):
117+
fmt.Printf("\r \033[36mRunning Preflight checks\033[m %s ", s.Next())
118+
case <-finishedCh:
119+
fmt.Printf("\r%s\r", cursor.ClearEntireLine())
120+
return
114121
}
115-
case <-time.After(time.Millisecond * 100):
116-
fmt.Printf("\r \033[36mRunning Preflight checks\033[m %s ", s.Next())
117-
case <-finishedCh:
118-
fmt.Printf("\r%s\r", cursor.ClearEntireLine())
119-
return
120122
}
121-
}
122-
}()
123+
}()
124+
}
123125

124126
defer func() {
125127
close(finishedCh)

0 commit comments

Comments
 (0)