Compare commits

...

3 Commits

Author SHA1 Message Date
Serhii Snitsaruk 244256c01f
fix 2024-12-01 15:30:43 +01:00
Serhii Snitsaruk 025ae27fc2
GHA: Don't use SCons cache in release builds 2024-12-01 15:20:13 +01:00
Serhii Snitsaruk d613994bf4
iterate 2024-12-01 15:03:26 +01:00
7 changed files with 57 additions and 50 deletions

View File

@ -165,15 +165,16 @@ jobs:
python --version python --version
scons --version scons --version
- name: Set up scons cache # ! Note: we stopped using the scons cache in release builds.
uses: actions/cache@v4 # - name: Set up scons cache
with: # uses: actions/cache@v4
path: ${{github.workspace}}/.scons_cache/ # with:
key: ${{env.BIN}}-${{inputs.godot-ref}}-${{inputs.limboai-ref}}-${{env.LIMBOAI_VERSION}} # path: ${{github.workspace}}/.scons_cache/
restore-keys: | # key: ${{env.BIN}}-${{inputs.godot-ref}}-${{inputs.limboai-ref}}-${{env.LIMBOAI_VERSION}}
${{env.BIN}}-${{inputs.godot-ref}}-${{inputs.limboai-ref}}-${{env.LIMBOAI_VERSION}} # restore-keys: |
${{env.BIN}}-${{inputs.godot-ref}}-${{inputs.limboai-ref}} # ${{env.BIN}}-${{inputs.godot-ref}}-${{inputs.limboai-ref}}-${{env.LIMBOAI_VERSION}}
${{env.BIN}}-${{inputs.godot-ref}} # ${{env.BIN}}-${{inputs.godot-ref}}-${{inputs.limboai-ref}}
# ${{env.BIN}}-${{inputs.godot-ref}}
- name: Compilation - name: Compilation
env: env:

View File

@ -11,7 +11,7 @@ on:
type: string type: string
default: master default: master
test-build: test-build:
description: Limit the number of test builds description: Limit to pre-defined test builds
type: boolean type: boolean
default: false default: false
debug-symbols: debug-symbols:
@ -30,7 +30,7 @@ on:
type: string type: string
default: master default: master
test-build: test-build:
description: Limit the number of test builds description: Limit to pre-defined test builds
type: boolean type: boolean
default: false default: false
debug-symbols: debug-symbols:
@ -285,6 +285,7 @@ jobs:
uses: ammaraskar/msvc-problem-matcher@master uses: ammaraskar/msvc-problem-matcher@master
- name: Set up scons cache - name: Set up scons cache
if: inputs.test-build # ! Only cache test/PR builds
uses: actions/cache@v4 uses: actions/cache@v4
with: with:
path: ${{github.workspace}}/.scons_cache/ path: ${{github.workspace}}/.scons_cache/

View File

@ -145,15 +145,16 @@ jobs:
rm -Rf /tmp/InstallVulkan.app rm -Rf /tmp/InstallVulkan.app
rm -f /tmp/vulkan-sdk.zip rm -f /tmp/vulkan-sdk.zip
- name: Set up scons cache # ! Note: we stopped using the scons cache in release builds.
uses: actions/cache@v4 # - name: Set up scons cache
with: # uses: actions/cache@v4
path: ${{github.workspace}}/.scons_cache/ # with:
key: ${{env.BIN}}-${{inputs.godot-ref}}-${{inputs.limboai-ref}}-${{env.LIMBOAI_VERSION}} # path: ${{github.workspace}}/.scons_cache/
restore-keys: | # key: ${{env.BIN}}-${{inputs.godot-ref}}-${{inputs.limboai-ref}}-${{env.LIMBOAI_VERSION}}
${{env.BIN}}-${{inputs.godot-ref}}-${{inputs.limboai-ref}}-${{env.LIMBOAI_VERSION}} # restore-keys: |
${{env.BIN}}-${{inputs.godot-ref}}-${{inputs.limboai-ref}} # ${{env.BIN}}-${{inputs.godot-ref}}-${{inputs.limboai-ref}}-${{env.LIMBOAI_VERSION}}
${{env.BIN}}-${{inputs.godot-ref}} # ${{env.BIN}}-${{inputs.godot-ref}}-${{inputs.limboai-ref}}
# ${{env.BIN}}-${{inputs.godot-ref}}
- name: Compilation - name: Compilation
env: env:

View File

@ -11,7 +11,7 @@ on:
type: string type: string
default: master default: master
test-build: test-build:
description: Should we perform only a limited number of test builds? description: Limit to pre-defined test builds
type: boolean type: boolean
default: false default: false
@ -26,7 +26,7 @@ on:
type: string type: string
default: master default: master
test-build: test-build:
description: Should we perform only a limited number of test builds? description: Limit to pre-defined test builds
type: boolean type: boolean
default: false default: false
@ -227,6 +227,7 @@ jobs:
sudo apt-get install libwayland-dev sudo apt-get install libwayland-dev
- name: Set up scons cache - name: Set up scons cache
if: inputs.test-build # ! Only cache test/PR builds
uses: actions/cache@v4 uses: actions/cache@v4
with: with:
path: ${{github.workspace}}/.scons_cache/ path: ${{github.workspace}}/.scons_cache/

View File

