Style: Format yaml files

This commit is contained in:
Thaddeus Crews 2024-07-08 10:41:20 -05:00
parent 74de05a01c
commit 41a81f5360
No known key found for this signature in database
GPG Key ID: 62181B86FE9E5D84
20 changed files with 211 additions and 190 deletions

View File

@ -1,7 +1,7 @@
name: Bug report name: Bug report
description: Report a bug in Godot description: Report a bug in Godot
body:
body:
- type: markdown - type: markdown
attributes: attributes:
value: | value: |

View File

@ -1,15 +1,17 @@
name: Download Godot artifact name: Download Godot artifact
description: Download the Godot artifact. description: Download the Godot artifact.
inputs: inputs:
name: name:
description: The artifact name. description: The artifact name.
default: "${{ github.job }}" default: ${{ github.job }}
path: path:
description: The path to download and extract to. description: The path to download and extract to.
required: true required: true
default: "./" default: ./
runs: runs:
using: "composite" using: composite
steps: steps:
- name: Download Godot Artifact - name: Download Godot Artifact
uses: actions/download-artifact@v4 uses: actions/download-artifact@v4

View File

@ -1,11 +1,13 @@
name: Dump Godot API name: Dump Godot API
description: Dump Godot API for GDExtension description: Dump Godot API for GDExtension
inputs: inputs:
bin: bin:
description: The path to the Godot executable description: The path to the Godot executable
required: true required: true
runs: runs:
using: "composite" using: composite
steps: steps:
# Dump GDExtension interface and API # Dump GDExtension interface and API
- name: Dump GDExtension interface and API for godot-cpp build - name: Dump GDExtension interface and API for godot-cpp build
@ -19,5 +21,5 @@ runs:
- name: Upload API dump - name: Upload API dump
uses: ./.github/actions/upload-artifact uses: ./.github/actions/upload-artifact
with: with:
name: 'godot-api-dump' name: godot-api-dump
path: './godot-api/*' path: ./godot-api/*

View File

@ -1,9 +1,10 @@
name: Build Godot name: Build Godot
description: Build Godot with the provided options. description: Build Godot with the provided options.
inputs: inputs:
target: target:
description: Build target (editor, template_release, template_debug). description: Build target (editor, template_release, template_debug).
default: "editor" default: editor
tests: tests:
description: Unit tests. description: Unit tests.
default: false default: false
@ -13,20 +14,21 @@ inputs:
required: false required: false
sconsflags: sconsflags:
description: Additional SCons flags. description: Additional SCons flags.
default: "" default: ''
required: false required: false
scons-cache: scons-cache:
description: The SCons cache path. description: The SCons cache path.
default: "${{ github.workspace }}/.scons-cache/" default: ${{ github.workspace }}/.scons-cache/
scons-cache-limit: scons-cache-limit:
description: The SCons cache size limit. description: The SCons cache size limit.
# actions/cache has 10 GiB limit, and GitHub runners have a 14 GiB disk. # actions/cache has 10 GiB limit, and GitHub runners have a 14 GiB disk.
# Limit to 7 GiB to avoid having the extracted cache fill the disk. # Limit to 7 GiB to avoid having the extracted cache fill the disk.
default: 7168 default: 7168
runs: runs:
using: "composite" using: composite
steps: steps:
- name: Scons Build - name: SCons Build
shell: sh shell: sh
env: env:
SCONSFLAGS: ${{ inputs.sconsflags }} SCONSFLAGS: ${{ inputs.sconsflags }}

View File

@ -3,12 +3,13 @@ description: Restore Godot build cache.
inputs: inputs:
cache-name: cache-name:
description: The cache base name (job name by default). description: The cache base name (job name by default).
default: "${{github.job}}" default: ${{ github.job }}
scons-cache: scons-cache:
description: The SCons cache path. description: The SCons cache path.
default: "${{github.workspace}}/.scons-cache/" default: ${{ github.workspace }}/.scons-cache/
runs: runs:
using: "composite" using: composite
steps: steps:
- name: Restore SCons cache directory - name: Restore SCons cache directory
uses: actions/cache/restore@v4 uses: actions/cache/restore@v4

View File

@ -3,12 +3,13 @@ description: Save Godot build cache.
inputs: inputs:
cache-name: cache-name:
description: The cache base name (job name by default). description: The cache base name (job name by default).
default: "${{github.job}}" default: ${{ github.job }}
scons-cache: scons-cache:
description: The SCons cache path. description: The SCons cache path.
default: "${{github.workspace}}/.scons-cache/" default: ${{ github.workspace }}/.scons-cache/
runs: runs:
using: "composite" using: composite
steps: steps:
- name: Save SCons cache directory - name: Save SCons cache directory
uses: actions/cache/save@v4 uses: actions/cache/save@v4

View File

@ -1,11 +1,13 @@
name: Test Godot project converter name: Test Godot project converter
description: Test the Godot project converter. description: Test the Godot project converter.
inputs: inputs:
bin: bin:
description: The path to the Godot executable description: The path to the Godot executable
required: true required: true
runs: runs:
using: "composite" using: composite
steps: steps:
- name: Test 3-to-4 conversion - name: Test 3-to-4 conversion
shell: sh shell: sh

View File

@ -1,17 +1,19 @@
name: Setup Python and SCons name: Setup Python and SCons
description: Setup Python, install the pip version of SCons. description: Setup Python, install the pip version of SCons.
inputs: inputs:
python-version: python-version:
description: The Python version to use. description: The Python version to use.
default: "3.x" default: 3.x
python-arch: python-arch:
description: The Python architecture. description: The Python architecture.
default: "x64" default: x64
scons-version: scons-version:
description: The SCons version to use. description: The SCons version to use.
default: "4.8.0" default: 4.8.0
runs: runs:
using: "composite" using: composite
steps: steps:
- name: Set up Python 3.x - name: Set up Python 3.x
uses: actions/setup-python@v5 uses: actions/setup-python@v5

View File

@ -1,11 +1,13 @@
name: Test Godot project name: Test Godot project
description: Run the test Godot project. description: Run the test Godot project.
inputs: inputs:
bin: bin:
description: The path to the Godot executable description: The path to the Godot executable
required: true required: true
runs: runs:
using: "composite" using: composite
steps: steps:
# Download and extract zip archive with project, folder is renamed to be able to easy change used project # Download and extract zip archive with project, folder is renamed to be able to easy change used project
- name: Download test project - name: Download test project

View File

@ -1,15 +1,17 @@
name: Upload Godot artifact name: Upload Godot artifact
description: Upload the Godot artifact. description: Upload the Godot artifact.
inputs: inputs:
name: name:
description: The artifact name. description: The artifact name.
default: "${{ github.job }}" default: ${{ github.job }}
path: path:
description: The path to upload. description: The path to upload.
required: true required: true
default: "bin/*" default: bin/*
runs: runs:
using: "composite" using: composite
steps: steps:
- name: Upload Godot Artifact - name: Upload Godot Artifact
uses: actions/upload-artifact@v4 uses: actions/upload-artifact@v4

View File

@ -14,7 +14,7 @@ concurrency:
jobs: jobs:
build-android: build-android:
runs-on: "ubuntu-20.04" runs-on: ubuntu-20.04
name: ${{ matrix.name }} name: ${{ matrix.name }}
strategy: strategy:
fail-fast: false fail-fast: false
@ -39,7 +39,8 @@ jobs:
sconsflags: arch=arm64 sconsflags: arch=arm64
steps: steps:
- uses: actions/checkout@v4 - name: Checkout
uses: actions/checkout@v4
with: with:
submodules: recursive submodules: recursive

View File

@ -7,7 +7,7 @@ env:
# Used for the cache key. Add version suffix to force clean build. # Used for the cache key. Add version suffix to force clean build.
GODOT_BASE_BRANCH: master GODOT_BASE_BRANCH: master
# Used for the godot-cpp checkout. # Used for the godot-cpp checkout.
GODOT_CPP_BRANCH: '4.3' GODOT_CPP_BRANCH: 4.3
concurrency: concurrency:
group: ci-${{ github.actor }}-${{ github.head_ref || github.run_number }}-${{ github.ref }}-cpp-tests group: ci-${{ github.actor }}-${{ github.head_ref || github.run_number }}-${{ github.ref }}-cpp-tests
@ -15,10 +15,11 @@ concurrency:
jobs: jobs:
godot-cpp-tests: godot-cpp-tests:
runs-on: "ubuntu-20.04" runs-on: ubuntu-20.04
name: "Build and test Godot CPP" name: Build and test Godot CPP
steps: steps:
- uses: actions/checkout@v4 - name: Checkout
uses: actions/checkout@v4
with: with:
submodules: recursive submodules: recursive
@ -31,15 +32,15 @@ jobs:
with: with:
repository: godotengine/godot-cpp repository: godotengine/godot-cpp
ref: ${{ env.GODOT_CPP_BRANCH }} ref: ${{ env.GODOT_CPP_BRANCH }}
submodules: 'recursive' submodules: recursive
path: 'godot-cpp' path: godot-cpp
# Download generated API dump # Download generated API dump
- name: Download GDExtension interface and API dump - name: Download GDExtension interface and API dump
uses: ./.github/actions/download-artifact uses: ./.github/actions/download-artifact
with: with:
name: 'godot-api-dump' name: godot-api-dump
path: './godot-api' path: ./godot-api
# Extract and override existing files with generated files # Extract and override existing files with generated files
- name: Extract GDExtension interface and API dump - name: Extract GDExtension interface and API dump
@ -58,11 +59,11 @@ jobs:
cd ../.. cd ../..
gdextension-c-compile: gdextension-c-compile:
runs-on: "ubuntu-20.04" runs-on: 'ubuntu-20.04'
name: "Check GDExtension header with a C compiler" name: 'Check GDExtension header with a C compiler'
steps: steps:
- uses: actions/checkout@v4 - uses: actions/checkout@v4
- name: "Run C compiler on gdextension_interface.h" - name: 'Run C compiler on gdextension_interface.h'
run: | run: |
gcc -c core/extension/gdextension_interface.h gcc -c core/extension/gdextension_interface.h

View File

@ -14,11 +14,12 @@ concurrency:
jobs: jobs:
ios-template: ios-template:
runs-on: "macos-latest" runs-on: macos-latest
name: Template (target=template_release) name: Template (target=template_release)
steps: steps:
- uses: actions/checkout@v4 - name: Checkout
uses: actions/checkout@v4
with: with:
submodules: recursive submodules: recursive

View File

@ -17,7 +17,7 @@ concurrency:
jobs: jobs:
build-linux: build-linux:
runs-on: "ubuntu-20.04" runs-on: ubuntu-20.04
name: ${{ matrix.name }} name: ${{ matrix.name }}
strategy: strategy:
fail-fast: false fail-fast: false
@ -27,7 +27,7 @@ jobs:
cache-name: linux-editor-mono cache-name: linux-editor-mono
target: editor target: editor
sconsflags: module_mono_enabled=yes sconsflags: module_mono_enabled=yes
bin: "./bin/godot.linuxbsd.editor.x86_64.mono" bin: ./bin/godot.linuxbsd.editor.x86_64.mono
build-mono: true build-mono: true
tests: false # Disabled due freeze caused by mix Mono build and CI tests: false # Disabled due freeze caused by mix Mono build and CI
doc-test: true doc-test: true
@ -40,7 +40,7 @@ jobs:
target: editor target: editor
# Debug symbols disabled as they're huge on this build and we hit the 14 GB limit for runners. # Debug symbols disabled as they're huge on this build and we hit the 14 GB limit for runners.
sconsflags: dev_build=yes scu_build=yes debug_symbols=no precision=double use_asan=yes use_ubsan=yes linker=gold sconsflags: dev_build=yes scu_build=yes debug_symbols=no precision=double use_asan=yes use_ubsan=yes linker=gold
bin: "./bin/godot.linuxbsd.editor.dev.double.x86_64.san" bin: ./bin/godot.linuxbsd.editor.dev.double.x86_64.san
build-mono: false build-mono: false
tests: true tests: true
proj-test: true proj-test: true
@ -53,7 +53,7 @@ jobs:
cache-name: linux-editor-llvm-sanitizers cache-name: linux-editor-llvm-sanitizers
target: editor target: editor
sconsflags: dev_build=yes use_asan=yes use_ubsan=yes use_llvm=yes linker=lld sconsflags: dev_build=yes use_asan=yes use_ubsan=yes use_llvm=yes linker=lld
bin: "./bin/godot.linuxbsd.editor.dev.x86_64.llvm.san" bin: ./bin/godot.linuxbsd.editor.dev.x86_64.llvm.san
build-mono: false build-mono: false
tests: true tests: true
# Skip 2GiB artifact speeding up action. # Skip 2GiB artifact speeding up action.
@ -66,36 +66,37 @@ jobs:
target: editor target: editor
tests: true tests: true
sconsflags: dev_build=yes use_tsan=yes use_llvm=yes linker=lld sconsflags: dev_build=yes use_tsan=yes use_llvm=yes linker=lld
bin: "./bin/godot.linuxbsd.editor.dev.x86_64.llvm.san" bin: ./bin/godot.linuxbsd.editor.dev.x86_64.llvm.san
build-mono: false build-mono: false
# Skip 2GiB artifact speeding up action. # Skip 2GiB artifact speeding up action.
artifact: false artifact: false
- name: Template w/ Mono (target=template_release) - name: Template w/ Mono (target=template_release, tests=yes)
cache-name: linux-template-mono cache-name: linux-template-mono
target: template_release target: template_release
sconsflags: module_mono_enabled=yes tests=yes sconsflags: module_mono_enabled=yes
bin: "./bin/godot.linuxbsd.template_release.x86_64.mono" bin: ./bin/godot.linuxbsd.template_release.x86_64.mono
build-mono: false build-mono: false
tests: true tests: true
artifact: true artifact: true
- name: Minimal template (target=template_release, everything disabled) - name: Minimal template (target=template_release, tests=yes, everything disabled)
cache-name: linux-template-minimal cache-name: linux-template-minimal
target: template_release target: template_release
sconsflags: modules_enabled_by_default=no disable_3d=yes disable_advanced_gui=yes deprecated=no minizip=no tests=yes sconsflags: modules_enabled_by_default=no disable_3d=yes disable_advanced_gui=yes deprecated=no minizip=no
bin: "./bin/godot.linuxbsd.template_release.x86_64" bin: ./bin/godot.linuxbsd.template_release.x86_64
tests: true tests: true
artifact: true artifact: true
steps: steps:
- uses: actions/checkout@v4 - name: Checkout
uses: actions/checkout@v4
with: with:
submodules: recursive submodules: recursive
# Need newer mesa for lavapipe to work properly. # Need newer mesa for lavapipe to work properly.
- name: Linux dependencies for tests - name: Linux dependencies for tests
if: ${{ matrix.proj-test }} if: matrix.proj-test
run: | run: |
sudo rm -f /etc/apt/sources.list.d/microsoft-prod.list sudo rm -f /etc/apt/sources.list.d/microsoft-prod.list
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys EB8B81E14DA65431D7504EA8F63F0F2B90935439 sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys EB8B81E14DA65431D7504EA8F63F0F2B90935439
@ -120,11 +121,11 @@ jobs:
continue-on-error: true continue-on-error: true
- name: Setup Python and SCons - name: Setup Python and SCons
if: ${{ ! matrix.legacy-scons }} if: '!matrix.legacy-scons'
uses: ./.github/actions/godot-deps uses: ./.github/actions/godot-deps
- name: Setup Python and SCons (legacy versions) - name: Setup Python and SCons (legacy versions)
if: ${{ matrix.legacy-scons }} if: matrix.legacy-scons
uses: ./.github/actions/godot-deps uses: ./.github/actions/godot-deps
with: with:
# Sync with Ensure*Version in SConstruct. # Sync with Ensure*Version in SConstruct.
@ -149,48 +150,48 @@ jobs:
continue-on-error: true continue-on-error: true
- name: Generate C# glue - name: Generate C# glue
if: ${{ matrix.build-mono }} if: matrix.build-mono
run: | run: |
${{ matrix.bin }} --headless --generate-mono-glue ./modules/mono/glue ${{ matrix.bin }} --headless --generate-mono-glue ./modules/mono/glue
- name: Build .NET solutions - name: Build .NET solutions
if: ${{ matrix.build-mono }} if: matrix.build-mono
run: | run: |
./modules/mono/build_scripts/build_assemblies.py --godot-output-dir=./bin --godot-platform=linuxbsd ./modules/mono/build_scripts/build_assemblies.py --godot-output-dir=./bin --godot-platform=linuxbsd
- name: Prepare artifact - name: Prepare artifact
if: ${{ matrix.artifact }} if: matrix.artifact
run: | run: |
strip bin/godot.* strip bin/godot.*
chmod +x bin/godot.* chmod +x bin/godot.*
- name: Upload artifact - name: Upload artifact
uses: ./.github/actions/upload-artifact uses: ./.github/actions/upload-artifact
if: ${{ matrix.artifact }} if: matrix.artifact
with: with:
name: ${{ matrix.cache-name }} name: ${{ matrix.cache-name }}
- name: Dump Godot API - name: Dump Godot API
uses: ./.github/actions/godot-api-dump uses: ./.github/actions/godot-api-dump
if: ${{ matrix.api-dump }} if: matrix.api-dump
with: with:
bin: ${{ matrix.bin }} bin: ${{ matrix.bin }}
- name: Unit tests - name: Unit tests
if: ${{ matrix.tests }} if: matrix.tests
run: | run: |
${{ matrix.bin }} --version ${{ matrix.bin }} --version
${{ matrix.bin }} --help ${{ matrix.bin }} --help
${{ matrix.bin }} --headless --test --force-colors ${{ matrix.bin }} --headless --test --force-colors
- name: .NET source generators tests - name: .NET source generators tests
if: ${{ matrix.build-mono }} if: matrix.build-mono
run: | run: |
dotnet test modules/mono/editor/Godot.NET.Sdk/Godot.SourceGenerators.Tests dotnet test modules/mono/editor/Godot.NET.Sdk/Godot.SourceGenerators.Tests
# Check class reference # Check class reference
- name: Check for class reference updates - name: Check for class reference updates
if: ${{ matrix.doc-test }} if: matrix.doc-test
run: | run: |
echo "Running --doctool to see if this changes the public API without updating the documentation." echo "Running --doctool to see if this changes the public API without updating the documentation."
echo -e "If a diff is shown, it means that your code/doc changes are incomplete and you should update the class reference with --doctool.\n\n" echo -e "If a diff is shown, it means that your code/doc changes are incomplete and you should update the class reference with --doctool.\n\n"
@ -199,20 +200,20 @@ jobs:
# Check API backwards compatibility # Check API backwards compatibility
- name: Check for GDExtension compatibility - name: Check for GDExtension compatibility
if: ${{ matrix.api-compat }} if: matrix.api-compat
run: | run: |
./misc/scripts/validate_extension_api.sh "${{ matrix.bin }}" ./misc/scripts/validate_extension_api.sh "${{ matrix.bin }}"
# Download and run the test project # Download and run the test project
- name: Test Godot project - name: Test Godot project
uses: ./.github/actions/godot-project-test uses: ./.github/actions/godot-project-test
if: ${{ matrix.proj-test }} if: matrix.proj-test
with: with:
bin: ${{ matrix.bin }} bin: ${{ matrix.bin }}
# Test the project converter # Test the project converter
- name: Test project converter - name: Test project converter
uses: ./.github/actions/godot-converter-test uses: ./.github/actions/godot-converter-test
if: ${{ matrix.proj-conv }} if: matrix.proj-conv
with: with:
bin: ${{ matrix.bin }} bin: ${{ matrix.bin }}

View File

@ -14,7 +14,7 @@ concurrency:
jobs: jobs:
build-macos: build-macos:
runs-on: "macos-latest" runs-on: macos-latest
name: ${{ matrix.name }} name: ${{ matrix.name }}
strategy: strategy:
fail-fast: false fail-fast: false
@ -24,17 +24,18 @@ jobs:
cache-name: macos-editor cache-name: macos-editor
target: editor target: editor
tests: true tests: true
bin: "./bin/godot.macos.editor.universal" bin: ./bin/godot.macos.editor.universal
- name: Template (target=template_release) - name: Template (target=template_release, tests=yes)
cache-name: macos-template cache-name: macos-template
target: template_release target: template_release
tests: true tests: true
sconsflags: debug_symbols=no tests=yes sconsflags: debug_symbols=no
bin: "./bin/godot.macos.template_release.universal" bin: ./bin/godot.macos.template_release.universal
steps: steps:
- uses: actions/checkout@v4 - name: Checkout
uses: actions/checkout@v4
with: with:
submodules: recursive submodules: recursive
@ -86,7 +87,7 @@ jobs:
name: ${{ matrix.cache-name }} name: ${{ matrix.cache-name }}
- name: Unit tests - name: Unit tests
if: ${{ matrix.tests }} if: matrix.tests
run: | run: |
${{ matrix.bin }} --version ${{ matrix.bin }} --version
${{ matrix.bin }} --help ${{ matrix.bin }} --help

View File

@ -9,44 +9,38 @@ jobs:
# First stage: Only static checks, fast and prevent expensive builds from running. # First stage: Only static checks, fast and prevent expensive builds from running.
static-checks: static-checks:
if: ${{ vars.DISABLE_GODOT_CI == '' }} if: '!vars.DISABLE_GODOT_CI'
name: 📊 Static checks name: 📊 Static checks
uses: ./.github/workflows/static_checks.yml uses: ./.github/workflows/static_checks.yml
# Second stage: Run all the builds and some of the tests. # Second stage: Run all the builds and some of the tests.
android-build: android-build:
if: ${{ vars.DISABLE_GODOT_CI == '' }}
name: 🤖 Android name: 🤖 Android
needs: static-checks needs: static-checks
uses: ./.github/workflows/android_builds.yml uses: ./.github/workflows/android_builds.yml
ios-build: ios-build:
if: ${{ vars.DISABLE_GODOT_CI == '' }}
name: 🍏 iOS name: 🍏 iOS
needs: static-checks needs: static-checks
uses: ./.github/workflows/ios_builds.yml uses: ./.github/workflows/ios_builds.yml
linux-build: linux-build:
if: ${{ vars.DISABLE_GODOT_CI == '' }}
name: 🐧 Linux name: 🐧 Linux
needs: static-checks needs: static-checks
uses: ./.github/workflows/linux_builds.yml uses: ./.github/workflows/linux_builds.yml
macos-build: macos-build:
if: ${{ vars.DISABLE_GODOT_CI == '' }}
name: 🍎 macOS name: 🍎 macOS
needs: static-checks needs: static-checks
uses: ./.github/workflows/macos_builds.yml uses: ./.github/workflows/macos_builds.yml
windows-build: windows-build:
if: ${{ vars.DISABLE_GODOT_CI == '' }}
name: 🏁 Windows name: 🏁 Windows
needs: static-checks needs: static-checks
uses: ./.github/workflows/windows_builds.yml uses: ./.github/workflows/windows_builds.yml
web-build: web-build:
if: ${{ vars.DISABLE_GODOT_CI == '' }}
name: 🌐 Web name: 🌐 Web
needs: static-checks needs: static-checks
uses: ./.github/workflows/web_builds.yml uses: ./.github/workflows/web_builds.yml
@ -56,7 +50,6 @@ jobs:
# Can be turned off for PRs that intentionally break compat with godot-cpp, # Can be turned off for PRs that intentionally break compat with godot-cpp,
# until both the upstream PR and the matching godot-cpp changes are merged. # until both the upstream PR and the matching godot-cpp changes are merged.
godot-cpp-test: godot-cpp-test:
if: ${{ vars.DISABLE_GODOT_CI == '' }}
name: 🪲 Godot CPP name: 🪲 Godot CPP
# This can be changed to depend on another platform, if we decide to use it for # This can be changed to depend on another platform, if we decide to use it for
# godot-cpp instead. Make sure to move the .github/actions/godot-api-dump step # godot-cpp instead. Make sure to move the .github/actions/godot-api-dump step

View File

@ -48,7 +48,7 @@ jobs:
- name: Style checks via pre-commit - name: Style checks via pre-commit
uses: pre-commit/action@v3.0.1 uses: pre-commit/action@v3.0.1
with: with:
extra_args: --verbose --files ${{ env.CHANGED_FILES }} extra_args: --files ${{ env.CHANGED_FILES }}
- name: Python builders checks via pytest - name: Python builders checks via pytest
run: | run: |

View File

@ -8,7 +8,7 @@ env:
GODOT_BASE_BRANCH: master GODOT_BASE_BRANCH: master
SCONSFLAGS: verbose=yes warnings=extra werror=yes debug_symbols=no use_closure_compiler=yes strict_checks=yes SCONSFLAGS: verbose=yes warnings=extra werror=yes debug_symbols=no use_closure_compiler=yes strict_checks=yes
EM_VERSION: 3.1.64 EM_VERSION: 3.1.64
EM_CACHE_FOLDER: "emsdk-cache" EM_CACHE_FOLDER: emsdk-cache
concurrency: concurrency:
group: ci-${{ github.actor }}-${{ github.head_ref || github.run_number }}-${{ github.ref }}-web group: ci-${{ github.actor }}-${{ github.head_ref || github.run_number }}-${{ github.ref }}-web
@ -16,7 +16,7 @@ concurrency:
jobs: jobs:
web-template: web-template:
runs-on: "ubuntu-22.04" runs-on: ubuntu-22.04
name: ${{ matrix.name }} name: ${{ matrix.name }}
strategy: strategy:
fail-fast: false fail-fast: false
@ -37,7 +37,8 @@ jobs:
artifact: true artifact: true
steps: steps:
- uses: actions/checkout@v4 - name: Checkout
uses: actions/checkout@v4
with: with:
submodules: recursive submodules: recursive
@ -77,6 +78,6 @@ jobs:
- name: Upload artifact - name: Upload artifact
uses: ./.github/actions/upload-artifact uses: ./.github/actions/upload-artifact
if: ${{ matrix.artifact }} if: matrix.artifact
with: with:
name: ${{ matrix.cache-name }} name: ${{ matrix.cache-name }}

View File

@ -17,7 +17,7 @@ concurrency:
jobs: jobs:
build-windows: build-windows:
# Windows 10 with latest image # Windows 10 with latest image
runs-on: "windows-latest" runs-on: windows-latest
name: ${{ matrix.name }} name: ${{ matrix.name }}
strategy: strategy:
fail-fast: false fail-fast: false
@ -29,7 +29,7 @@ jobs:
tests: true tests: true
# Skip debug symbols, they're way too big with MSVC. # Skip debug symbols, they're way too big with MSVC.
sconsflags: debug_symbols=no vsproj=yes vsproj_gen_only=no windows_subsystem=console sconsflags: debug_symbols=no vsproj=yes vsproj_gen_only=no windows_subsystem=console
bin: "./bin/godot.windows.editor.x86_64.exe" bin: ./bin/godot.windows.editor.x86_64.exe
artifact: true artifact: true
- name: Editor w/ clang-cl (target=editor, tests=yes, use_llvm=yes) - name: Editor w/ clang-cl (target=editor, tests=yes, use_llvm=yes)
@ -39,16 +39,17 @@ jobs:
sconsflags: debug_symbols=no windows_subsystem=console use_llvm=yes sconsflags: debug_symbols=no windows_subsystem=console use_llvm=yes
bin: ./bin/godot.windows.editor.x86_64.llvm.exe bin: ./bin/godot.windows.editor.x86_64.llvm.exe
- name: Template (target=template_release) - name: Template (target=template_release, tests=yes)
cache-name: windows-template cache-name: windows-template
target: template_release target: template_release
tests: true tests: true
sconsflags: debug_symbols=no tests=yes sconsflags: debug_symbols=no
bin: "./bin/godot.windows.template_release.x86_64.console.exe" bin: ./bin/godot.windows.template_release.x86_64.console.exe
artifact: true artifact: true
steps: steps:
- uses: actions/checkout@v4 - name: Checkout
uses: actions/checkout@v4
with: with:
submodules: recursive submodules: recursive
@ -104,7 +105,7 @@ jobs:
name: ${{ matrix.cache-name }} name: ${{ matrix.cache-name }}
- name: Unit tests - name: Unit tests
if: ${{ matrix.tests }} if: matrix.tests
run: | run: |
${{ matrix.bin }} --version ${{ matrix.bin }} --version
${{ matrix.bin }} --help ${{ matrix.bin }} --help

View File

@ -96,16 +96,21 @@ repos:
language: node language: node
entry: eslint entry: eslint
files: ^(platform/web/js/|modules/|misc/dist/html/).*\.(js|html)$ files: ^(platform/web/js/|modules/|misc/dist/html/).*\.(js|html)$
args: [--fix, --no-warn-ignored, --no-config-lookup, --config, platform/web/eslint.config.cjs] args:
- --fix,
- --no-warn-ignored,
- --no-config-lookup,
- --config,
- platform/web/eslint.config.cjs,
additional_dependencies: additional_dependencies:
- '@eslint/js@^9.3.0' - '@eslint/js@^9.3.0'
- '@html-eslint/eslint-plugin@^0.24.1' - '@html-eslint/eslint-plugin@^0.24.1'
- '@html-eslint/parser@^0.24.1' - '@html-eslint/parser@^0.24.1'
- '@stylistic/eslint-plugin@^2.1.0' - '@stylistic/eslint-plugin@^2.1.0'
- 'eslint@^9.3.0' - eslint@^9.3.0
- 'eslint-plugin-html@^8.1.1' - eslint-plugin-html@^8.1.1
- 'globals@^15.3.0' - globals@^15.3.0
- 'espree@^10.0.1' - espree@^10.0.1
- id: jsdoc - id: jsdoc
name: jsdoc name: jsdoc
@ -123,7 +128,7 @@ repos:
- -d - -d
- dry-run - dry-run
pass_filenames: false pass_filenames: false
additional_dependencies: ['jsdoc@^4.0.3'] additional_dependencies: [jsdoc@^4.0.3]
- id: svgo - id: svgo
name: svgo name: svgo
@ -131,7 +136,7 @@ repos:
entry: svgo entry: svgo
files: \.svg$ files: \.svg$
args: [--quiet, --config, misc/utility/svgo.config.mjs] args: [--quiet, --config, misc/utility/svgo.config.mjs]
additional_dependencies: ["svgo@3.3.2"] additional_dependencies: [svgo@3.3.2]
- id: copyright-headers - id: copyright-headers
name: copyright-headers name: copyright-headers
@ -179,7 +184,7 @@ repos:
language: python language: python
entry: python misc/scripts/dotnet_format.py entry: python misc/scripts/dotnet_format.py
types_or: [c#] types_or: [c#]
#
# End of upstream Godot pre-commit hooks. # End of upstream Godot pre-commit hooks.
# #
# Keep this separation to let downstream forks add their own hooks to this file, # Keep this separation to let downstream forks add their own hooks to this file,