Fixed collision bug with action
Nightly Release / Build Nightly (linux) (push) Failing after 12s
Nightly Release / Build Nightly (mac) (push) Failing after 3s
Nightly Release / Build Nightly (windows) (push) Failing after 2s
Nightly Release / Publish Nightly Release (push) Skipped

This commit is contained in:
qwsdcvghyu89
2026-06-05 23:13:13 +10:00
parent 18bf883442
commit 615c206720
+42 -10
View File
@@ -1,20 +1,28 @@
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 Release
name: Build Nightly (${{ matrix.platform }})
runs-on: Debian-x86
strategy:
matrix:
platform: [linux, windows, mac]
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
with:
lfs: true
- name: Build
id: build
uses: felix-schindler/build-godot-action@v2.0.0
@@ -22,20 +30,45 @@ jobs:
name: wrplat
preset: ${{ matrix.platform }}
debugMode: "true"
- name: Clean up Release & Update Tag
- 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')
# 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
curl -s -X DELETE -H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" \
"${{ github.api_url }}/repos/${{ github.repository }}/releases/$RELEASE_ID"
fi
# Force the 'nightly' Git tag to point to this new commit and push it
# Force the 'nightly' tag onto this commit and push it
git tag -f nightly ${{ github.sha }}
git push -f origin nightly
- name: Update Nightly Release
- name: Publish release
uses: softprops/action-gh-release@v2
with:
tag_name: nightly
@@ -46,7 +79,6 @@ jobs:
**Commit:** ${{ github.sha }}
prerelease: true
files: |
${{ github.workspace }}/${{ steps.build.outputs.build }}
files: dist/**/*
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}