From c52f10a6f54254a895c6723a462ea38adc09fa4a Mon Sep 17 00:00:00 2001 From: Travis Plunk Date: Sat, 9 Oct 2021 18:15:46 +0000 Subject: [PATCH 1/5] Add retry for signing upload --- EsrpSign.yml | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/EsrpSign.yml b/EsrpSign.yml index 88c2fb7..7b86466 100644 --- a/EsrpSign.yml +++ b/EsrpSign.yml @@ -148,8 +148,25 @@ steps: - pwsh: | $file = Get-ChildItem -Path "${{ parameters.signOutputPath }}\codesignsummary-*.md" -File $fileName = $file.Name - Move-Item -Path "${{ parameters.signOutputPath }}\$fileName" -Dest "$(Agent.TempDirectory)\$fileName" - Write-Host "##vso[artifact.upload containerfolder=signingReport;artifactname=signingReport]$(Agent.TempDirectory)\$fileName" + $retryCount = 0 + $maxTries = 5 + while($retryCount -lt $maxTries) + { + try { + Move-Item -Path "${{ parameters.signOutputPath }}\$fileName" -Dest "$(Agent.TempDirectory)\$fileName" -ErrorAction Stop + Write-Host "##vso[artifact.upload containerfolder=signingReport;artifactname=signingReport]$(Agent.TempDirectory)\$fileName" + } + catch { + Write-Log -message "Failed to move ${{ parameters.signOutputPath }}\$fileName, retrying..." + $retryCount++ + if($retryCount -ge $maxTries) + { + Start-Sleep -Seconds ($retryCount * 5) + throw + } + continue + } + } displayName: ${{ parameters.displayName }} - Upload codesign summary condition: and(succeeded(), eq(variables['ESRP_TEMPLATE_SHOULD_SIGN'], 'True')) timeoutInMinutes: 10 From 6adc3f8dcdc59e1f9ab5c15ddcda83122fb0e95f Mon Sep 17 00:00:00 2001 From: Travis Plunk Date: Sat, 9 Oct 2021 18:58:19 +0000 Subject: [PATCH 2/5] use write-verbose --- EsrpSign.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/EsrpSign.yml b/EsrpSign.yml index 7b86466..1aafe46 100644 --- a/EsrpSign.yml +++ b/EsrpSign.yml @@ -157,7 +157,7 @@ steps: Write-Host "##vso[artifact.upload containerfolder=signingReport;artifactname=signingReport]$(Agent.TempDirectory)\$fileName" } catch { - Write-Log -message "Failed to move ${{ parameters.signOutputPath }}\$fileName, retrying..." + Write-Verbose -message "Failed to move ${{ parameters.signOutputPath }}\$fileName, retrying..." -Verbose $retryCount++ if($retryCount -ge $maxTries) { From bc10fa4523f29e52948b799a8a079a263b67d542 Mon Sep 17 00:00:00 2001 From: Travis Plunk Date: Sat, 9 Oct 2021 19:48:10 +0000 Subject: [PATCH 3/5] Only write retry message on retry --- EsrpSign.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/EsrpSign.yml b/EsrpSign.yml index 1aafe46..3308b81 100644 --- a/EsrpSign.yml +++ b/EsrpSign.yml @@ -157,13 +157,14 @@ steps: Write-Host "##vso[artifact.upload containerfolder=signingReport;artifactname=signingReport]$(Agent.TempDirectory)\$fileName" } catch { - Write-Verbose -message "Failed to move ${{ parameters.signOutputPath }}\$fileName, retrying..." -Verbose $retryCount++ if($retryCount -ge $maxTries) { - Start-Sleep -Seconds ($retryCount * 5) throw } + Write-Verbose -message "Failed to move ${{ parameters.signOutputPath }}\$fileName, will retry. The error is:" -Verbose + Get-Error $_ -ErrorAction Ignore + Start-Sleep -Seconds ($retryCount * 5) continue } } From 06dd0e3c3aae18a47e984828f2913191493699bd Mon Sep 17 00:00:00 2001 From: Travis Plunk Date: Sat, 9 Oct 2021 20:32:46 +0000 Subject: [PATCH 4/5] break out of loop --- EsrpSign.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/EsrpSign.yml b/EsrpSign.yml index 3308b81..ae6b15b 100644 --- a/EsrpSign.yml +++ b/EsrpSign.yml @@ -154,6 +154,7 @@ steps: { try { Move-Item -Path "${{ parameters.signOutputPath }}\$fileName" -Dest "$(Agent.TempDirectory)\$fileName" -ErrorAction Stop + Write-Verbose "Moved ${{ parameters.signOutputPath }}\$fileName" -Verbose Write-Host "##vso[artifact.upload containerfolder=signingReport;artifactname=signingReport]$(Agent.TempDirectory)\$fileName" } catch { @@ -167,6 +168,7 @@ steps: Start-Sleep -Seconds ($retryCount * 5) continue } + break } displayName: ${{ parameters.displayName }} - Upload codesign summary condition: and(succeeded(), eq(variables['ESRP_TEMPLATE_SHOULD_SIGN'], 'True')) From 5b890a446dbb02bbb3bf1b0e021b5269cfa90c11 Mon Sep 17 00:00:00 2001 From: Travis Plunk Date: Mon, 11 Oct 2021 14:02:09 -0700 Subject: [PATCH 5/5] Update EsrpSign.yml Co-authored-by: Aditya Patwardhan --- EsrpSign.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/EsrpSign.yml b/EsrpSign.yml index ae6b15b..fa7e2f4 100644 --- a/EsrpSign.yml +++ b/EsrpSign.yml @@ -153,7 +153,7 @@ steps: while($retryCount -lt $maxTries) { try { - Move-Item -Path "${{ parameters.signOutputPath }}\$fileName" -Dest "$(Agent.TempDirectory)\$fileName" -ErrorAction Stop + Move-Item -Path "${{ parameters.signOutputPath }}\$fileName" -Dest "$(Agent.TempDirectory)\$fileName" -Force -ErrorAction Stop Write-Verbose "Moved ${{ parameters.signOutputPath }}\$fileName" -Verbose Write-Host "##vso[artifact.upload containerfolder=signingReport;artifactname=signingReport]$(Agent.TempDirectory)\$fileName" }