ci: Fix Spring Boot matrix version updates (#5372)
* ci: Fix Spring Boot matrix version updates Match the TOML version catalog format when overriding Spring Boot versions in matrix jobs. Preserve whitespace around the assignment and replace the quoted version value so the CI jobs actually test the requested matrix version. Co-Authored-By: Claude <noreply@anthropic.com> * ci: Limit Spring Boot matrix to supported versions The matrix jobs now actually update the version catalog. Remove Spring Boot versions that the current sample setup cannot build with the repository's Spring GraphQL integrations and Gradle version. Co-Authored-By: Claude <noreply@anthropic.com> * ci(spring): Restore Spring Boot matrix coverage Expand the Spring Boot 2 and 3 CI matrices to cover supported minor versions. Exclude GraphQL from Spring Boot 2 versions before 2.7 because the starter is unavailable there. Keep the Spring Boot 3 Gradle plugin pinned to a Gradle-compatible version while importing the tested Spring Boot BOM in samples, so the matrix exercises the intended runtime dependencies. Co-Authored-By: Claude <noreply@anthropic.com> * fix(spring): Avoid deprecated Reactor scheduler in sample Remove the explicit elastic scheduler from the Spring Boot WebFlux sample. Mono.delay already schedules the delayed work, and using Schedulers.elastic triggers deprecation warnings that fail CI under -Werror. Co-Authored-By: Claude <noreply@anthropic.com> * fix(spring): Exclude Kafka from old Boot 2 matrix Spring Kafka sample support depends on newer Spring Boot 2 dependency management. Exclude Kafka sources, profile startup, and system tests when the matrix runs Boot 2 versions before 2.7. Keep the system test classpath aligned with the SDK test helpers by importing the OkHttp and Jackson BOMs after the tested Spring Boot BOMs. Co-Authored-By: Claude <noreply@anthropic.com> * fix(spring): Support older Reactor WebFlux APIs Spring Boot 2.1 and 2.2 use Reactor versions without Mono.doFirst or Schedulers.onScheduleHook. Avoid those calls in the Boot 2 WebFlux integration so old matrix jobs can start and serve requests. Co-Authored-By: Claude <noreply@anthropic.com> * ci(spring): Skip OTel no-agent sample on old Boot 2 Spring Boot 2.1 and 2.2 cannot parse newer OpenTelemetry auto-configuration classes during startup. Keep the matrix coverage for supported samples and skip the no-agent OTel sample for those versions. Co-Authored-By: Claude <noreply@anthropic.com> * ci(spring): Drop old Boot 2 matrix versions Remove Spring Boot 2.1 and 2.2 from the matrix instead of carrying WebFlux compatibility changes for their older Reactor and Spring APIs. Restore the WebFlux filter implementation now that those versions are no longer tested. Co-Authored-By: Claude <noreply@anthropic.com> * fix(spring): Restore WebFlux schedule hook registration Revert the compatibility guard for Reactor versions that are no longer covered by the Spring Boot matrix. Co-Authored-By: Claude <noreply@anthropic.com> * fix(spring): Support older Spring GraphQL options API Use the erased Consumer signature in the batch loader registry wrapper so the code compiles with both Spring GraphQL 1.2/1.3 and 1.4. Let the Spring Boot 3 Gradle plugin follow the tested matrix version instead of pinning it separately. Co-Authored-By: Claude <noreply@anthropic.com> * build: Remove redundant test source set config Gradle already includes src/test/java in the test source set by default. Remove explicit duplicate source set configuration from the Spring modules and samples touched by this PR. Co-Authored-By: Claude <noreply@anthropic.com> * style: Import Kotlin JVM target in Gradle scripts Use the JvmTarget import in Spring Gradle scripts touched by this PR instead of repeating the fully qualified class name. Co-Authored-By: Claude <noreply@anthropic.com> * ci: Fail when Spring Boot version update misses Use a replacement command that exits non-zero when the expected Spring Boot version entry is not found. This prevents matrix jobs from silently running against the wrong dependency version. Co-Authored-By: Claude <noreply@anthropic.com> --------- Co-authored-by: Claude <noreply@anthropic.com>
A
Alexander Dinauer committed
e5cd1c6063fb69b258319747582f627478860336
Parent: adad078
Committed by GitHub <noreply@github.com>
on 5/28/2026, 8:10:46 AM