Check sync with Godot master API #518
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# This periodically checks to see if we've drifted out of sync with master by running a compile from the latest, | |
# with only the gdsdecomp module enabled. | |
name: Check sync with Godot master API | |
# runs every day at midnight GMT | |
on: | |
schedule: | |
- cron: '0 0 * * *' | |
push: | |
paths: | |
- '.github/workflows/check_api_sync.yml' | |
workflow_dispatch: | |
env: | |
GODOT_BASE_BRANCH: master | |
GDSDECOMP_BASE_BRANCH: master | |
# Temp fix for check_api_sync, `disable_3d=yes` currently causes the build to fail on linux | |
SCONSFLAGS: debug_symbols=no warnings=extra optimize=size use_lto=yes disable_3d=no no_editor_splash=yes module_bmp_enabled=no module_bullet_enabled=no module_camera_enabled=no module_csg_enabled=no module_cvtt_enabled=no module_mbedtls_enabled=no module_tga_enabled=no module_enet_enabled=no module_mobile_vr_enabled=no module_upnp_enabled=no module_gdnative_enabled=no module_opensimplex_enabled=no module_pvr_enabled=no module_webm_enabled=no module_websocket_enabled=no module_gridmap_enabled=no module_xatlas_unwrap_enabled=no module_squish_enabled=no use_static_cpp=yes builtin_freetype=yes builtin_libpng=yes builtin_zlib=yes | |
jobs: | |
check: | |
name: "Test master API Sync" | |
runs-on: "ubuntu-20.04" | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
- cache-name: api-sync-test | |
target: template_debug | |
platform: linuxbsd | |
tests: false | |
steps: | |
- name: checkout-godot | |
uses: actions/checkout@v3 | |
with: | |
repository: godotengine/godot | |
# check out latest from master branch | |
ref: ${{env.GODOT_BASE_BRANCH}} | |
- name: checkout-gdsdecomp | |
uses: actions/checkout@v3 | |
with: | |
path: modules/gdsdecomp | |
ref: ${{env.GDSDECOMP_BASE_BRANCH}} | |
# Install all packages (except scons) | |
- name: Configure dependencies | |
run: | | |
sudo apt-get update | |
sudo apt-get install build-essential pkg-config libx11-dev libxcursor-dev \ | |
libxinerama-dev libgl1-mesa-dev libglu-dev libasound2-dev libpulse-dev \ | |
libudev-dev libxi-dev libxrandr-dev yasm clang-format-8 | |
- name: Setup Godot build cache | |
uses: ./.github/actions/godot-cache | |
with: | |
cache-name: ${{ matrix.cache-name }} | |
continue-on-error: true | |
- name: Setup python and scons | |
uses: ./.github/actions/godot-deps | |
- name: Compilation | |
uses: ./.github/actions/godot-build | |
with: | |
sconsflags: ${{ env.SCONSFLAGS }} ${{ matrix.sconsflags }} | |
platform: ${{ matrix.platform }} | |
target: ${{ matrix.target }} | |
tools: ${{ matrix.tools }} | |
tests: ${{ matrix.tests }} | |
scons-cache-limit: 4096 |