summaryrefslogtreecommitdiff
path: root/.github/workflows
diff options
context:
space:
mode:
Diffstat (limited to '.github/workflows')
-rw-r--r--.github/workflows/linux_builds.yml37
1 files changed, 32 insertions, 5 deletions
diff --git a/.github/workflows/linux_builds.yml b/.github/workflows/linux_builds.yml
index f6d11e2efe..44d0cb041f 100644
--- a/.github/workflows/linux_builds.yml
+++ b/.github/workflows/linux_builds.yml
@@ -18,13 +18,15 @@ jobs:
fail-fast: false
matrix:
include:
- - name: Editor (target=release_debug, tools=yes, tests=yes)
- cache-name: linux-editor
+ - name: Editor w/ Mono (target=release_debug, tools=yes, tests=yes)
+ cache-name: linux-editor-mono
target: release_debug
tools: true
- tests: true
+ tests: false # Disabled due freeze caused by mix Mono build and CI
+ sconsflags: module_mono_enabled=yes mono_glue=no
doc-test: true
- bin: "./bin/godot.linuxbsd.opt.tools.64"
+ bin: "./bin/godot.linuxbsd.opt.tools.64.mono"
+ build-mono: true
artifact: true
- name: Editor and sanitizers (target=debug, tools=yes, tests=yes, use_asan=yes, use_ubsan=yes)
@@ -36,6 +38,7 @@ jobs:
proj-test: true
godot-cpp-test: true
bin: "./bin/godot.linuxbsd.tools.64s"
+ build-mono: false
# Skip 2GiB artifact speeding up action.
artifact: false
@@ -45,6 +48,15 @@ jobs:
tools: false
tests: false
sconsflags: module_mono_enabled=yes mono_glue=no debug_symbols=no
+ build-mono: false
+ artifact: true
+
+ - name: Minimal Template (target=release, tools=no, everything disabled)
+ cache-name: linux-template-minimal
+ target: release
+ tools: false
+ tests: false
+ sconsflags: modules_enabled_by_default=no disable_3d=yes disable_advanced_gui=yes deprecated=no minizip=no
artifact: true
steps:
@@ -80,11 +92,26 @@ jobs:
tools: ${{ matrix.tools }}
tests: ${{ matrix.tests }}
+ - name: Generate Mono glue
+ if: ${{ matrix.build-mono }}
+ run: |
+ ${{ matrix.bin }} --headless --generate-mono-glue modules/mono/glue || true
+
+ # Rebuild with mono
+ - name: Compilation (mono_glue=yes)
+ uses: ./.github/actions/godot-build
+ if: ${{ matrix.build-mono }}
+ with:
+ sconsflags: ${{ env.SCONSFLAGS }} ${{ matrix.sconsflags }} mono_glue=yes
+ platform: linuxbsd
+ target: ${{ matrix.target }}
+ tools: ${{ matrix.tools }}
+
# Execute unit tests for the editor
- name: Unit tests
if: ${{ matrix.tests }}
run: |
- ${{ matrix.bin }} --test
+ ${{ matrix.bin }} --test --headless
# Check class reference
- name: Check for class reference updates