adityamparikh opened a new pull request, #173:
URL: https://github.com/apache/solr-mcp/pull/173

   # Summary
   
   The two `native Docker image + integration` jobs in `native.yml` fail on 
every branch and PR (e.g. [PR #159's 
run](https://github.com/apache/solr-mcp/actions/runs/29925649186)) with:
   
   ```
   ContainerFetchException: Can't get Docker image: 
RemoteDockerImage(imageName=solr-mcp:1.0.0-SNAPSHOT, ...)
   ```
   
   The Paketo native build tags its image `solr-mcp:<version>-native-stdio` / 
`-native-http`, but all three Docker integration tests resolve the plain 
`solr-mcp:<version>` tag, which the native path never produces. The MCP stdio 
protocol test's `docker run` subprocess exits immediately on the missing image, 
surfacing as a 20s `initialize()` timeout instead.
   
   # Root cause
   
   PR #139 removed the caller-side `+ 
System.getProperty("solr.mcp.docker.image.tag.suffix")` concatenation from the 
three test classes on the premise that `BuildInfoReader.getDockerImageName()` 
"already appends the same system property internally" — but it never did (it 
was just `String.format("%s:%s", artifact, version)`). The suffix stopped being 
applied at all, even though `build.gradle.kts` still sets 
`solr.mcp.docker.image.tag.suffix` for `dockerIntegrationTest -Pnative` and the 
test Javadoc still documents it as applied.
   
   # Changes
   
   - `BuildInfoReader.getDockerImageName()` now appends the 
`solr.mcp.docker.image.tag.suffix` system property (default `""`), so the 
suffix is applied exactly once, matching #139's documented intent. The JVM 
(Jib) path is unchanged: the property is unset there, so the tag stays 
`solr-mcp:<version>`.
   - Add the containerization tests and `BuildInfoReader` to `native.yml`'s 
trigger paths so future changes to the native validation suite re-run the 
native matrix.
   
   # Verification (local, macOS arm64)
   
   - `./gradlew spotlessCheck build` passes (unit + integration tests; the JVM 
path resolves the same tag as before).
   - End-to-end with companion PR https://github.com/apache/solr-mcp/pull/172 
applied: `bootBuildImage -Pnative` + `dockerIntegrationTest -Pnative` → tests 
resolve `solr-mcp:1.0.0-SNAPSHOT-native-stdio` and pass: 
`DockerImageMcpClientStdioIntegrationTest` (39 tests, full MCP JSON-RPC 
workflow) and `DockerImageStdioIntegrationTest` (4 tests). The http leg as 
well: `dockerIntegrationTest -Pnative -Pprofile=http` → 
`DockerImageHttpIntegrationTest` (6 tests) passes against 
`solr-mcp:1.0.0-SNAPSHOT-native-http`.
   
   # Merge order
   
   This fixes the *image resolution* failure. With the tag fixed, the docker 
tests reach the actual native binary — which then needs the 
`DefaultMetaProvider` reflection hint from companion PR 
https://github.com/apache/solr-mcp/pull/172 (the `resourceSpecs` bean is part 
of the real application context). Suggest merging the companion first, then 
this PR turns the native matrix fully green.
   
   🤖 Generated with [Claude Code](https://claude.com/claude-code)
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to