fix: Use curl for file uploads and add UseBasicParsing flag for PowerShell 5.1 compatibility
Some checks are pending
Tests & Quality Checks / Test on Python 3.11 (push) Waiting to run
Tests & Quality Checks / Test on Python 3.12 (push) Waiting to run
Tests & Quality Checks / Test on Python 3.11-1 (push) Waiting to run
Tests & Quality Checks / Test on Python 3.12-1 (push) Waiting to run
Tests & Quality Checks / Test on Python 3.10 (push) Waiting to run
Tests & Quality Checks / Test on Python 3.11-2 (push) Waiting to run
Tests & Quality Checks / Test on Python 3.12-2 (push) Waiting to run
Tests & Quality Checks / Build Artifacts (push) Blocked by required conditions
Tests & Quality Checks / Build Artifacts-1 (push) Blocked by required conditions

This commit is contained in:
claudi 2026-01-28 15:14:42 +01:00
parent 72b0cfb496
commit 1d26d785a3

View file

@ -113,6 +113,7 @@ try {
-Headers $headers ` -Headers $headers `
-Body $releaseData ` -Body $releaseData `
-TimeoutSec 30 ` -TimeoutSec 30 `
-UseBasicParsing `
-ErrorAction Stop -ErrorAction Stop
$releaseInfo = $response.Content | ConvertFrom-Json $releaseInfo = $response.Content | ConvertFrom-Json
@ -124,24 +125,23 @@ catch {
exit 1 exit 1
} }
# Step 2: Upload executable as asset # Step 2: Upload executable as asset using curl
Write-Host "Uploading executable asset..." -ForegroundColor Yellow Write-Host "Uploading executable asset..." -ForegroundColor Yellow
$uploadUrl = "$ForgejoUrl/api/v1/repos/$Repo/releases/$releaseId/assets"
try { try {
$exeItem = Get-Item $ExePath $curlAuth = "$ForgejoUser`:$ForgejoPW"
$uploadUrl = "$ForgejoUrl/api/v1/repos/$Repo/releases/$releaseId/assets"
$form = @{ $response = curl.exe -s -X POST `
attachment = $exeItem -u $curlAuth `
-F "attachment=@$ExePath" `
$uploadUrl
if ($response -like "*error*" -or $response -like "*404*") {
Write-Host "ERROR uploading executable: $response" -ForegroundColor Red
exit 1
} }
$response = Invoke-WebRequest -Uri $uploadUrl `
-Method POST `
-Headers @{ "Authorization" = "Basic $auth" } `
-Form $form `
-TimeoutSec 600 `
-ErrorAction Stop
Write-Host "[OK] Executable uploaded" -ForegroundColor Green Write-Host "[OK] Executable uploaded" -ForegroundColor Green
} }
catch { catch {
@ -149,23 +149,20 @@ catch {
exit 1 exit 1
} }
# Step 3: Upload checksum as asset # Step 3: Upload checksum as asset using curl
Write-Host "Uploading checksum asset..." -ForegroundColor Yellow Write-Host "Uploading checksum asset..." -ForegroundColor Yellow
try { try {
$checksumItem = Get-Item $ChecksumPath $response = curl.exe -s -X POST `
-u $curlAuth `
-F "attachment=@$ChecksumPath" `
$uploadUrl
$form = @{ if ($response -like "*error*" -or $response -like "*404*") {
attachment = $checksumItem Write-Host "ERROR uploading checksum: $response" -ForegroundColor Red
exit 1
} }
$response = Invoke-WebRequest -Uri $uploadUrl `
-Method POST `
-Headers @{ "Authorization" = "Basic $auth" } `
-Form $form `
-TimeoutSec 30 `
-ErrorAction Stop
Write-Host "[OK] Checksum uploaded" -ForegroundColor Green Write-Host "[OK] Checksum uploaded" -ForegroundColor Green
} }
catch { catch {