Finalizing workflows
Some checks failed
Create tag and build when new code gets to main / BumpTag (push) Failing after 27s
Create tag and build when new code gets to main / Export (push) Has been skipped
Create tag and build when new code gets to main / Test (push) Failing after 19m23s

This commit is contained in:
2026-01-25 19:59:37 +01:00
parent bed7437893
commit 5ab1589609
3 changed files with 178 additions and 69 deletions

View File

@@ -17,16 +17,10 @@ env:
jobs: jobs:
Export: Export:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Install node, xvfb, curl and zip - name: Install node, xvfb and curl
run: | run: |
apt update && apt -y install curl zip nodejs xvfb apt update && apt -y install curl nodejs xvfb
# - name: Checkout with LFS
# uses: https://git.game-dev.space/minimata/checkout-with-lfs.git@main
# with:
# checkout-version: 3
- name: Checkout - name: Checkout
uses: actions/checkout@v6 uses: actions/checkout@v6
@@ -43,11 +37,6 @@ jobs:
git config -f $AUTH_FILE http.${{ gitea.server_url }}/${{ gitea.repository }}.git/info/lfs/objects/batch.extraheader "$AUTH" git config -f $AUTH_FILE http.${{ gitea.server_url }}/${{ gitea.repository }}.git/info/lfs/objects/batch.extraheader "$AUTH"
git lfs pull git lfs pull
# - name: Setup dotnet
# uses: actions/setup-dotnet@v5
# with:
# dotnet-version: '9.0.x'
- name: Launch Godot - name: Launch Godot
uses: godot-gdunit-labs/gdUnit4-action@v1 uses: godot-gdunit-labs/gdUnit4-action@v1
with: with:
@@ -70,8 +59,3 @@ jobs:
with: with:
name: Test Report name: Test Report
path: ${{ github.workspace }}/reports/test-result.html path: ${{ github.workspace }}/reports/test-result.html
- name: Build Windows
run: |
mkdir -v -p build/windows
/home/runner/godot-linux/godot --headless --verbose --build-solutions --export-release "Windows Desktop" build/windows/${{ env.GAME_NAME }}.exe

View File

