Files
wrplat-godot/.gitea/workflows/build_nightly.yaml
T
qwsdcvghyu89 d9f1085994
Nightly Release / Build Nightly (linux) (push) Failing after 1m38s
Nightly Release / Build Nightly (mac) (push) Failing after 4s
Nightly Release / Build Nightly (windows) (push) Failing after 3s
Nightly Release / Publish Nightly Release (push) Skipped
Fixed lfs reference issue.
2026-06-05 23:14:01 +10:00

81 lines
2.6 KiB
YAML

name: Nightly Release
on:
push:
branches:
- main
workflow_dispatch:
# The default token is read-only; release/tag operations need write.
permissions:
contents: write
jobs:
# ---- Build each platform in parallel, upload outputs as artifacts ----
build-nightly:
name: Build Nightly (${{ matrix.platform }})
runs-on: Debian-x86
strategy:
matrix:
platform: [linux, windows, mac]
steps:
- uses: actions/checkout@v4
- name: Build
id: build
uses: felix-schindler/build-godot-action@v2.0.0
with:
name: wrplat
preset: ${{ matrix.platform }}
debugMode: "true"
- name: Upload build artifact
uses: actions/upload-artifact@v4
with:
# Unique name per platform so the matrix jobs don't collide
name: build-${{ matrix.platform }}
path: ${{ github.workspace }}/${{ steps.build.outputs.build }}
if-no-files-found: error
# ---- Runs once, only after all three builds succeed ----
release-nightly:
name: Publish Nightly Release
needs: build-nightly
runs-on: Debian-x86
steps:
- uses: actions/checkout@v4
- name: Download all build artifacts
uses: actions/download-artifact@v4
with:
# No 'name' → grabs every artifact, each into dist/<artifact-name>/
path: dist
- name: Clean up old release & move tag
run: |
# Find and delete the old Gitea release payload via API
RELEASE_ID=$(curl -s -H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" \
"${{ github.api_url }}/repos/${{ github.repository }}/releases/tags/nightly" | jq -r '.id')
if [ "$RELEASE_ID" != "null" ] && [ -n "$RELEASE_ID" ]; then
echo "Deleting old release ID: $RELEASE_ID"
curl -s -X DELETE -H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" \
"${{ github.api_url }}/repos/${{ github.repository }}/releases/$RELEASE_ID"
fi
# Force the 'nightly' tag onto this commit and push it
git tag -f nightly ${{ github.sha }}
git push -f origin nightly
- name: Publish release
uses: softprops/action-gh-release@v2
with:
tag_name: nightly
target_commitish: ${{ github.sha }}
name: "Nightly Development Build"
body: |
Automated rolling nightly build from the latest commit on `main`.
**Commit:** ${{ github.sha }}
prerelease: true
files: dist/**/*
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}