From 6b28e00102b87a8e79f5c62da69e87d1a653662a Mon Sep 17 00:00:00 2001 From: rowell_m_soriano Date: Mon, 29 Jun 2026 15:40:02 +0800 Subject: [PATCH] fix: explicit exit 0 after robocopy success to prevent false step failures --- .gitea/workflows/deploy.yml | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/.gitea/workflows/deploy.yml b/.gitea/workflows/deploy.yml index 0444273..151abd1 100644 --- a/.gitea/workflows/deploy.yml +++ b/.gitea/workflows/deploy.yml @@ -51,6 +51,7 @@ jobs: } Write-Host "Backed up current deployment to C:\backups\$stamp" + exit 0 - name: Stop app pools shell: pwsh @@ -65,14 +66,24 @@ jobs: shell: pwsh run: | robocopy "C:\ci-output\webapi" "C:\inetpub\cprnims-api" /MIR /R:3 /W:5 - if ($LASTEXITCODE -ge 8) { throw "robocopy failed for WebApi with exit code $LASTEXITCODE" } + $rc = $LASTEXITCODE + Write-Host "ROBOCOPY EXIT CODE: $rc" + if ($rc -ge 8) { + throw "robocopy failed for WebApi with exit code $rc" + } + exit 0 - name: Deploy WebApps files id: deploy_web shell: pwsh run: | robocopy "C:\ci-output\webapps" "C:\inetpub\cprnims-web" /MIR /R:3 /W:5 - if ($LASTEXITCODE -ge 8) { throw "robocopy failed for WebApps with exit code $LASTEXITCODE" } + $rc = $LASTEXITCODE + Write-Host "ROBOCOPY EXIT CODE: $rc" + if ($rc -ge 8) { + throw "robocopy failed for WebApps with exit code $rc" + } + exit 0 - name: Start app pools shell: pwsh @@ -109,16 +120,17 @@ jobs: Start-Sleep -Seconds 3 if (Test-Path "$backupPath\webapi") { - robocopy "$backupPath\webapi" "C:\inetpub\cprnims-api" /MIR /R:3 /W:5 + robocopy "$backupPath\webapi" "C:\inetpub\cprnims-api" /MIR /R:3 /W:5 | Out-Null } if (Test-Path "$backupPath\webapps") { - robocopy "$backupPath\webapps" "C:\inetpub\cprnims-web" /MIR /R:3 /W:5 + robocopy "$backupPath\webapps" "C:\inetpub\cprnims-web" /MIR /R:3 /W:5 | Out-Null } Start-WebAppPool -Name "CPRNIMS-Api" Start-WebAppPool -Name "CPRNIMS-Web" Write-Host "Rollback complete. Restored from $backupPath" + exit 0 - name: ROLLBACK - verify pools after restore if: failure()