fix: pipeline version v6
This commit is contained in:
parent
0d03ee61e2
commit
5fb117340a
@ -26,6 +26,22 @@ jobs:
|
|||||||
VERSION="0.1.1"
|
VERSION="0.1.1"
|
||||||
echo "VERSION=$VERSION" >> $GITHUB_ENV
|
echo "VERSION=$VERSION" >> $GITHUB_ENV
|
||||||
echo "Publishing version: $VERSION"
|
echo "Publishing version: $VERSION"
|
||||||
|
|
||||||
|
- name: Create and push Git tag
|
||||||
|
run: |
|
||||||
|
# Configure Git credentials
|
||||||
|
git config --global user.name "Gitea Actions"
|
||||||
|
git config --global user.email "actions@gitea.com"
|
||||||
|
|
||||||
|
# Create tag if it doesn't exist
|
||||||
|
if ! git tag | grep -q "v${VERSION}"; then
|
||||||
|
echo "Creating tag v${VERSION}..."
|
||||||
|
git tag -a "v${VERSION}" -m "Release version ${VERSION}"
|
||||||
|
git push origin "v${VERSION}"
|
||||||
|
echo "✅ Tag v${VERSION} created and pushed"
|
||||||
|
else
|
||||||
|
echo "✅ Tag v${VERSION} already exists"
|
||||||
|
fi
|
||||||
|
|
||||||
- name: Prepare release directory
|
- name: Prepare release directory
|
||||||
run: mkdir -p ./release
|
run: mkdir -p ./release
|
||||||
@ -184,4 +200,75 @@ jobs:
|
|||||||
if: ${{ success() }}
|
if: ${{ success() }}
|
||||||
run: |
|
run: |
|
||||||
echo "🎉 Voca ${VERSION} published to Zapstore!"
|
echo "🎉 Voca ${VERSION} published to Zapstore!"
|
||||||
echo "🔗 https://zapstore.dev/app/voca"
|
echo "🔗 https://zapstore.dev/app/voca"
|
||||||
|
|
||||||
|
- name: Create Gitea Release
|
||||||
|
run: |
|
||||||
|
# Ensure tag exists
|
||||||
|
echo "Creating Gitea release for tag v${VERSION}..."
|
||||||
|
|
||||||
|
# Extract release notes from CHANGELOG.md or create default notes
|
||||||
|
RELEASE_NOTES="Automated release for v${VERSION}. See CHANGELOG.md for details."
|
||||||
|
if [ -f "CHANGELOG.md" ]; then
|
||||||
|
echo "Extracting release notes from CHANGELOG.md..."
|
||||||
|
# Try to extract relevant section for this version
|
||||||
|
VERSION_NOTES=$(sed -n "/## v${VERSION}/,/## v/p" CHANGELOG.md | sed '/## v[0-9]/d')
|
||||||
|
if [ ! -z "$VERSION_NOTES" ]; then
|
||||||
|
RELEASE_NOTES="$VERSION_NOTES"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Using release notes: $RELEASE_NOTES"
|
||||||
|
|
||||||
|
# Create JSON payload for release creation
|
||||||
|
PAYLOAD=$(cat <<EOF
|
||||||
|
{
|
||||||
|
"tag_name": "v${VERSION}",
|
||||||
|
"name": "v${VERSION}",
|
||||||
|
"body": "$RELEASE_NOTES",
|
||||||
|
"draft": false,
|
||||||
|
"prerelease": false
|
||||||
|
}
|
||||||
|
EOF
|
||||||
|
)
|
||||||
|
|
||||||
|
# Create the release via Gitea API
|
||||||
|
REPO_OWNER="voca"
|
||||||
|
REPO_NAME="voca"
|
||||||
|
API_URL="https://git.nostrdev.com/api/v1/repos/${REPO_OWNER}/${REPO_NAME}/releases"
|
||||||
|
|
||||||
|
HTTP_RESPONSE=$(curl -s -w "%{http_code}" \
|
||||||
|
-X POST "$API_URL" \
|
||||||
|
-H "accept: application/json" \
|
||||||
|
-H "Content-Type: application/json" \
|
||||||
|
-H "Authorization: token ${{ secrets.GITEA_TOKEN }}" \
|
||||||
|
-d "$PAYLOAD")
|
||||||
|
|
||||||
|
HTTP_BODY=${HTTP_RESPONSE:0:${#HTTP_RESPONSE}-3}
|
||||||
|
HTTP_STATUS=${HTTP_RESPONSE:${#HTTP_RESPONSE}-3}
|
||||||
|
|
||||||
|
if [ "$HTTP_STATUS" = "201" ] || [ "$HTTP_STATUS" = "200" ]; then
|
||||||
|
echo "✅ Gitea release created successfully!"
|
||||||
|
# Extract release ID for uploading assets
|
||||||
|
RELEASE_ID=$(echo "$HTTP_BODY" | grep -o '"id":[0-9]*' | head -1 | cut -d':' -f2)
|
||||||
|
|
||||||
|
# Upload APK as release asset
|
||||||
|
APK_NAME="voca-${VERSION}.apk"
|
||||||
|
if [ -f "./release/${APK_NAME}" ]; then
|
||||||
|
echo "Uploading APK to release..."
|
||||||
|
UPLOAD_URL="https://git.nostrdev.com/api/v1/repos/${REPO_OWNER}/${REPO_NAME}/releases/${RELEASE_ID}/assets"
|
||||||
|
|
||||||
|
curl -X POST "$UPLOAD_URL" \
|
||||||
|
-H "Authorization: token ${{ secrets.GITEA_TOKEN }}" \
|
||||||
|
-H "Content-Type: application/octet-stream" \
|
||||||
|
-F "attachment=@./release/${APK_NAME}" \
|
||||||
|
-F "name=${APK_NAME}"
|
||||||
|
|
||||||
|
echo "✅ APK uploaded to Gitea release"
|
||||||
|
else
|
||||||
|
echo "❌ APK file not found for upload"
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
echo "❌ Failed to create Gitea release. Status: $HTTP_STATUS, Response: $HTTP_BODY"
|
||||||
|
echo "API URL: $API_URL"
|
||||||
|
fi
|
Loading…
x
Reference in New Issue
Block a user