@@ -19,7 +19,7 @@ jobs:
tag_name: ${{ steps.bump-tag.outputs.new_tag }} tag_name: ${{ steps.bump-tag.outputs.new_tag }}
steps: steps:
- name: Check out repository code - name: Check out repository code
uses: actions/checkout@v4 uses: actions/checkout@v6
with: with:
lfs: false lfs: false
- name: Remove buggy pre-push hook - name: Remove buggy pre-push hook
@@ -36,6 +36,48 @@ jobs:
INITIAL_VERSION: 0.1.0 INITIAL_VERSION: 0.1.0
DEFAULT_BUMP: patch DEFAULT_BUMP: patch
Test:
runs-on: ubuntu-latest
steps:
- name: Install node, xvfb and curl
run: |
apt update && apt -y install curl nodejs xvfb
- name: Checkout
uses: actions/checkout@v6
with:
lfs: false
persist-credentials: true
- name: Checkout LFS
run: |
git lfs install --local
AUTH=$(git config http.${{ gitea.server_url }}/.extraheader)
AUTH_FILE=$(git config includeif.gitdir:/workspace/${{ gitea.repository }}/.git.path)
git config -f $AUTH_FILE --unset http.${{ gitea.server_url }}/.extraheader
git config -f $AUTH_FILE http.${{ gitea.server_url }}/${{ gitea.repository }}.git/info/lfs/objects/batch.extraheader "$AUTH"
git lfs pull
- name: Launch Godot
uses: godot-gdunit-labs/gdUnit4-action@v1
with:
godot-version: '4.5.1'
godot-net: true
godot-force-mono: true
dotnet-version: 'net9.0'
version: 'v6.0.3'
paths: |
res://tests/
timeout: 1
publish-report: false
upload-report: false
- name: Upload test report
uses: actions/upload-artifact@v3-node20
with:
name: Test Report
path: ${{ github.workspace }}/reports/test-result.html
Export: Export:
runs-on: ubuntu-latest runs-on: ubuntu-latest
needs: BumpTag needs: BumpTag
@@ -46,10 +88,21 @@ jobs:
- name: Install node, curl and zip - name: Install node, curl and zip
run: | run: |
apt update && apt -y install curl zip nodejs apt update && apt -y install curl zip nodejs
- name: Checkout with LFS
uses: https://git.game-dev.space/minimata/checkout-with-lfs.git@main - name: Checkout
uses: actions/checkout@v6
with: with:
checkout-version: 3 lfs: false
persist-credentials: true
- name: Checkout LFS
run: |
git lfs install --local
AUTH=$(git config http.${{ gitea.server_url }}/.extraheader)
AUTH_FILE=$(git config includeif.gitdir:/workspace/${{ gitea.repository }}/.git.path)
git config -f $AUTH_FILE --unset http.${{ gitea.server_url }}/.extraheader
git config -f $AUTH_FILE http.${{ gitea.server_url }}/${{ gitea.repository }}.git/info/lfs/objects/batch.extraheader "$AUTH"
git lfs pull
- name: Import resources and build solution - name: Import resources and build solution
run: | run: |
@@ -69,48 +122,3 @@ jobs:
buildNumber: ${{ needs.BumpTag.outputs.tag_name }} buildNumber: ${{ needs.BumpTag.outputs.tag_name }}
gameData: Windows.zip gameData: Windows.zip
buildChannel: windows buildChannel: windows
- name: Build Windows ARM
run: |
mkdir -v -p build/windowsArm
godot --headless --verbose --build-solutions --export-release "Windows ARM" build/windowsArm/${{ env.GAME_NAME }}.exe
zip -r WindowsArm.zip build/windowsArm
- name: Upload to Itch
uses: KikimoraGames/itch-publish@v0.0.3
with:
butlerApiKey: ${{ secrets.BUTLER_TOKEN }}
itchUsername: ${{ env.ITCHIO_USERNAME }}
itchGameId: ${{ env.ITCHIO_GAMEID }}
buildNumber: ${{ needs.BumpTag.outputs.tag_name }}
gameData: WindowsArm.zip
buildChannel: windows-arm
- name: Linux Build
run: |
mkdir -v -p build/linux
godot --headless --verbose --export-release "Linux/X11" build/linux/${{ env.GAME_NAME }}.x86_64
zip -r Linux.zip build/linux
- name: Upload to Itch
uses: KikimoraGames/itch-publish@v0.0.3
with:
butlerApiKey: ${{ secrets.BUTLER_TOKEN }}
itchUsername: ${{ env.ITCHIO_USERNAME }}
itchGameId: ${{ env.ITCHIO_GAMEID }}
buildNumber: ${{ needs.BumpTag.outputs.tag_name }}
gameData: Linux.zip
buildChannel: linux
- name: Mac Build
run: |
mkdir -v -p build/mac
godot --headless --verbose --export-release "macOS" build/mac/${{ env.GAME_NAME }}.zip
zip -r Mac.zip build/mac
- name: Upload to Itch
uses: KikimoraGames/itch-publish@v0.0.3
with:
butlerApiKey: ${{ secrets.BUTLER_TOKEN }}
itchUsername: ${{ env.ITCHIO_USERNAME }}
itchGameId: ${{ env.ITCHIO_GAMEID }}
buildNumber: ${{ needs.BumpTag.outputs.tag_name }}
gameData: Mac.zip
buildChannel: mac

View File

