Update .gitea/workflows/build.yml
Some checks failed
Build & Release / release (push) Failing after 1m2s
Release / release (push) Successful in 1m17s

This commit is contained in:
Jacob Schmidt 2025-07-04 16:07:30 -05:00
parent 916702b7ca
commit 7d70117e8c

View File

@ -1,54 +1,61 @@
name: Build
name: Build & Release
on:
push:
branches: [ master ]
tags:
- 'v*'
pull_request:
branches: [ master ]
- 'v*' # Only run for version tags
jobs:
build:
release:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Setup .NET
uses: actions/setup-dotnet@v3
with:
dotnet-version: '9.0.x'
- name: Restore dependencies
run: dotnet restore FireflyClient.sln
- name: Build
- name: Build & Package
run: |
chmod +x build-all.sh
./build-all.sh
dotnet publish -c Release -o artifacts/release
mkdir -p artifacts/packages
cd artifacts/release
zip -r ../packages/firefly-${GITHUB_REF#refs/tags/}.zip .
- name: Verify artifacts
- name: Extract Tag Name
run: |
ls -la artifacts/exe || echo "No exe artifacts found"
ls -la artifacts/native || echo "No native artifacts found"
TAG_NAME="${GITHUB_REF#refs/tags/}"
echo "TAG_NAME=$TAG_NAME" >> $GITHUB_ENV
- name: Upload artifacts
if: ${{ !env.ACT }}
uses: actions/upload-artifact@v3
with:
name: firefly-artifacts
path: |
artifacts/exe
artifacts/native
- 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
- name: Create Release
if: startsWith(github.ref, 'refs/tags/v')
uses: softprops/action-gh-release@v1
with:
files: |
artifacts/exe/**
artifacts/native/**
generate_release_notes: true
env:
GITEA_URL: https://gitea.innovativedevsolutions.org
GITEA_REPO: IDSolutions/fireflyclient
GITEA_TOKEN: ${{ secrets.NET_TOKEN }}