AeThex-Engine-Core/.github/workflows/build.yml
2026-02-23 04:47:38 +00:00

106 lines
2.7 KiB
YAML

name: Build AeThex Engine
on:
push:
branches: [main]
pull_request:
branches: [main]
workflow_dispatch:
jobs:
build-windows:
runs-on: windows-latest
steps:
- uses: actions/checkout@v4
with:
submodules: recursive
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.11'
- name: Install SCons
run: pip install scons
- name: Setup MSVC
uses: microsoft/setup-msbuild@v2
- name: Build AeThex Engine (Windows)
run: |
cd engine
scons platform=windows target=editor -j2
- name: Upload Windows Build
uses: actions/upload-artifact@v4
with:
name: aethex-windows-editor
path: engine/bin/aethex.windows.editor.x86_64.exe
build-linux:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
submodules: recursive
- name: Install dependencies
run: |
sudo apt-get update
sudo apt-get install -y build-essential scons pkg-config \
libx11-dev libxcursor-dev libxinerama-dev libgl1-mesa-dev \
libglu-dev libasound2-dev libpulse-dev libudev-dev \
libxi-dev libxrandr-dev yasm
- name: Build AeThex Engine (Linux)
run: |
cd engine
scons platform=linuxbsd target=editor -j2
- name: Upload Linux Build
uses: actions/upload-artifact@v4
with:
name: aethex-linux-editor
path: engine/bin/godot.linuxbsd.editor.x86_64
build-macos:
runs-on: macos-latest
steps:
- uses: actions/checkout@v4
with:
submodules: recursive
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.11'
- name: Install SCons
run: pip install scons
- name: Build AeThex Engine (macOS)
run: |
cd engine
scons platform=macos target=editor -j2
- name: Upload macOS Build
uses: actions/upload-artifact@v4
with:
name: aethex-macos-editor
path: engine/bin/godot.macos.editor.universal
create-release:
needs: [build-windows, build-linux, build-macos]
runs-on: ubuntu-latest
if: github.ref == 'refs/heads/main'
steps:
- uses: actions/download-artifact@v4
- name: Create Release
uses: softprops/action-gh-release@v1
if: startsWith(github.ref, 'refs/tags/')
with:
files: |
aethex-windows-editor/*
aethex-linux-editor/*
aethex-macos-editor/*