Capture output of the build for better reporting

This commit is contained in:
Steve Streeting 2020-05-11 16:41:56 +01:00
parent a9f604aa1a
commit 446f6c8da6

View File

@ -144,18 +144,33 @@ try {
Write-Output "Would run: build.bat $buildargs" Write-Output "Would run: build.bat $buildargs"
} else { } else {
Write-Verbose "Running $buildbat $buildargs" Write-Verbose "Running $buildbat $buildargs"
$process = (Start-Process $buildbat -ArgumentList $buildargs -PassThru)
# Spinwait since -Wait doesn't seem to work? $pinfo = New-Object System.Diagnostics.ProcessStartInfo
$pinfo.FileName = $buildbat
$pinfo.RedirectStandardError = $true
$pinfo.RedirectStandardOutput = $true
$pinfo.UseShellExecute = $false
$pinfo.Arguments = $buildargs
$process = New-Object System.Diagnostics.Process
$process.StartInfo = $pinfo
$process.Start() | Out-Null
Write-Host "UE4 Build: " -NoNewline
do { do {
Write-Host "." -NoNewline Write-Host "." -NoNewline
start-sleep -Milliseconds 1000 start-sleep -Milliseconds 1000
} until ($process.HasExited) } until ($process.HasExited)
Write-Host "."
if ($process.ExitCode -ne 0) { if ($process.ExitCode -ne 0) {
$code = $process.ExitCode $code = $process.ExitCode
Write-Output $process.StandardOutput.ReadToEnd()
Write-Output $process.StandardError.ReadToEnd()
throw "*** Build exited with code $code, see above" throw "*** Build exited with code $code, see above"
} else {
Write-Verbose $process.StandardOutput.ReadToEnd()
Write-Output "---- UE4 Build OK ----"
} }
} }