部署脚本现在会在部署成功/失败后自动调用 /api/report 上报日志。同步到服务器后,需要重新下载安装脚本(因为部署脚本模板变了),再执行一次。

This commit is contained in:
2026-07-19 01:46:56 +08:00
parent cfebcf4f0e
commit 583a15218f
2 changed files with 6 additions and 2 deletions
+3 -1
View File
@@ -36,15 +36,17 @@ Copy-Item "$CertDir\private.key" "$CertDir\private.key.bak" -ErrorAction Sil
Move-Item "$TmpDir\fullchain.pem" "$CertDir\fullchain.pem" -Force
Move-Item "$TmpDir\private.key" "$CertDir\private.key" -Force
# 5. 校验 & 重载
# 5. 校验 & 重载 & 上报
try {
Invoke-Expression $CheckCmd
$remote | Out-File -NoNewline -Encoding ascii $VersionFile
Invoke-Expression $ReloadCmd
Write-Host "[$(Get-Date -Format o)] updated: $Domain -> $remote"
try { Invoke-WebRequest -Uri "$BaseUrl/api/report?domain=$EncodedDomain&status=success&message=deployed+v$remote" -Headers $headers -Method POST -UseBasicParsing -SkipCertificateCheck | Out-Null } catch {}
} catch {
Move-Item "$CertDir\fullchain.pem.bak" "$CertDir\fullchain.pem" -Force -ErrorAction SilentlyContinue
Move-Item "$CertDir\private.key.bak" "$CertDir\private.key" -Force -ErrorAction SilentlyContinue
Write-Error "[$(Get-Date -Format o)] FAILED: $Domain, rolled back"
try { Invoke-WebRequest -Uri "$BaseUrl/api/report?domain=$EncodedDomain&status=failed&message=check+failed+rolled+back" -Headers $headers -Method POST -UseBasicParsing -SkipCertificateCheck | Out-Null } catch {}
exit 1
}