Compare commits

...

25 Commits

Author SHA1 Message Date
e40804a4ae Fix config storage drive
All checks were successful
Build Godot Engine / Build ${{ matrix.platform }} ${{ matrix.target }} (godot-linux-debug, linux, linuxbsd, no, template_debug) (push) Successful in 18m0s
Build Godot Engine / Build ${{ matrix.platform }} ${{ matrix.target }} (godot-linux-editor, linux, linuxbsd, yes, editor) (push) Successful in 27m43s
Build Godot Engine / Build ${{ matrix.platform }} ${{ matrix.target }} (godot-linux-release, linux, linuxbsd, yes, template_release) (push) Successful in 18m6s
Build Godot Engine / Build ${{ matrix.platform }} ${{ matrix.target }} (godot-windows-debug, windows, windows, no, template_debug) (push) Successful in 23m21s
Build Godot Engine / Build ${{ matrix.platform }} ${{ matrix.target }} (godot-windows-editor, windows, windows, yes, editor) (push) Successful in 35m48s
Build Godot Engine / Build ${{ matrix.platform }} ${{ matrix.target }} (godot-windows-release, windows, windows, yes, template_release) (push) Successful in 24m1s
Build Godot Engine / publish (push) Successful in 1m41s
2025-12-03 21:47:51 +01:00
8787924648 Fix working dir
Some checks failed
Build Godot Engine / Build ${{ matrix.platform }} ${{ matrix.target }} (godot-windows-debug, windows, windows, no, template_debug) (push) Waiting to run
Build Godot Engine / Build ${{ matrix.platform }} ${{ matrix.target }} (godot-windows-editor, windows, windows, yes, editor) (push) Waiting to run
Build Godot Engine / Build ${{ matrix.platform }} ${{ matrix.target }} (godot-windows-release, windows, windows, yes, template_release) (push) Waiting to run
Build Godot Engine / publish (push) Blocked by required conditions
Build Godot Engine / Build ${{ matrix.platform }} ${{ matrix.target }} (godot-linux-debug, linux, linuxbsd, no, template_debug) (push) Failing after 1m15s
Build Godot Engine / Build ${{ matrix.platform }} ${{ matrix.target }} (godot-linux-editor, linux, linuxbsd, yes, editor) (push) Failing after 1m16s
Build Godot Engine / Build ${{ matrix.platform }} ${{ matrix.target }} (godot-linux-release, linux, linuxbsd, yes, template_release) (push) Has been cancelled
2025-12-03 21:44:52 +01:00
d212c80f06 Build linux editor and templates
Some checks failed
Build Godot Engine / Build ${{ matrix.platform }} ${{ matrix.target }} (godot-windows-release, windows, windows, yes, template_release) (push) Waiting to run
Build Godot Engine / publish (push) Blocked by required conditions
Build Godot Engine / Build ${{ matrix.platform }} ${{ matrix.target }} (godot-linux-debug, linux, linuxbsd, no, template_debug) (push) Failing after 1m35s
Build Godot Engine / Build ${{ matrix.platform }} ${{ matrix.target }} (godot-linux-editor, linux, linuxbsd, yes, editor) (push) Failing after 1m16s
Build Godot Engine / Build ${{ matrix.platform }} ${{ matrix.target }} (godot-linux-release, linux, linuxbsd, yes, template_release) (push) Failing after 1m16s
Build Godot Engine / Build ${{ matrix.platform }} ${{ matrix.target }} (godot-windows-debug, windows, windows, no, template_debug) (push) Failing after 59s
Build Godot Engine / Build ${{ matrix.platform }} ${{ matrix.target }} (godot-windows-editor, windows, windows, yes, editor) (push) Has been cancelled
2025-12-03 21:39:19 +01:00
a90daf08c2 Checkout the repo
All checks were successful
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-debug, Debug Template, no, template_debug) (push) Successful in 22m8s
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-editor, Editor, yes, editor) (push) Successful in 34m29s
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-release, Release Template, yes, template_release) (push) Successful in 23m1s
Build Godot Engine / publish (push) Successful in 54s
2025-12-03 10:24:24 +01:00
bf4cb1830e Better publish script
Some checks failed
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-debug, Debug Template, no, template_debug) (push) Successful in 21m43s
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-editor, Editor, yes, editor) (push) Successful in 33m49s
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-release, Release Template, yes, template_release) (push) Successful in 22m51s
Build Godot Engine / publish (push) Failing after 18s
2025-12-02 23:54:44 +01:00
b21a22f4b9 Try building with registry publishing
Some checks failed
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-debug, Debug Template, no, template_debug) (push) Successful in 21m57s
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-editor, Editor, yes, editor) (push) Successful in 34m10s
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-release, Release Template, yes, template_release) (push) Successful in 22m45s
Build Godot Engine / publish (push) Failing after 24s
2025-12-02 21:09:23 +01:00
7acb86143e Remove stray backslash
All checks were successful
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-debug, Debug Template, no, template_debug) (push) Successful in 40m0s
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-editor, Editor, yes, editor) (push) Successful in 34m26s
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-release, Release Template, yes, template_release) (push) Successful in 22m50s
2025-12-02 15:35:34 +01:00
1375e0ceea Remove with correct driver
Some checks failed
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-debug, Debug Template, no, template_debug) (push) Failing after 22m43s
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-release, Release Template, yes, template_release) (push) Has been cancelled
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-editor, Editor, yes, editor) (push) Has been cancelled
2025-12-02 14:20:05 +01:00
f2e1e915a3 Disable d3d12
Some checks failed
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-release, Release Template, yes, template_release) (push) Waiting to run
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-debug, Debug Template, no, template_debug) (push) Failing after 21m35s
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-editor, Editor, yes, editor) (push) Has been cancelled
2025-12-02 13:53:56 +01:00
54b45d1604 Look for container in correct storage
Some checks failed
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-debug, Debug Template, no, template_debug) (push) Failing after 1m20s
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-editor, Editor, yes, editor) (push) Failing after 1m21s
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-release, Release Template, yes, template_release) (push) Has been cancelled
2025-12-02 13:49:51 +01:00
74eba5fc29 Config with storage driver
Some checks failed
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-release, Release Template, yes, template_release) (push) Waiting to run
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-debug, Debug Template, no, template_debug) (push) Failing after 1m16s
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-editor, Editor, yes, editor) (push) Has been cancelled
2025-12-02 13:47:13 +01:00
e02da0f0dc Fix workingdir
Some checks failed
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-debug, Debug Template, no, template_debug) (push) Failing after 1m14s
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-editor, Editor, yes, editor) (push) Failing after 1m16s
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-release, Release Template, yes, template_release) (push) Has been cancelled
2025-12-02 13:44:38 +01:00
87aaaee02e Fix long tag
Some checks failed
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-debug, Debug Template, no, template_debug) (push) Failing after 1m23s
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-editor, Editor, yes, editor) (push) Failing after 1m19s
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-release, Release Template, yes, template_release) (push) Failing after 1m19s
2025-12-02 13:39:20 +01:00
fa1656ea42 Fix env
Some checks failed
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-debug, Debug Template, no, template_debug) (push) Failing after 19s
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-editor, Editor, yes, editor) (push) Failing after 18s
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-release, Release Template, yes, template_release) (push) Failing after 19s
2025-12-02 13:37:53 +01:00
547913c8a4 Fix tag
Some checks failed
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-debug, Debug Template, no, template_debug) (push) Failing after 18s
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-editor, Editor, yes, editor) (push) Failing after 17s
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-release, Release Template, yes, template_release) (push) Failing after 20s
2025-12-02 13:35:57 +01:00
7358ab696e Run in buildah
Some checks failed
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-debug, Debug Template, no, template_debug) (push) Failing after 19s
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-editor, Editor, yes, editor) (push) Failing after 18s
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-release, Release Template, yes, template_release) (push) Has been cancelled
2025-12-02 13:35:07 +01:00
b1d2f4bae9 Use new windows image
Some checks failed
Build Godot Engine / Build Engine (godot-windows-debug, Debug Template, no, template_debug) (push) Failing after 45s
Build Godot Engine / Build Engine (godot-windows-editor, Editor, yes, editor) (push) Failing after 5s
Build Godot Engine / Build Engine (godot-windows-release, Release Template, yes, template_release) (push) Failing after 5s
2025-12-02 11:43:19 +01:00
f3f03de589 Scons patching and linux build
Some checks failed
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-linux-editor, , Linux Editor, linuxbsd, yes, editor) (push) Failing after 35m4s
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-debug, Debug Template, no, template_debug) (push) Failing after 22m19s
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-editor, Editor, yes, editor) (push) Failing after 34m48s
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-release, Release Template, yes, template_release) (push) Failing after 23m34s
2025-12-01 23:15:17 +01:00
35e204f812 Core calculation and linking parameters
Some checks failed
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-debug, Debug Template, no, template_debug) (push) Failing after 22m24s
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-release, Release Template, yes, template_release) (push) Has been cancelled
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-editor, Editor, yes, editor) (push) Has been cancelled
2025-12-01 22:45:20 +01:00
6466e4168d Use new builder
Some checks failed
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-debug, Debug Template, no, template_debug) (push) Failing after 22m55s
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-release, Release Template, yes, template_release) (push) Has been cancelled
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-editor, Editor, yes, editor) (push) Has been cancelled
2025-12-01 22:08:37 +01:00
ff388b0aa1 Disable Direct3D 12
Some checks failed
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-debug, Debug Template, no, template_debug) (push) Failing after 22m12s
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-release, Release Template, yes, template_release) (push) Has been cancelled
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-editor, Editor, yes, editor) (push) Has been cancelled
2025-12-01 21:37:00 +01:00
f9f4f1aece Use full sha
Some checks failed
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-debug, Debug Template, no, template_debug) (push) Failing after 42s
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-editor, Editor, yes, editor) (push) Failing after 18s
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-release, Release Template, yes, template_release) (push) Failing after 19s
2025-12-01 21:34:04 +01:00
b16e46f1ca Set specific image sha
Some checks failed
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-debug, Debug Template, no, template_debug) (push) Failing after 1s
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-editor, Editor, yes, editor) (push) Failing after 0s
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-release, Release Template, yes, template_release) (push) Failing after 0s
2025-12-01 21:32:55 +01:00
dbe1dadd20 Build engine in matrix with own builder
Some checks failed
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-debug, Debug Template, no, template_debug) (push) Failing after 5s
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-editor, Editor, yes, editor) (push) Failing after 30s
Build Godot Engine / Build Windows ${{ matrix.name }} (godot-windows-release, Release Template, yes, template_release) (push) Failing after 4s
2025-12-01 21:17:08 +01:00
ce5e6a245d Add gitea workflow
Some checks failed
Build Godot Engine / Build Windows Editor (Double Precision) (push) Failing after 2s
Build Godot Engine / Build Windows Debug Template (Double Precision) (push) Failing after 2s
Build Godot Engine / Build Windows Release Template (Double Precision) (push) Failing after 2s
2025-11-30 21:08:40 +01:00
3 changed files with 211 additions and 0 deletions

