Skip to content

Feature/spatial partitioning #186

Feature/spatial partitioning

Feature/spatial partitioning #186

name: Check PR - Engine Editor Debug And Tests
on: [pull_request]
env:
SCONS_CACHE_MSVC_CONFIG: true
GODOT_BASE_VERSION: 4.2.0
GODOT_BASE_BRANCH: 4.2.0
concurrency:
group: ci-${{github.actor}}-${{github.head_ref || github.run_number}}-${{github.ref}}-check-pr-engine-editor-debug-and-tests
cancel-in-progress: true
jobs:
build-editor-debug:
strategy:
matrix:
name: [ Linux, MacOs-x64, MacOs-arm64, Windows ]
include:
- name: Linux
os: ubuntu-latest
platform: x11
arch: x86_64
- name: MacOs-x64
os: macos-latest
platform: macos
arch: x86_64
- name: MacOs-arm64
os: macos-latest
platform: macos
arch: arm64
- name: Windows
os: windows-latest
platform: windows
arch: x86_64
runs-on: ${{ matrix.os }}
steps:
- name: Clone Godot Engine
uses: actions/checkout@v2
with:
repository: godotengine/godot
ref: 4.2-stable
# TODO: remove once on godot 4.2.2 or newer!
- name: Cherry pick macos fix
run: |
git fetch -a
git config --global user.email "[email protected]"
git config --global user.name "Super Mario"
git cherry-pick a2c1c01941a3dec3e2a361d9dc21bb0390efcbaf
- name: Clone Godot Isometric Map module.
uses: actions/checkout@v2
with:
path: modules/isometric_maps
submodules: recursive
- name: Setup Godot dependencies
uses: ./.github/actions/godot-deps
- name: Fix scons version
run: |
python -m pip install scons==4.4.0
- name: Setup Vulkan SDK
if: matrix.platform == 'macos'
run: |
sh misc/scripts/install_vulkan_sdk_macos.sh
# Upload cache on completion and check it out now
- name: Setup Godot build cache
uses: ./.github/actions/godot-cache
with:
cache-name: ${{ github.job }}-${{ matrix.platform }}-${{ matrix.arch }}
- name: Get number of CPU cores
id: cpu-cores
uses: SimenB/github-actions-cpu-cores@v1
- name: Build with editor debug
uses: ./.github/actions/godot-build
with:
sconsflags: arch=${{ matrix.arch }} -j${{ steps.cpu-cores.outputs.count }}
platform: ${{ matrix.platform }}
target: editor
- name: Upload MacOs binary
if: matrix.platform == 'macos'
uses: actions/upload-artifact@v3
with:
name: macos-editor-debug-app-${{ matrix.arch }}
path: bin/godot.macos.editor.${{ matrix.arch }}
create-macos-universal:
needs: [ build-editor-debug ]
strategy:
matrix:
os: [ macos-latest ]
include:
- os: macos-latest
java-version: 11
runs-on: ${{ matrix.os }}
steps:
- name: Clone Godot Isometric Map module.
uses: actions/checkout@v2
with:
submodules: recursive
- name: Create MacOs universal binary
uses: ./.github/actions/create-macos-universal-binary
with:
amd-64-binary-artifact: macos-editor-debug-app-x86_64
amd-64-binary-name: godot.macos.editor.x86_64
arm-64-binary-artifact: macos-editor-debug-app-arm64
arm-64-binary-name: godot.macos.editor.arm64
universal-output-binary-name: godot.macos.editor.universal
- name: Upload MacOs universal binary
uses: actions/upload-artifact@v3
with:
name: macos-editor-debug-app
path: godot.macos.editor.universal