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

   > Stacked on #198 (re-enable `OtlpExportIntegrationTest`); the first commit 
here is that PR's. Merge #198 first and this diff shrinks to the pinning commit.
   
   ### Summary
   Pins the Docker images the Testcontainers-based tests start to exact tags, 
declared once in `gradle/libs.versions.toml`:
   
   ```toml
   test-image-solr = "solr:9.9.0-slim"
   test-image-lgtm = "grafana/otel-lgtm:0.33.0"
   ```
   
   ### Why
   - The Solr default `solr:9.9-slim` was spelled out three times (twice in 
`build.gradle.kts`, once in `TestcontainersConfiguration`), and `9.9-slim` is a 
moving minor tag.
   - The LGTM image was `latest`. While re-enabling the OTLP suite in #198 I 
found the locally cached `latest` was 0.28.0 from May, whereas Docker Hub's 
`latest` had moved to 0.33.0 the day before. The same green run meant different 
images on different machines.
   
   ### How the pins reach the tests
   - `processTestResources` expands them into 
`src/test/resources/test-images.properties`, and the Gradle test tasks also 
forward them as `solr.test.image` / `lgtm.test.image` system properties.
   - A small `TestImages` resolver prefers a non-blank system property, so 
`./gradlew test -Dsolr.test.image=solr:9.4-slim` and the CI compatibility 
matrix keep working unchanged, and falls back to the expanded resource 
otherwise. The fallback keeps `@Container static` initialisers working where 
the properties are not forwarded, e.g. `processTestAot`.
   - The resource is added to the native test binary with `-H:IncludeResources`.
   - `TestImagesTest` fails the build if either pin is missing, floats on 
`latest`, or is not an exact release tag.
   
   Docs (`AGENTS.md`, `dev-docs/DEVELOPMENT.md`) now point at the catalog 
instead of quoting the tag.
   
   ### Bumping an image
   Edit the two catalog entries. Dependabot's `gradle` ecosystem cannot resolve 
Docker tags in the catalog, so these stay manual for now; a Renovate regex 
manager could automate them later if wanted.
   
   ### Verification
   - `./gradlew build` on Java 25: 407 tests, 0 failures, 0 skipped. 
`OtlpExportIntegrationTest` 7/7 against `grafana/otel-lgtm:0.33.0`.
   - `./gradlew nativeTest -Pnative` on GraalVM 25: 405 tests, 0 failures, 138 
skipped (the Mockito tests, as on `main`).
   
   🤖 Generated with [Claude Code](https://claude.com/claude-code)
   
   https://claude.ai/code/session_019zJ9WA8nNyA5Yxb8ueM7vV
   


-- 
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