ERROR_CONNECTION_TERMINATED при веб-развертывании - PullRequest
1 голос
/ 12 марта 2020

У нас есть сценарий powershell, который использует MSDeploy для публикации sh в azure веб-приложении. В настоящее время сборка завершается с ошибкой:

[error]Error Code: ERROR_CONNECTION_TERMINATED
More Information: Web Deploy experienced a connection problem with the server and had to terminate the connection.  Contact your server administrator if the problem persists.  Learn more at: http://go.microsoft.com/fwlink/?LinkId=221672#ERROR_CONNECTION_TERMINATED.
Error: Unexpected end of file has occurred. The following elements are not closed: results. Line 1, position 11278.
Error count: 1.

В скрипте есть лог повторов c, который реагирует на эту ошибку, поэтому само развертывание фактически завершается нормально. Я думаю, что мне просто нужно, возможно, не выдать ошибку и позволить повторить попытку. Вот сценарий:

$DeployComplete = $false
$AttemptCount = 1
Write-Output "Deploying Files"
while((!$DeployComplete) -and ($AttemptCount -lt 6)){
    try{
        $DeployArgs = "-verb:sync -source:contentPath=""$DeploymentPackageLocation"" -dest:contentPath=d:\home\site\wwwroot\,publishSettings=""$publishProfilePath"""
        $msdeployEC = (Start-Process -FilePath "C:\Program Files\IIS\Microsoft Web Deploy V3\msdeploy.exe" -ArgumentList $DeployArgs -Wait -Passthru -NoNewWindow -ErrorAction SilentlyContinue).ExitCode
        if($msdeployEC -ne 0){throw}

        Remove-Item -Path $publishProfilePath -Force -ErrorAction SilentlyContinue
        $DeployComplete = $true
    }
    catch{
        Write-Output "`tDeloyment did not complete successfully. Attempt : $AttemptCount"
        $AttemptCount = $AttemptCount + 1
        $ErrorMessage = $_.Exception.Message        
        Write-Output $ErrorMessage
        Start-Sleep -Seconds 2
    }
}

Может быть, я просто удалил try-catch?

...