[Fix] (CI): avoid IN_LIST in a CTest include and move loopback TCP test ports below the ephemeral range

This commit is contained in:
2026-10-06 02:33:13 -04:00
parent 959f518669
commit cde6512b08
3 changed files with 9 additions and 3 deletions
+4 -1
View File
@@ -2131,7 +2131,10 @@ if (MOBILEGL_BUILD_DISAGGREGATED)
# A single supervisor serves one session at a time. Fixture teardown also reaps a
# child left behind by a failed client; the resource lock serializes this lane.
set(MOBILEGL_ITEST_TCP_ENDPOINT "tcp://127.0.0.1:40613" CACHE STRING "Loopback TCP integration endpoint")
# Below Linux's ephemeral range (32768-60999): thousands of loopback client connections run
# in this lane, and an outgoing socket that happens to own the port makes the supervisor's
# bind fail (TcpServer.Start.* red in 0.07 s on a hosted runner).
set(MOBILEGL_ITEST_TCP_ENDPOINT "tcp://127.0.0.1:30613" CACHE STRING "Loopback TCP integration endpoint")
set(MOBILEGL_ITEST_TCP_DEVICE_ENDPOINT "" CACHE STRING "Optional device TCP integration endpoint")
set(MOBILEGL_ITEST_TCP_DEVICE_TOKEN "" CACHE STRING "Token for the device TCP integration endpoint")
find_package(Python3 REQUIRED COMPONENTS Interpreter)
+1 -1
View File
@@ -139,7 +139,7 @@ mgl_itest_register_split_arms("${mglP8aAmbientFilter}" "")
# on its own port, started by its own fixture with the knob in the fixture's ENVIRONMENT.
#
# THE PORTS: the lane endpoint's port + MOBILEGL_ITEST_TCP_KNOB_PORT_OFFSET + the lane's index.
# The default offset (1000) keeps the five clear of every per-tree lane endpoint in use (40613
# The default offset (1000) keeps the five clear of every per-tree lane endpoint in use (30613
# CI, 407xx / 409xx split and verify builds, 484x0 package trees). One overlap remains: a tree
# whose split and verify builds sit one port apart (409x3 / 409x4) gets knob ports one apart as
# well, so the two builds must not run integration-tcp at the same moment - set the cache
+4 -1
View File
@@ -221,8 +221,11 @@ include(GoogleTest)
gtest_discover_tests(PipeCatalogueTest DISCOVERY_TIMEOUT 30 PROPERTIES LABELS unit)
# This source scanner must inspect the configured checkout, including in out-of-tree builds.
# Apply the override after GoogleTest's deferred discovery, and only to this one test.
# CTestTestfile scripts run with no policy settings, so IN_LIST (CMP0057) is not available here
# on CMake 3.x: use list(FIND) instead.
file(GENERATE OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/PipeCatalogueSourceRoot.cmake" CONTENT
"if(\"PipeCatalogue.FrontendNeverTakesAnApplierAddress\" IN_LIST PipeCatalogueTest_TESTS)
"list(FIND PipeCatalogueTest_TESTS \"PipeCatalogue.FrontendNeverTakesAnApplierAddress\" _mglSourceRootTest)
if(NOT _mglSourceRootTest EQUAL -1)
set_tests_properties(PipeCatalogue.FrontendNeverTakesAnApplierAddress PROPERTIES
WORKING_DIRECTORY [==[${MGL_ROOT}]==])
endif()