packer: Ui requires input for Ctrl-C

pull/15/merge
Mitchell Hashimoto 13 years ago
parent 4c1873d1f3
commit 22e7345148

@ -210,7 +210,6 @@ func (c Command) Run(env packer.Environment, args []string) int {
} }
} }
// Wait for both the builds to complete and the interrupt handler, // Wait for both the builds to complete and the interrupt handler,
// if it is interrupted. // if it is interrupted.
log.Printf("Waiting on builds to complete...") log.Printf("Waiting on builds to complete...")

@ -124,14 +124,18 @@ func (rw *ReaderWriterUi) Ask(query string) string {
result <- line result <- line
}() }()
select { for {
case line := <-result: select {
return line case line := <-result:
case <-sigCh: return line
log.Println("Interrupt during Ask call. Returning immediately.") case <-sigCh:
fmt.Fprintln(rw.Writer) fmt.Fprint(
return "" rw.Writer,
"\nInterrupts are blocked while waiting for input. Press enter.")
}
} }
return ""
} }
func (rw *ReaderWriterUi) Say(message string) { func (rw *ReaderWriterUi) Say(message string) {

Loading…
Cancel
Save