@ -11,7 +11,7 @@ on:
type: string type: string
default: master default: master
test-build: test-build:
description: Should we perform only a limited number of test builds? description: Limit to pre-defined test builds
type: boolean type: boolean
default: false default: false
@ -26,7 +26,7 @@ on:
type: string type: string
default: master default: master
test-build: test-build:
description: Should we perform only a limited number of test builds? description: Limit to pre-defined test builds
type: boolean type: boolean
default: false default: false
@ -175,6 +175,7 @@ jobs:
rm -f /tmp/vulkan-sdk.zip rm -f /tmp/vulkan-sdk.zip
- name: Set up scons cache - name: Set up scons cache
if: inputs.test-build # ! Only cache test/PR builds
uses: actions/cache@v4 uses: actions/cache@v4
with: with:
path: ${{github.workspace}}/.scons_cache/ path: ${{github.workspace}}/.scons_cache/

View File

@ -120,15 +120,16 @@ jobs:
python --version python --version
scons --version scons --version
- name: Set up scons cache # ! Note: we stopped using the scons cache in release builds.
uses: actions/cache@v4 # - name: Set up scons cache
with: # uses: actions/cache@v4
path: ${{github.workspace}}/.scons_cache/ # with:
key: ${{env.CACHE_NAME}}-${{inputs.godot-ref}}-${{inputs.limboai-ref}}-${{env.LIMBOAI_VERSION}} # path: ${{github.workspace}}/.scons_cache/
restore-keys: | # key: ${{env.CACHE_NAME}}-${{inputs.godot-ref}}-${{inputs.limboai-ref}}-${{env.LIMBOAI_VERSION}}
${{env.CACHE_NAME}}-${{inputs.godot-ref}}-${{inputs.limboai-ref}}-${{env.LIMBOAI_VERSION}} # restore-keys: |
${{env.CACHE_NAME}}-${{inputs.godot-ref}}-${{inputs.limboai-ref}} # ${{env.CACHE_NAME}}-${{inputs.godot-ref}}-${{inputs.limboai-ref}}-${{env.LIMBOAI_VERSION}}
${{env.CACHE_NAME}}-${{inputs.godot-ref}} # ${{env.CACHE_NAME}}-${{inputs.godot-ref}}-${{inputs.limboai-ref}}
# ${{env.CACHE_NAME}}-${{inputs.godot-ref}}
- name: Compilation - name: Compilation
env: env:

View File

@ -11,7 +11,7 @@ on:
type: string type: string
default: master default: master
test-build: test-build:
description: Should we perform only a limited number of test builds? description: Limit to pre-defined test builds
type: boolean type: boolean
default: false default: false
@ -26,7 +26,7 @@ on:
type: string type: string
default: master default: master
test-build: test-build:
description: Should we perform only a limited number of test builds? description: Limit to pre-defined test builds
type: boolean type: boolean
default: false default: false
@ -40,6 +40,8 @@ jobs:
windows-builds: windows-builds:
runs-on: "ubuntu-24.04" runs-on: "ubuntu-24.04"
name: ${{ matrix.opts.name }} name: ${{ matrix.opts.name }}
outputs:
built-dotnet-editor: ${{ steps.mark-dotnet-editor.outputs.built-dotnet-editor }}
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
@ -209,7 +211,7 @@ jobs:
- uses: ./modules/limboai/.github/actions/init-version - uses: ./modules/limboai/.github/actions/init-version
- name: Set up scons cache - name: Set up scons cache
if: inputs.test-build # ! Only cache test (aka PR) builds if: inputs.test-build # ! Only cache test/PR builds
uses: actions/cache@v4 uses: actions/cache@v4
with: with:
path: ${{github.workspace}}/.scons_cache/ path: ${{github.workspace}}/.scons_cache/
@ -275,28 +277,27 @@ jobs:
name: ${{env.NAME_PREFIX}}${{matrix.opts.dotnet == true && '.dotnet' || ''}}.${{matrix.opts.target}}.windows.${{matrix.opts.arch}} name: ${{env.NAME_PREFIX}}${{matrix.opts.dotnet == true && '.dotnet' || ''}}.${{matrix.opts.target}}.windows.${{matrix.opts.arch}}
path: out/* path: out/*
- name: Mark .NET editor as built
if: matrix.opts.dotnet && matrix.opts.target == 'editor'
id: mark-dotnet-editor
run: |
if [ "${{matrix.opts.dotnet}}" == "x86_64" ]; then
echo "built-dotnet-editor=true" >> $GITHUB_OUTPUT
dotnet-assemblies: dotnet-assemblies:
name: Build .NET assemblies name: .NET assembly for ${{matrix.opts.arch}}
if: ${{ !inputs.test-build }} # ! Don't run in test builds
runs-on: "windows-latest"
needs: windows-builds needs: windows-builds
if: always() && needs.windows-builds.outputs.built-dotnet-editor == 'true'
runs-on: "windows-latest"
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
opts: opts:
- name: Editor .NET (x86_64, release) - arch: x86_64
target: editor
arch: x86_64
llvm: false llvm: false
dotnet: true
should-build: true
exclude:
- { opts: { should-build: false } }
env: env:
BIN: godot.windows.${{matrix.opts.target}}.${{matrix.opts.arch}}${{matrix.opts.llvm && '.llvm' || ''}}${{matrix.opts.dotnet == true && '.mono' || ''}} BIN: godot.windows.editor.${{matrix.opts.arch}}${{matrix.opts.llvm && '.llvm' || ''}}.mono
steps: steps:
- name: Clone Godot - name: Clone Godot
uses: actions/checkout@v4 uses: actions/checkout@v4