Commits
Tarun Sukhani authored 6aab808b8fb
feat(plugin): honor PLAY_TEST_PORT in autotest port resolution
PlayAutotestTask.runAutotest() resolved the test port from -PhttpPort or
conf with no env-var path in between, so parallel autotest runs across
git worktrees (each rooted at the same %test.http.port=9100) collided —
the task's kill-step HTTP-POSTs /@kill to its target port before
spawning its own server, alternately murdering sibling worktrees' test
JVMs mid-run.
Insert PLAY_TEST_PORT (env > certs/.env) between the explicit
-PhttpPort override and the conf-derived value, so operators can pin a
per-worktree port without editing application.conf. Load certs/.env
once up front and reuse the same map for both Gradle-side port
resolution and the spawned subprocess's environment injection — same
map, two readers.
Resolution chain: httpPort.orNull > System.getenv("PLAY_TEST_PORT") >
dotenv["PLAY_TEST_PORT"] > conf %test.http.port > 9000.
Verified end-to-end: 4 parallel worktrees with distinct PLAY_TEST_PORT
values each bound their own port and ran the full 216-test suite
without /@kill cross-contamination (3 completed; 1 unrelated stall).
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>