Skip to content

Commit 25eb0ed

Browse files
committed
ci(editor): each fixture is configured before it is read, as a project is before it is opened
1 parent 9dfa338 commit 25eb0ed

2 files changed

Lines changed: 12 additions & 4 deletions

File tree

‎.github/scripts/check-toolchain-lanes.sh‎

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -120,6 +120,14 @@ editor_lane() {
120120
[ -f "$dir/build.mcpp" ] || continue
121121
echo "── $fixture"
122122
out="${RUNNER_TEMP:-/tmp}/editor-$fixture.json"
123+
# CONFIGURED FIRST, as a project is before anyone opens it: the
124+
# configuration provisions what the build program's context names --
125+
# the toolchain a fixture pins, the Qt SDK, a shader compiler -- and
126+
# without it the build database describes no build program, so the
127+
# editor finds not even `mcpp` (measured on a fresh runner).
128+
(cd "$dir" && "$MCPP_EDITOR" build --configure-only) > "${out%.json}.configure.log" 2>&1 ||
129+
{ cat "${out%.json}.configure.log"
130+
echo "| $fixture | — | — | \`mcpp build --configure-only\` failed |" >> "$summary"; failed=1; continue; }
123131
# mcppls exits 1 when it reports an error and still writes the report,
124132
# so the report decides; only a run that wrote none is its own failure.
125133
local status=0

‎.github/workflows/ci.yml‎

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1803,7 +1803,10 @@ jobs:
18031803
runs-on: ubuntu-24.04
18041804
env:
18051805
MCPP_HOME: /home/runner/.mcpp
1806-
timeout-minutes: 60
1806+
# Each fixture is configured before it is read, which provisions what its
1807+
# build program names (the device toolchains, the Qt SDK); a cold cache
1808+
# downloads all of them.
1809+
timeout-minutes: 120
18071810
steps:
18081811
- uses: actions/checkout@v4
18091812

@@ -1824,9 +1827,6 @@ jobs:
18241827
export MCPP_VENDORED_XLINGS="$PWD/mcpp-${MCPP_EDITOR_VERSION}-linux-x86_64/registry/bin/xlings"
18251828
"$MCPP_EDITOR" --version
18261829
"$MCPP_EDITOR" self config --mirror GLOBAL
1827-
# The default toolchain, installed before the first fixture rather
1828-
# than inside mcppls's first build-database run and its deadline.
1829-
(cd tests/island-interface && "$MCPP_EDITOR" build --configure-only)
18301830
echo "MCPP_EDITOR=$MCPP_EDITOR" >> "$GITHUB_ENV"
18311831
echo "MCPP_VENDORED_XLINGS=$MCPP_VENDORED_XLINGS" >> "$GITHUB_ENV"
18321832

0 commit comments

Comments
 (0)