From fdc2cbb1939697e7d9a220ac76dbb18e0b97ca44 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 30 Apr 2026 19:00:39 +0000 Subject: [PATCH 1/4] Extract Spring tests into separate GitHub Action with JVM 17, 21, 25, 26 Agent-Logs-Url: https://github.com/kubernetes-client/java/sessions/b2966337-ec6d-44c0-a872-161cd06f39ca Co-authored-by: brendandburns <5751682+brendandburns@users.noreply.github.com> --- .github/workflows/maven.yml | 3 ++- .github/workflows/spring.yml | 46 ++++++++++++++++++++++++++++++++++++ 2 files changed, 48 insertions(+), 1 deletion(-) create mode 100644 .github/workflows/spring.yml diff --git a/.github/workflows/maven.yml b/.github/workflows/maven.yml index 97521cdd5f..48c990051f 100644 --- a/.github/workflows/maven.yml +++ b/.github/workflows/maven.yml @@ -64,9 +64,10 @@ jobs: - name: Build with Maven shell: bash run: | + # spring and spring-aot are tested in a dedicated workflow (spring.yml) + MODS_OVERRIDES='-pl !spring,!spring-aot' if [ $(grep -E '^(8|11)\.' <<< '${{ matrix.java }}') ]; then # some module doesn't compile on java platform lower than 17, need to skip them by specifying a profile - MODS_OVERRIDES='-pl !spring,!spring-aot' EXCLUDED_EXAMPLE_MODULES=`ls examples | grep examples | xargs -I {} echo '!examples/{}' | tr '\n' ',' | sed 's/.$//'` MODS_OVERRIDES=$MODS_OVERRIDES,$EXCLUDED_EXAMPLE_MODULES fi diff --git a/.github/workflows/spring.yml b/.github/workflows/spring.yml new file mode 100644 index 0000000000..d1f481e88a --- /dev/null +++ b/.github/workflows/spring.yml @@ -0,0 +1,46 @@ +# This workflow runs Spring module tests across multiple JVM versions +name: spring + +on: + push: + branches: [ "master", "master-java8", "release-**" ] + paths: + - 'spring/**' + - 'spring-aot/**' + - '**/pom.xml' + - '.mvn/**' + - 'mvnw' + - 'mvnw.cmd' + - '.github/workflows/spring.yml' + pull_request: + branches: [ "master", "master-java8", "release-**" ] + paths: + - 'spring/**' + - 'spring-aot/**' + - '**/pom.xml' + - '.mvn/**' + - 'mvnw' + - 'mvnw.cmd' + - '.github/workflows/spring.yml' + +jobs: + spring-tests: + name: Spring Tests on Java ${{ matrix.java }} + strategy: + matrix: + java: [ 17, 21, 25, 26 ] + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6 + - name: Setup Java + uses: actions/setup-java@be666c2fcd27ec809703dec50e508c2fdc7f6654 # v5 + with: + distribution: 'temurin' + java-version: ${{ matrix.java }} + - name: Cache local Maven repository + uses: actions/cache@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5 + with: + path: ~/.m2/repository + key: ${{ runner.os }}-maven-spring-${{ matrix.java }}-${{ hashFiles('pom.xml', '**/pom.xml') }} + - name: Build Spring modules with Maven + run: ./mvnw -q -B --define=org.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn -pl spring,spring-aot -am clean test From 20cded584e496212e51b6998e00d3e4e7eb124e1 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 30 Apr 2026 20:11:21 +0000 Subject: [PATCH 2/4] Exclude spring/** and spring-aot/** paths from maven.yml trigger Agent-Logs-Url: https://github.com/kubernetes-client/java/sessions/fd74cf44-6033-4e71-9ff7-74e6fdc7696a Co-authored-by: brendandburns <5751682+brendandburns@users.noreply.github.com> --- .github/workflows/maven.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/maven.yml b/.github/workflows/maven.yml index 48c990051f..eebf6058bc 100644 --- a/.github/workflows/maven.yml +++ b/.github/workflows/maven.yml @@ -16,6 +16,8 @@ on: - 'client-java-contrib/Dockerfile' - 'e2e/**/*.yaml' - '.github/workflows/maven.yml' + - '!spring/**' + - '!spring-aot/**' pull_request: branches: [ "master", "master-java8", "release-**" ] paths: @@ -28,6 +30,8 @@ on: - 'client-java-contrib/Dockerfile' - 'e2e/**/*.yaml' - '.github/workflows/maven.yml' + - '!spring/**' + - '!spring-aot/**' jobs: verify-format: From 731aacd8e667673d29f2fce2e69eb10e844ac789 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 30 Apr 2026 21:07:56 +0000 Subject: [PATCH 3/4] Also exclude examples/examples-release-latest from general build (depends on spring) Agent-Logs-Url: https://github.com/kubernetes-client/java/sessions/e113ac4b-edcb-4203-8fb4-643c8f72c0ee Co-authored-by: brendandburns <5751682+brendandburns@users.noreply.github.com> --- .github/workflows/maven.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/maven.yml b/.github/workflows/maven.yml index eebf6058bc..ed003267de 100644 --- a/.github/workflows/maven.yml +++ b/.github/workflows/maven.yml @@ -69,7 +69,8 @@ jobs: shell: bash run: | # spring and spring-aot are tested in a dedicated workflow (spring.yml) - MODS_OVERRIDES='-pl !spring,!spring-aot' + # examples/examples-release-latest depends on spring so must also be excluded + MODS_OVERRIDES='-pl !spring,!spring-aot,!examples/examples-release-latest' if [ $(grep -E '^(8|11)\.' <<< '${{ matrix.java }}') ]; then # some module doesn't compile on java platform lower than 17, need to skip them by specifying a profile EXCLUDED_EXAMPLE_MODULES=`ls examples | grep examples | xargs -I {} echo '!examples/{}' | tr '\n' ',' | sed 's/.$//'` From 7c72df5741ae1e9c658b50b6618a7f3cf7c64f62 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Fri, 1 May 2026 15:24:04 +0000 Subject: [PATCH 4/4] Update Spring Boot to 3.5.3 and Spring Framework to 6.2.8 Agent-Logs-Url: https://github.com/kubernetes-client/java/sessions/1b4aa191-ad5d-4e12-89af-e50ece7b9e09 Co-authored-by: brendandburns <5751682+brendandburns@users.noreply.github.com> --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index 901208a4ee..d57459d93c 100644 --- a/pom.xml +++ b/pom.xml @@ -69,8 +69,8 @@ 1.28.0 2.22.0 1.22.0 - 4.0.6 - 6.2.12 + 3.5.3 + 6.2.8 0.16.0 0.10.2