Add HTTP response code checking to debug upload failures
Some checks failed
Build libostree Backport / Build libostree Backport (push) Failing after 9m19s

This commit is contained in:
robojerk 2025-07-21 15:39:53 +00:00
parent 1b8166c26c
commit b0dcb0f9a6

View file

@ -138,6 +138,19 @@ jobs:
apt-get update -y
apt-get install -y curl
- name: Debug - Check automatic token (safe)
run: |
echo "=== Debugging Automatic Token ==="
echo "Token exists: ${{ secrets.FORGEJO_TOKEN != '' }}"
echo "Token length: ${#FORGEJO_TOKEN}"
echo "Token first 4 chars: ${FORGEJO_TOKEN:0:4}..."
echo "Token last 4 chars: ...${FORGEJO_TOKEN: -4}"
echo "Environment variable name: FORGEJO_TOKEN"
echo "Available secrets:"
env | grep -i token || echo "No token env vars found"
env:
FORGEJO_TOKEN: ${{ secrets.FORGEJO_TOKEN }}
- name: Test API endpoints
run: |
echo "=== Testing Forgejo API endpoints with automatic token ==="
@ -177,11 +190,18 @@ jobs:
# Upload to Forgejo's Debian Package Registry using automatic token
# PUT https://forgejo.example.com/api/packages/{owner}/debian/pool/{distribution}/{component}/upload
curl -H "Authorization: Bearer ${{ secrets.FORGEJO_TOKEN }}" \
response=$(curl -s -w "%{http_code}" -H "Authorization: Bearer ${{ secrets.FORGEJO_TOKEN }}" \
--upload-file "$deb_file" \
"https://git.raines.xyz/api/packages/robojerk/debian/pool/noble/main/upload"
"https://git.raines.xyz/api/packages/robojerk/debian/pool/noble/main/upload")
echo "Debian Package Registry upload completed for $deb_file"
http_code="${response: -3}"
echo "HTTP Response Code: $http_code"
if [ "$http_code" = "201" ]; then
echo "✅ Debian Package Registry upload SUCCESS for $deb_file"
else
echo "❌ Debian Package Registry upload FAILED for $deb_file (HTTP $http_code)"
fi
fi
done
@ -205,10 +225,46 @@ jobs:
# Upload to Forgejo's Generic Package Registry using automatic token
# PUT https://forgejo.example.com/api/packages/{owner}/generic/{package_name}/{package_version}/{file_name}
curl -H "Authorization: Bearer ${{ secrets.FORGEJO_TOKEN }}" \
response=$(curl -s -w "%{http_code}" -H "Authorization: Bearer ${{ secrets.FORGEJO_TOKEN }}" \
--upload-file "$deb_file" \
"https://git.raines.xyz/api/packages/robojerk/generic/$package_name/$version/$filename"
"https://git.raines.xyz/api/packages/robojerk/generic/$package_name/$version/$filename")
echo "Generic Package Registry upload completed for $deb_file"
http_code="${response: -3}"
echo "HTTP Response Code: $http_code"
if [ "$http_code" = "201" ]; then
echo "✅ Generic Package Registry upload SUCCESS for $deb_file"
else
echo "❌ Generic Package Registry upload FAILED for $deb_file (HTTP $http_code)"
fi
fi
done
done
- name: Check uploaded packages and provide assignment instructions
run: |
echo "=== Package Upload Summary ==="
echo ""
echo "📦 Check the HTTP response codes above to see if uploads succeeded"
echo "🔍 HTTP 201 = Success, HTTP 401 = Authentication failed, HTTP 403 = Permission denied"
echo ""
echo "📋 If uploads succeeded (HTTP 201), to make packages visible in your repository:"
echo "1. Go to: https://git.raines.xyz/robojerk/-/packages"
echo "2. Find the uploaded packages (they may be under 'debian' or 'generic')"
echo "3. Click on each package → Settings → Assign to repository"
echo "4. Select 'libostree-dev' repository"
echo ""
echo "🔗 After assignment, packages will appear at:"
echo " https://git.raines.xyz/robojerk/libostree-dev/packages"
echo ""
echo "📝 Packages that were attempted:"
for deb_file in release-assets/*.deb; do
if [ -f "$deb_file" ]; then
filename=$(basename "$deb_file")
echo " 📦 $filename"
fi
done
echo ""
echo "🎯 Next steps:"
echo " - Check HTTP response codes above"
echo " - If HTTP 201, manually assign packages to repository via web UI"
echo " - If HTTP 401/403, check token permissions"