Jacob Schmidt 7d70117e8c
Some checks failed
Build & Release / release (push) Failing after 1m2s
Release / release (push) Successful in 1m17s
Update .gitea/workflows/build.yml
2025-07-04 16:07:30 -05:00

62 lines
1.8 KiB
YAML

name: Build & Release
on:
push:
tags:
- 'v*' # Only run for version tags
jobs:
release:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Setup .NET
uses: actions/setup-dotnet@v3
with:
dotnet-version: '9.0.x'
- name: Build & Package
run: |
dotnet publish -c Release -o artifacts/release
mkdir -p artifacts/packages
cd artifacts/release
zip -r ../packages/firefly-${GITHUB_REF#refs/tags/}.zip .
- name: Extract Tag Name
run: |
TAG_NAME="${GITHUB_REF#refs/tags/}"
echo "TAG_NAME=$TAG_NAME" >> $GITHUB_ENV
- name: Create Release in Gitea
run: |
RELEASE_DATA=$(curl -s -X POST "${GITEA_URL}/api/v1/repos/${GITEA_REPO}/releases" \
-H "Authorization: token ${GITEA_TOKEN}" \
-H "Content-Type: application/json" \
-d "{
\"tag_name\": \"${TAG_NAME}\",
\"name\": \"Release ${TAG_NAME}\",
\"body\": \"Automated release for ${TAG_NAME}\",
\"draft\": false,
\"prerelease\": false
}")
echo "Release created: $RELEASE_DATA"
RELEASE_ID=$(echo "$RELEASE_DATA" | jq '.id')
if [ -z "$RELEASE_ID" ] || [ "$RELEASE_ID" = "null" ]; then
echo "Failed to retrieve release ID. Exiting."
exit 1
fi
curl -X POST "${GITEA_URL}/api/v1/repos/${GITEA_REPO}/releases/${RELEASE_ID}/assets?name=firefly-${TAG_NAME}.zip" \
-H "Authorization: token ${GITEA_TOKEN}" \
-H "Content-Type: application/zip" \
--data-binary @artifacts/packages/firefly-${TAG_NAME}.zip
env:
GITEA_URL: https://gitea.innovativedevsolutions.org
GITEA_REPO: IDSolutions/fireflyclient
GITEA_TOKEN: ${{ secrets.NET_TOKEN }}