@@ -0,0 +1,117 @@
name: Create tag and build when new code gets to main
run-name: Create tag and build when new code gets to main
on:
push:
branches:
- 'release/*' # only release branches
tags-ignore:
- "**"
env:
GAME_NAME: MovementTests
ITCHIO_USERNAME: Minimata
ITCHIO_GAMEID: MovementTests
jobs:
ReleaseName:
runs-on: ubuntu-latest
if: ${{ contains(gitea.ref_name, 'release/') }}
outputs:
release_name: ${{ steps.split.outputs._1 }}
steps:
- uses: winterjung/split@v2
id: split
with:
msg: ${{ gitea.ref_name }}
separator: '/'
Release:
runs-on: ubuntu-latest
if: ${{ contains(gitea.ref_name, 'release/') }}
needs: ReleaseName
container:
image: barichello/godot-ci:mono-4.5
steps:
- name: Install node, curl and zip
run: |
apt update && apt -y install curl zip nodejs
- name: Checkout
uses: actions/checkout@v6
with:
lfs: false
persist-credentials: true
- name: Checkout LFS
run: |
git lfs install --local
AUTH=$(git config http.${{ gitea.server_url }}/.extraheader)
AUTH_FILE=$(git config includeif.gitdir:/workspace/${{ gitea.repository }}/.git.path)
git config -f $AUTH_FILE --unset http.${{ gitea.server_url }}/.extraheader
git config -f $AUTH_FILE http.${{ gitea.server_url }}/${{ gitea.repository }}.git/info/lfs/objects/batch.extraheader "$AUTH"
git lfs pull
- name: Import resources and build solution
run: |
godot --headless --editor --build-solutions --quit --import --path $PWD
- name: Build Windows
run: |
mkdir -v -p build/windows
godot --headless --verbose --build-solutions --export-release "Windows Desktop" build/windows/${{ env.GAME_NAME }}.exe
zip -r Windows.zip build/windows
- name: Upload to Itch
uses: KikimoraGames/itch-publish@v0.0.3
with:
butlerApiKey: ${{ secrets.BUTLER_TOKEN }}
itchUsername: ${{ env.ITCHIO_USERNAME }}
itchGameId: ${{ env.ITCHIO_GAMEID }}
buildNumber: ${{ needs.ReleaseName.outputs.release_name }}
gameData: Windows.zip
buildChannel: windows
- name: Build Windows ARM
run: |
mkdir -v -p build/windowsArm
godot --headless --verbose --build-solutions --export-release "Windows ARM" build/windowsArm/${{ env.GAME_NAME }}.exe
zip -r WindowsArm.zip build/windowsArm
- name: Upload to Itch
uses: KikimoraGames/itch-publish@v0.0.3
with:
butlerApiKey: ${{ secrets.BUTLER_TOKEN }}
itchUsername: ${{ env.ITCHIO_USERNAME }}
itchGameId: ${{ env.ITCHIO_GAMEID }}
buildNumber: ${{ needs.ReleaseName.outputs.release_name }}
gameData: WindowsArm.zip
buildChannel: windows-arm
- name: Linux Build
run: |
mkdir -v -p build/linux
godot --headless --verbose --export-release "Linux/X11" build/linux/${{ env.GAME_NAME }}.x86_64
zip -r Linux.zip build/linux
- name: Upload to Itch
uses: KikimoraGames/itch-publish@v0.0.3
with:
butlerApiKey: ${{ secrets.BUTLER_TOKEN }}
itchUsername: ${{ env.ITCHIO_USERNAME }}
itchGameId: ${{ env.ITCHIO_GAMEID }}
buildNumber: ${{ needs.ReleaseName.outputs.release_name }}
gameData: Linux.zip
buildChannel: linux
- name: Mac Build
run: |
mkdir -v -p build/mac
godot --headless --verbose --export-release "macOS" build/mac/${{ env.GAME_NAME }}.zip
zip -r Mac.zip build/mac
- name: Upload to Itch
uses: KikimoraGames/itch-publish@v0.0.3
with:
butlerApiKey: ${{ secrets.BUTLER_TOKEN }}
itchUsername: ${{ env.ITCHIO_USERNAME }}
itchGameId: ${{ env.ITCHIO_GAMEID }}
buildNumber: ${{ needs.ReleaseName.outputs.release_name }}
gameData: Mac.zip
buildChannel: mac