From 8d74e9550e969c1c6294b31f2edf0863aa207205 Mon Sep 17 00:00:00 2001 From: petruki <31597636+petruki@users.noreply.github.com> Date: Sun, 28 Sep 2025 13:46:30 -0700 Subject: [PATCH 1/4] Migrated to Java 25 LTS --- .devcontainer/Dockerfile | 7 ++++++- .github/workflows/master.yml | 4 ++-- .github/workflows/re-release.yml | 4 ++-- .github/workflows/release.yml | 4 ++-- .github/workflows/sonar.yml | 4 ++-- Dockerfile | 4 ++-- Dockerfile.native | 2 +- pom.xml | 8 ++++---- 8 files changed, 21 insertions(+), 16 deletions(-) diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile index a563e55..4329c90 100644 --- a/.devcontainer/Dockerfile +++ b/.devcontainer/Dockerfile @@ -5,6 +5,7 @@ ARG USERNAME=vscode ARG USER_UID=1000 ARG USER_GID=$USER_UID +ARG JAVA_VERSION="25" ARG INSTALL_MAVEN="true" ARG MAVEN_VERSION="3.9.11" ARG INSTALL_GRADLE="false" @@ -23,7 +24,11 @@ RUN apt-get update \ RUN if [ "${INSTALL_MAVEN}" = "true" ]; then \ su vscode -c "umask 0002 && . /usr/local/sdkman/bin/sdkman-init.sh && sdk install maven \"${MAVEN_VERSION}\""; fi \ && if [ "${INSTALL_GRADLE}" = "true" ]; then \ - su vscode -c "umask 0002 && . /usr/local/sdkman/bin/sdkman-init.sh && sdk install gradle \"${GRADLE_VERSION}\""; fi + su vscode -c "umask 0002 && . /usr/local/sdkman/bin/sdkman-init.sh && sdk install gradle \"${GRADLE_VERSION}\""; fi \ + && su vscode -c "umask 0002 && . /usr/local/sdkman/bin/sdkman-init.sh && sdk install java \"${JAVA_VERSION}\"" \ + && su vscode -c "umask 0002 && . /usr/local/sdkman/bin/sdkman-init.sh && sdk default java \"${JAVA_VERSION}\"" \ + && su vscode -c "umask 0002 && . /usr/local/sdkman/bin/sdkman-init.sh && sdk flush archives" \ + && su vscode -c "umask 0002 && . /usr/local/sdkman/bin/sdkman-init.sh && sdk flush temp" # set up a nicer prompt RUN git clone https://github.com/magicmonty/bash-git-prompt.git ~/.bash-git-prompt --depth=1 diff --git a/.github/workflows/master.yml b/.github/workflows/master.yml index 8f35cfb..b42a610 100644 --- a/.github/workflows/master.yml +++ b/.github/workflows/master.yml @@ -17,10 +17,10 @@ jobs: with: fetch-depth: 0 - - name: Set up JDK 21 + - name: Set up JDK 25 uses: actions/setup-java@v5 with: - java-version: 21 + java-version: 25 distribution: 'temurin' cache: maven diff --git a/.github/workflows/re-release.yml b/.github/workflows/re-release.yml index fd9f27a..2c1989a 100644 --- a/.github/workflows/re-release.yml +++ b/.github/workflows/re-release.yml @@ -20,10 +20,10 @@ jobs: fetch-depth: 0 ref: ${{ github.event.inputs.tag }} - - name: Set up JDK 21 + - name: Set up JDK 25 uses: actions/setup-java@v5 with: - java-version: 21 + java-version: 25 distribution: 'temurin' cache: maven diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 50770d2..4b6a2c3 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -11,10 +11,10 @@ jobs: steps: - uses: actions/checkout@v5 - - name: Set up JDK 21 + - name: Set up JDK 25 uses: actions/setup-java@v5 with: - java-version: 21 + java-version: 25 distribution: 'temurin' cache: maven diff --git a/.github/workflows/sonar.yml b/.github/workflows/sonar.yml index f90d81b..b19ff76 100644 --- a/.github/workflows/sonar.yml +++ b/.github/workflows/sonar.yml @@ -33,10 +33,10 @@ jobs: ref: ${{ steps.pr.outputs.head_sha }} fetch-depth: 0 - - name: Set up JDK 21 + - name: Set up JDK 25 uses: actions/setup-java@v5 with: - java-version: 21 + java-version: 25 distribution: 'temurin' cache: maven diff --git a/Dockerfile b/Dockerfile index 7b76aa7..7c2c6f0 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,10 +1,10 @@ -FROM maven:3.9.11-eclipse-temurin-21-alpine AS maven +FROM maven:3.9.11-eclipse-temurin-25-alpine AS maven WORKDIR /usr/src/app COPY . /usr/src/app RUN mvn package -DskipTests -FROM eclipse-temurin:21-jre-alpine AS builder +FROM eclipse-temurin:25-jre-alpine AS builder ARG JAR_FILE=/usr/src/app/target/*.jar COPY --from=maven ${JAR_FILE} app.jar diff --git a/Dockerfile.native b/Dockerfile.native index 84f7d94..72341b3 100644 --- a/Dockerfile.native +++ b/Dockerfile.native @@ -1,4 +1,4 @@ -FROM ghcr.io/graalvm/graalvm-community:24.0.2 AS build +FROM ghcr.io/graalvm/graalvm-community:25.0.0 AS build ARG MAVEN_VERSION=3.9.11 ARG MAVEN_BINARY=https://dlcdn.apache.org/maven/maven-3/${MAVEN_VERSION}/binaries/apache-maven-${MAVEN_VERSION}-bin.tar.gz diff --git a/pom.xml b/pom.xml index 7356ea5..710d736 100644 --- a/pom.xml +++ b/pom.xml @@ -54,7 +54,7 @@ - 21 + 25 ${java.version} ${java.version} @@ -70,10 +70,10 @@ 3.7.11 - 0.11.0 - 3.14.0 + 0.11.1 + 3.14.1 3.5.4 - 5.1.0.4751 + 5.2.0.4988 0.8.13 From 987632bf09b004e42dead5653b2bee75e8042439 Mon Sep 17 00:00:00 2001 From: petruki <31597636+petruki@users.noreply.github.com> Date: Sun, 28 Sep 2025 13:58:12 -0700 Subject: [PATCH 2/4] chore: patched SONAR_TOKEN --- .github/workflows/master.yml | 2 +- .github/workflows/sonar.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/master.yml b/.github/workflows/master.yml index b42a610..6f2f1ce 100644 --- a/.github/workflows/master.yml +++ b/.github/workflows/master.yml @@ -28,7 +28,7 @@ jobs: env: SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} if: env.SONAR_TOKEN != '' - run: mvn -B clean verify -Pcoverage,sonar -Dsonar.token=${{ secrets.SONAR_TOKEN }} + run: mvn -B clean verify -Pcoverage,sonar -Dsonar.token=$SONAR_TOKEN docker: name: Publish Docker Image diff --git a/.github/workflows/sonar.yml b/.github/workflows/sonar.yml index b19ff76..62c0299 100644 --- a/.github/workflows/sonar.yml +++ b/.github/workflows/sonar.yml @@ -46,7 +46,7 @@ jobs: if: env.SONAR_TOKEN != '' run: | mvn -B clean verify -Pcoverage,sonar \ - -Dsonar.token=${{ secrets.SONAR_TOKEN }} \ + -Dsonar.token=$SONAR_TOKEN \ -Dsonar.pullrequest.key=${{ inputs.pr_id }} \ -Dsonar.pullrequest.branch=${{ steps.pr.outputs.head_ref }} \ -Dsonar.pullrequest.base=${{ steps.pr.outputs.base_ref }} \ No newline at end of file From 35b77e47ce789d1de81ab7ee811b117899c96f67 Mon Sep 17 00:00:00 2001 From: petruki <31597636+petruki@users.noreply.github.com> Date: Sun, 28 Sep 2025 14:04:43 -0700 Subject: [PATCH 3/4] chore: patched PR_ID at sonar workflow --- .github/workflows/sonar.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/sonar.yml b/.github/workflows/sonar.yml index 62c0299..3ae0b26 100644 --- a/.github/workflows/sonar.yml +++ b/.github/workflows/sonar.yml @@ -43,10 +43,11 @@ jobs: - name: Build/Test & SonarCloud Scan env: SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} + PR_ID: ${{ inputs.pr_id }} if: env.SONAR_TOKEN != '' run: | mvn -B clean verify -Pcoverage,sonar \ -Dsonar.token=$SONAR_TOKEN \ - -Dsonar.pullrequest.key=${{ inputs.pr_id }} \ + -Dsonar.pullrequest.key=$PR_ID \ -Dsonar.pullrequest.branch=${{ steps.pr.outputs.head_ref }} \ -Dsonar.pullrequest.base=${{ steps.pr.outputs.base_ref }} \ No newline at end of file From 7b9f8c6054c051b7e9cb26fdde417fbbcc23a00a Mon Sep 17 00:00:00 2001 From: petruki <31597636+petruki@users.noreply.github.com> Date: Sun, 28 Sep 2025 14:52:05 -0700 Subject: [PATCH 4/4] chore: updated dev container to use Java 25 temurin --- .devcontainer/Dockerfile | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile index 4329c90..6ad15a9 100644 --- a/.devcontainer/Dockerfile +++ b/.devcontainer/Dockerfile @@ -5,7 +5,7 @@ ARG USERNAME=vscode ARG USER_UID=1000 ARG USER_GID=$USER_UID -ARG JAVA_VERSION="25" +ARG JAVA_VERSION="25-tem" ARG INSTALL_MAVEN="true" ARG MAVEN_VERSION="3.9.11" ARG INSTALL_GRADLE="false" @@ -13,7 +13,7 @@ ARG GRADLE_VERSION="" # Configure apt and install packages RUN apt-get update \ - && apt-get -y install --no-install-recommends dialog 2>&1 \ + && apt-get -y install --no-install-recommends dialog 2>&1 \ # Verify git and needed tools are installed && apt-get -y install git iproute2 procps \ # Clean up @@ -21,14 +21,13 @@ RUN apt-get update \ && apt-get clean -y \ && rm -rf /var/lib/apt/lists/* -RUN if [ "${INSTALL_MAVEN}" = "true" ]; then \ - su vscode -c "umask 0002 && . /usr/local/sdkman/bin/sdkman-init.sh && sdk install maven \"${MAVEN_VERSION}\""; fi \ - && if [ "${INSTALL_GRADLE}" = "true" ]; then \ - su vscode -c "umask 0002 && . /usr/local/sdkman/bin/sdkman-init.sh && sdk install gradle \"${GRADLE_VERSION}\""; fi \ - && su vscode -c "umask 0002 && . /usr/local/sdkman/bin/sdkman-init.sh && sdk install java \"${JAVA_VERSION}\"" \ - && su vscode -c "umask 0002 && . /usr/local/sdkman/bin/sdkman-init.sh && sdk default java \"${JAVA_VERSION}\"" \ - && su vscode -c "umask 0002 && . /usr/local/sdkman/bin/sdkman-init.sh && sdk flush archives" \ - && su vscode -c "umask 0002 && . /usr/local/sdkman/bin/sdkman-init.sh && sdk flush temp" +RUN su vscode -c "umask 0002 && . /usr/local/sdkman/bin/sdkman-init.sh && \ + if [ \"${INSTALL_MAVEN}\" = \"true\" ]; then sdk install maven \"${MAVEN_VERSION}\"; fi && \ + if [ \"${INSTALL_GRADLE}\" = \"true\" ]; then sdk install gradle \"${GRADLE_VERSION}\"; fi && \ + sdk install java \"${JAVA_VERSION}\" && \ + sdk default java \"${JAVA_VERSION}\" && \ + sdk flush archives && \ + sdk flush temp" # set up a nicer prompt RUN git clone https://github.com/magicmonty/bash-git-prompt.git ~/.bash-git-prompt --depth=1