Skip to content

fix: game-ci test --docker defaulted to an image that can't actually run tests - #101

Merged
frostebite merged 1 commit into
mainfrom
fix/test-docker-default-target-platform
Aug 18, 2026
Merged

frostebite merged 1 commit into
mainfrom
fix/test-docker-default-target-platform

Conversation

@frostebite

Copy link
Copy Markdown
Member

Root cause found via set -x tracing (#99) on a real CI failure: every Docker test run on unity-test-runner's thin-wrapper PR (#310) exited near-instantly with exit code 1 and zero log output, even though activation succeeded fine moments earlier in the same run.

Root cause

--docker defaulted targetPlatform to NoTarget, resolving to RunnerImageTag's base editor module — the same image activate/build's NoTarget path already uses successfully. But activation only needs the editor to launch and exit; running tests needs it to actually compile and execute test assemblies, which base apparently can't do (no Unity log output was ever written at all, meaning it failed before even initializing far enough to open the log file).

unity-test-runner's own original ImageTag never defaulted to NoTarget — it defaulted to this host's native Standalone target (getImagePlatformType: StandaloneLinux64 on Linux, StandaloneWindows on Windows), which resolves to the linux-il2cpp module for Unity 2020+. Matching that default here instead.

Also in this PR

  • Removes the temporary set -x tracing from runsteps.sh (debug: trace runsteps.sh execution to diagnose a real CI failure #99) now that it's served its purpose.
  • The default now reads from options.hostPlatform (already resolved per-invocation) rather than raw process.platform directly in executeDocker — was also just untestable, not only stylistic.

Testing

  • Full bun test ./src: 156 pass, 0 fail (updated one test's assertion from the old, wrong base expectation to the correct linux-il2cpp one).
  • bun build succeeds.
  • Will re-verify against a real Docker test run once this lands and a release is cut.

🤖 Generated with Claude Code

…run tests

Root cause found via set -x tracing (#99) on a real CI failure: every
Docker test run exited near-instantly with exit code 1 and zero log
output, even though activation succeeded fine moments earlier.

--docker defaulted targetPlatform to NoTarget, resolving to
RunnerImageTag's 'base' editor module - the same image activate/build's
NoTarget path already uses successfully. But activation only needs the
editor to launch and exit; running tests needs it to actually compile
and execute test assemblies, which 'base' apparently can't do (no
Unity log output was ever written, meaning it failed before even
initializing far enough to open the log file).

unity-test-runner's own original ImageTag never defaulted to NoTarget
at all - it defaulted to this host's *native* Standalone target
(getImagePlatformType: StandaloneLinux64 on Linux, StandaloneWindows
on Windows), which resolves to the linux-il2cpp module for Unity
2020+. Matching that default here instead.

Also removes the temporary set -x tracing from runsteps.sh (#99) now
that it's served its purpose and found the actual bug, and fixes the
default to read from `options.hostPlatform` (already resolved per-
invocation) rather than raw `process.platform`, which was also just
untestable rather than reading the actual runtime value.

Testing: full bun test suite 156 pass/0 fail (updated one test's
assertion from the old, wrong 'base' expectation to the new correct
linux-il2cpp one), bun build succeeds. Will re-verify against a real
Docker test run once this lands and a release is cut.
@coderabbitai

coderabbitai Bot commented Aug 18, 2026

Copy link
Copy Markdown

Important

  • 🔍 Trigger review

This repository does not receive automatic reviews because it has fewer than 10 stars.

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 3c68ced1-f7d8-4ee1-950e-1cf29651d111


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@frostebite
frostebite merged commit ac3c047 into main Aug 18, 2026
15 checks passed
@frostebite
frostebite deleted the fix/test-docker-default-target-platform branch August 18, 2026 20:42
frostebite added a commit that referenced this pull request Aug 18, 2026
#101 fixed the wrong default image (linux-il2cpp now pulled correctly,
confirmed in CI), but the Docker test run still fails the same way.
Need to see if it's the same symptom or a new one against the correct
image. Temporary - will remove once root-caused.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant