fix(ci): make release retryable

This commit is contained in:
justme committed 2026-10-05 01:21:37 +08:00
1 parent ce30828ed3
commit 8aaa574485
2 files changed
+20 -6

No files matched your search

+10 -2
View File
@@ -101,11 +101,19 @@ function Publish-Package([string]$Role, [string]$BinaryDirectory) {
foreach ($file in @($archive, $checksumPath)) {
$name = Split-Path -Leaf $file
$url = "$giteaBase/api/packages/justme/generic/monitor-node/$version/$name"
& curl.exe --fail-with-body --retry 3 --netrc-file $netrc --upload-file $file $url
$status = & curl.exe --silent --show-error --retry 3 --netrc-file $netrc --upload-file $file --output NUL --write-out '%{http_code}' $url
if ($LASTEXITCODE -ne 0) {
throw "Gitea package upload failed for $name."
}
Write-Output "uploaded Gitea package $name"
if ($status -match '^2') {
Write-Output "uploaded Gitea package $name"
}
elseif ($status -eq '409') {
Write-Output "Gitea package $name already exists; reusing the existing release file"
}
else {
throw "Gitea package upload failed for $name (HTTP $status)."
}
}
}