fix(adapters): unhang KV container tests in CI - #214
Merged
07prajwal2000 merged 1 commit intoAug 7, 2026
Conversation
ensureImage() probed the daemon with getImage().inspect() before pulling. On the CI runner that call never settles, so redis/memcached beforeAll hung and the adapters job ran until the 6h ceiling. The db container tests always called pullImage() directly and never hung — KV now does the same. Also swaps redis for valkey and caps the adapters job at 15 minutes so a stalled docker call fails fast instead of burning a runner. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
test-packages-adaptershas been hanging indefinitely onmain— the last run sat in progress for over an hour with no redis or memcached test output at all, blocking every downstream job.The cause is
ensureImage(), added in d151956. It probes the daemon withdocker.getImage(x).inspect()before deciding whether to pull. That call never settles on the CI runner, so the redis/memcachedbeforeAllhung forever — which is why those tests never printed rather than failing.The db container tests (
mongo,mysql,postgres) were untouched by that commit, still callpullImage()directly, and have never hung. That's the tell.What
ensureImage(); KV tests callpullImage()directly, same as the db container tests. A pull against an image the daemon already has is a cheap no-op, so the probe bought nothing.redis:7.4-alpineforvalkey/valkey:8-alpine.test-packages-adaptersattimeout-minutes: 15so a stalled docker call fails fast instead of burning a runner for hours.Testing
Cold local run (images removed first): 6 pass, 0 fail across both KV files.
🤖 Generated with Claude Code