Merge pull request #5672 from hashicorp/fix_5622

try using UI again
This commit is contained in:
SwampDragons 2017-12-07 10:18:53 -08:00 committed by GitHub
commit ca26ab5d5a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 7 additions and 11 deletions

View File

@ -3,6 +3,7 @@ package restart
import ( import (
"bytes" "bytes"
"fmt" "fmt"
"io"
"log" "log"
"strings" "strings"
@ -212,20 +213,15 @@ var waitForCommunicator = func(p *Provisioner) error {
// provisioning before powershell is actually ready. // provisioning before powershell is actually ready.
// In this next check, we parse stdout to make sure that the command is // In this next check, we parse stdout to make sure that the command is
// actually running as expected. // actually running as expected.
var stdout, stderr bytes.Buffer cmdModuleLoad := &packer.RemoteCmd{Command: DefaultRestartCheckCommand}
cmdModuleLoad := &packer.RemoteCmd{ var buf, buf2 bytes.Buffer
Command: DefaultRestartCheckCommand, cmdModuleLoad.Stdout = &buf
Stdin: nil, cmdModuleLoad.Stdout = io.MultiWriter(cmdModuleLoad.Stdout, &buf2)
Stdout: &stdout,
Stderr: &stderr}
p.comm.Start(cmdModuleLoad) cmdModuleLoad.StartWithUi(p.comm, p.ui)
cmdModuleLoad.Wait() stdoutToRead := buf2.String()
stdoutToRead := stdout.String()
stderrToRead := stderr.String()
if !strings.Contains(stdoutToRead, "restarted.") { if !strings.Contains(stdoutToRead, "restarted.") {
log.Printf("Stderr is %s", stderrToRead)
log.Printf("echo didn't succeed; retrying...") log.Printf("echo didn't succeed; retrying...")
continue continue
} }