perf: cache system deps and npm packages in test workflow #31

Merged
elvis merged 2 commits from feat/test_improvements into main 2026-05-28 19:42:17 +00:00
Owner

Summary

  • Add Dockerfile.test with system dependencies (git, python3, make, g++) pre-installed, eliminating apt-get on every CI run
  • Build the test image with --cache-from so Docker layer cache on the NAS host is reused after the first run
  • Mount a named Docker volume (actual-mcp-npm-cache) for npm's cache directory, speeding up npm install on subsequent runs

Test plan

  • Trigger a PR — first run builds and warms the image + npm volume caches
  • Trigger a second PR — confirm apt-get step is gone, npm install is faster
  • Confirm tests still pass

🤖 Generated with Claude Code

## Summary - Add `Dockerfile.test` with system dependencies (`git`, `python3`, `make`, `g++`) pre-installed, eliminating `apt-get` on every CI run - Build the test image with `--cache-from` so Docker layer cache on the NAS host is reused after the first run - Mount a named Docker volume (`actual-mcp-npm-cache`) for npm's cache directory, speeding up `npm install` on subsequent runs ## Test plan - [ ] Trigger a PR — first run builds and warms the image + npm volume caches - [ ] Trigger a second PR — confirm `apt-get` step is gone, `npm install` is faster - [ ] Confirm tests still pass 🤖 Generated with [Claude Code](https://claude.com/claude-code)
perf: cache system deps and npm packages in test workflow
Some checks failed
Test / test (pull_request) Failing after 0s
9fac204b33
Build a custom test image with system deps pre-installed and mount a
named Docker volume for npm cache, eliminating apt-get on every run
and speeding up npm install via persistent cache on the NAS host.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
fix: inline Dockerfile content to avoid missing file on runner
All checks were successful
Test / test (pull_request) Successful in 7m41s
229dde7479
The runner has no checkout step, so Dockerfile.test was never present
on the filesystem when docker build ran. Pass the image definition via
stdin instead.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
elvis merged commit 3911e190d4 into main 2026-05-28 19:42:17 +00:00
elvis deleted branch feat/test_improvements 2026-05-28 19:42:17 +00:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
elvis/actual-mcp!31
No description provided.