Compare commits
2 Commits
66734923cb
...
v0.0.32
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
999a595b9c | ||
|
|
e6f705486d |
@@ -17,10 +17,14 @@ jobs:
|
|||||||
cd $GITHUB_WORKSPACE
|
cd $GITHUB_WORKSPACE
|
||||||
git init
|
git init
|
||||||
git remote add origin ${{ github.server_url }}/${{ github.repository }}.git
|
git remote add origin ${{ github.server_url }}/${{ github.repository }}.git
|
||||||
git fetch origin ${{ github.ref }}
|
|
||||||
if [[ "${{ github.ref }}" == refs/tags/* ]]; then
|
if [[ "${{ github.ref }}" == refs/tags/* ]]; then
|
||||||
git checkout ${{ github.ref_name }}
|
# For tags, fetch the specific tag and checkout the commit it points to
|
||||||
|
git fetch origin ${{ github.ref }}:refs/tags/${{ github.ref_name }}
|
||||||
|
git checkout refs/tags/${{ github.ref_name }}
|
||||||
else
|
else
|
||||||
|
# For branches, fetch and checkout with tracking
|
||||||
|
git fetch origin ${{ github.ref_name }}:refs/remotes/origin/${{ github.ref_name }}
|
||||||
git checkout -b ${{ github.ref_name }} origin/${{ github.ref_name }}
|
git checkout -b ${{ github.ref_name }} origin/${{ github.ref_name }}
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@@ -99,26 +103,25 @@ jobs:
|
|||||||
echo "Creating release for tag: $TAG"
|
echo "Creating release for tag: $TAG"
|
||||||
echo "Repository: $REPO_OWNER/$REPO_NAME"
|
echo "Repository: $REPO_OWNER/$REPO_NAME"
|
||||||
|
|
||||||
# Get or create release
|
# Create release using Gitea API
|
||||||
RELEASE_JSON=$(curl -s -X GET \
|
echo "Creating new release..."
|
||||||
|
RESPONSE=$(curl -s -X POST \
|
||||||
-H "Authorization: token $GITEA_TOKEN" \
|
-H "Authorization: token $GITEA_TOKEN" \
|
||||||
"$GITEA_URL/api/v1/repos/$REPO_OWNER/$REPO_NAME/releases/tags/$TAG" 2>/dev/null || echo "{}")
|
-H "Content-Type: application/json" \
|
||||||
|
-d "{\"tag_name\":\"$TAG\",\"name\":\"Release $TAG\",\"draft\":false,\"prerelease\":false}" \
|
||||||
|
"$GITEA_URL/api/v1/repos/$REPO_OWNER/$REPO_NAME/releases")
|
||||||
|
|
||||||
RELEASE_ID=$(echo "$RELEASE_JSON" | jq -r '.id // empty' 2>/dev/null)
|
# Extract release ID using grep instead of jq
|
||||||
|
RELEASE_ID=$(echo "$RESPONSE" | grep -o '"id":[0-9]*' | head -1 | grep -o '[0-9]*')
|
||||||
|
|
||||||
if [ -z "$RELEASE_ID" ]; then
|
if [ -z "$RELEASE_ID" ]; then
|
||||||
echo "Creating new release..."
|
echo "Failed to create release. Response:"
|
||||||
RELEASE_JSON=$(curl -s -X POST \
|
echo "$RESPONSE"
|
||||||
-H "Authorization: token $GITEA_TOKEN" \
|
exit 1
|
||||||
-H "Content-Type: application/json" \
|
|
||||||
-d "{\"tag_name\":\"$TAG\",\"name\":\"Release $TAG\",\"draft\":false,\"prerelease\":false}" \
|
|
||||||
"$GITEA_URL/api/v1/repos/$REPO_OWNER/$REPO_NAME/releases")
|
|
||||||
RELEASE_ID=$(echo "$RELEASE_JSON" | jq -r '.id')
|
|
||||||
echo "Created release ID: $RELEASE_ID"
|
|
||||||
else
|
|
||||||
echo "Using existing release ID: $RELEASE_ID"
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
echo "Created release ID: $RELEASE_ID"
|
||||||
|
|
||||||
# Upload all binaries
|
# Upload all binaries
|
||||||
echo "Uploading release artifacts..."
|
echo "Uploading release artifacts..."
|
||||||
for file in bin/*; do
|
for file in bin/*; do
|
||||||
@@ -126,15 +129,18 @@ jobs:
|
|||||||
filename=$(basename "$file")
|
filename=$(basename "$file")
|
||||||
echo " Uploading: $filename"
|
echo " Uploading: $filename"
|
||||||
|
|
||||||
curl -s -X POST \
|
UPLOAD_RESPONSE=$(curl -s -w "\n%{http_code}" -X POST \
|
||||||
-H "Authorization: token $GITEA_TOKEN" \
|
-H "Authorization: token $GITEA_TOKEN" \
|
||||||
-F "attachment=@$file" \
|
-F "attachment=@$file" \
|
||||||
"$GITEA_URL/api/v1/repos/$REPO_OWNER/$REPO_NAME/releases/$RELEASE_ID/assets" > /dev/null
|
"$GITEA_URL/api/v1/repos/$REPO_OWNER/$REPO_NAME/releases/$RELEASE_ID/assets")
|
||||||
|
|
||||||
if [ $? -eq 0 ]; then
|
HTTP_CODE=$(echo "$UPLOAD_RESPONSE" | tail -n 1)
|
||||||
echo " ✓ $filename uploaded"
|
|
||||||
|
if [ "$HTTP_CODE" = "201" ] || [ "$HTTP_CODE" = "200" ]; then
|
||||||
|
echo " ✓ $filename uploaded (HTTP $HTTP_CODE)"
|
||||||
else
|
else
|
||||||
echo " ✗ Failed to upload $filename"
|
echo " ✗ Failed to upload $filename (HTTP $HTTP_CODE)"
|
||||||
|
echo "Response: $(echo "$UPLOAD_RESPONSE" | head -n -1)"
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
|
|||||||
Reference in New Issue
Block a user