View File

@ -0,0 +1,116 @@
name: Build Godot Engine
on:
push:
branches: [ "customized-moa" ]
create:
tags:
- 'v*'
jobs:
# --- BUILD JOBS (Parallel Matrix) ---
build-engine:
name: Build ${{ matrix.platform }} ${{ matrix.target }}
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
include:
# Windows (Double Precision)
- platform: windows
target: editor
production: yes
artifact_name: godot-windows-editor
builder: windows
- platform: windows
target: template_debug
production: no
artifact_name: godot-windows-debug
builder: windows
- platform: windows
target: template_release
production: yes
artifact_name: godot-windows-release
builder: windows
# Linux (Double Precision)
- platform: linuxbsd
target: editor
production: yes
artifact_name: godot-linux-editor
builder: linux
- platform: linuxbsd
target: template_debug
production: no
artifact_name: godot-linux-debug
builder: linux
- platform: linuxbsd
target: template_release
production: yes
artifact_name: godot-linux-release
builder: linux
steps:
- name: Checkout Source
uses: actions/checkout@v3
with:
submodules: recursive
- name: Make scripts executable
run: chmod +x .gitea/workflows/scripts/*.sh
- name: Compile (${{ matrix.platform }})
uses: docker://quay.io/buildah/stable
env:
# Registry Config
REGISTRY: gitea.212.63.210.91.nip.io
OWNER: ${{ gitea.repository_owner }}
USERNAME: ${{ gitea.actor }}
PASSWORD: ${{ secrets.USER_PACKAGE_PASSWORD }}
# Which builder image to use? (windows or linux)
BUILDER_TYPE: ${{ matrix.builder }}
IMAGE_TAG: latest
# SCons Arguments
PLATFORM: ${{ matrix.platform }}
TARGET: ${{ matrix.target }}
PRODUCTION: ${{ matrix.production }}
with:
entrypoint: /bin/sh
args: .gitea/workflows/scripts/build-with-buildah.sh
- name: Upload Artifacts
uses: actions/upload-artifact@v3
with:
name: ${{ matrix.artifact_name }}
# Uploads executables (Windows) and binaries (Linux has no extension)
path: bin/godot.*
# --- PUBLISH JOB (Runs after all builds finish) ---
publish:
needs: build-engine
runs-on: ubuntu-latest
steps:
- name: Checkout Source
uses: actions/checkout@v3
with:
submodules: recursive
- name: Download All Artifacts
uses: actions/download-artifact@v3
with:
path: dist
- name: Make script executable
run: chmod +x .gitea/workflows/scripts/publish.sh
- name: Package and Publish
uses: docker://alpine:latest
env:
API_URL: https://gitea.212.63.210.91.nip.io/api/packages/${{ gitea.repository_owner }}/generic
TOKEN: ${{ secrets.USER_PACKAGE_PASSWORD }}
ACTOR: ${{ gitea.actor }}
VERSION: ${{ gitea.sha }}
with:
entrypoint: /bin/sh
args: .gitea/workflows/scripts/publish.sh

View File

@ -0,0 +1,47 @@
#!/bin/sh
set -e
# --- Configuration ---
FULL_IMAGE_URL="$REGISTRY/$OWNER/godot-builder-$BUILDER_TYPE:$IMAGE_TAG"
echo "------------------------------------------------"
echo "Starting Build for: $PLATFORM / $TARGET"
echo "Using Builder: $FULL_IMAGE_URL"
echo "------------------------------------------------"
echo "Logging into registry..."
# Note: We use --password-stdin for security so the secret isn't in process list
echo "$PASSWORD" | buildah login -u "$USERNAME" --password-stdin --tls-verify=false "$REGISTRY"
echo "Pulling image and creating working container..."
# We capture the Container ID (CTR)
CTR=$(buildah from --tls-verify=false "$FULL_IMAGE_URL")
# 3. Clean up on exit (Trap)
cleanup() {
echo "Cleaning up container..."
buildah rm "$CTR" || true
}
trap cleanup EXIT
# 4. Determine SCons Flags based on Platform
# Windows needs LLVM/MinGW flags. Linux just needs defaults.
SCONS_FLAGS="platform=$PLATFORM target=$TARGET arch=x86_64 precision=double production=$PRODUCTION -j$(nproc)"
if [ "$PLATFORM" = "windows" ]; then
# Add Windows-specific flags (LLVM toolchain, disable D3D12)
SCONS_FLAGS="$SCONS_FLAGS use_llvm=yes use_mingw=yes d3d12=no"
fi
# We use 'buildah config' to set it on the container instance instead.
buildah config --workingdir /src "$CTR"
echo "Running: scons $SCONS_FLAGS"
# 5. Run Build
buildah run \
--volume "$PWD":/src \
"$CTR" \
scons $SCONS_FLAGS
echo "✅ Build Complete"

View File

@ -0,0 +1,48 @@
#!/bin/sh
set -e
# Install tools (Alpine container)
apk add --no-cache curl zip
echo "------------------------------------------------"
echo "Publishing Packages for Version: $VERSION"
echo "------------------------------------------------"
# --- 1. WINDOWS EDITOR ---
echo "Packaging Windows Editor..."
zip -j godot-editor-windows.zip dist/godot-windows-editor/*.exe
curl --fail --user "$ACTOR:$TOKEN" \
--upload-file "godot-editor-windows.zip" \
"$API_URL/godot-editor-windows/$VERSION/godot-editor-windows.zip"
# --- 2. LINUX EDITOR ---
echo "Packaging Linux Editor..."
# Find the linux binary (it has no extension, so we grep for 'godot.')
LINUX_BIN=$(find dist/godot-linux-editor -type f -name "godot.linuxbsd.editor*" | head -n 1)
zip -j godot-editor-linux.zip "$LINUX_BIN"
curl --fail --user "$ACTOR:$TOKEN" \
--upload-file "godot-editor-linux.zip" \
"$API_URL/godot-editor-linux/$VERSION/godot-editor-linux.zip"
# --- 3. EXPORT TEMPLATES (Windows + Linux) ---
echo "Packaging Templates (.tpz)..."
mkdir -p templates
# Windows Templates (Filter out console wrapper)
cp $(ls dist/godot-windows-debug/*.exe | grep -v "console") templates/windows_debug_x86_64.exe
cp $(ls dist/godot-windows-release/*.exe | grep -v "console") templates/windows_release_x86_64.exe
# Linux Templates
cp $(find dist/godot-linux-debug -type f -name "godot.*") templates/linux_debug.x86_64
cp $(find dist/godot-linux-release -type f -name "godot.*") templates/linux_release.x86_64
# Create TPZ
zip -j templates.tpz templates/*
curl --fail --user "$ACTOR:$TOKEN" \
--upload-file "templates.tpz" \
"$API_URL/godot-templates/$VERSION/templates.tpz"
echo "✅ All packages published successfully!"