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