From 086658e61b76c012eb5f546174e12d52b45eee29 Mon Sep 17 00:00:00 2001 From: Anonymous <> Date: Wed, 5 Mar 2025 20:39:23 +0000 Subject: [PATCH 1/2] Limit PI CI builds to 2 cores --- .github/scripts/build.sh | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/.github/scripts/build.sh b/.github/scripts/build.sh index 7c917fdab..bf4a30575 100755 --- a/.github/scripts/build.sh +++ b/.github/scripts/build.sh @@ -38,6 +38,14 @@ elif [[ "$RUNNER_OS" == 'Linux' ]]; then # take ownership of deploy dir mkdir ${GITHUB_WORKSPACE}/deploy + NPROC=$(nproc) + + # Raspberry PIs have limited RAM + # Running wide will cause the docker container to OOM kill GCC + if [[ "$PLATFORM" == 'rpi-dev' ]] && [ $NPROC -gt 2 ]; then + NPROC=2 + fi + # run docker docker run --rm --platform=${TARGET_ARCH} \ -v "${GITHUB_WORKSPACE}/deploy:/deploy" \ @@ -45,7 +53,7 @@ elif [[ "$RUNNER_OS" == 'Linux' ]]; then $REGISTRY_URL:$DOCKER_TAG \ /bin/bash -c "mkdir -p /source/build && cd /source/build && cmake -G Ninja -DPLATFORM=${PLATFORM} -DCMAKE_BUILD_TYPE=${BUILD_TYPE} .. || exit 2 && - cmake --build . --target package -- -j $(nproc) || exit 3 || : && + cmake --build . --target package -- -j $NPROC || exit 3 || : && cp /source/build/bin/h* /deploy/ 2>/dev/null || : && cp /source/build/Hyperion-* /deploy/ 2>/dev/null || : && cd /source && source /source/test/testrunner.sh || exit 5 && From fc3b5c5c73093419d3a5cbdc56f1a8625849c009 Mon Sep 17 00:00:00 2001 From: Anonymous <> Date: Wed, 5 Mar 2025 20:40:30 +0000 Subject: [PATCH 2/2] Update changelog --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index a4a901b56..e04f1b981 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -48,6 +48,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - osX Grabber: Use ScreenCaptureKit under macOS 15 and above - Removed maximum LED number constraint from Matrix layout schema which was not synced with the UI behaviour (#1804) - Fixed bespoke WebSocket implementation by using of QWebSockets (#1816, #1448, #1247, #1130) +- Fixed: RaspberryPi CI OOM kills during compile **JSON-API** - Refactored JSON-API to ensure consistent authorization behaviour across sessions and single requests with token authorization.