diff --git a/.github/workflows/maven-test.yml b/.github/workflows/maven-test.yml new file mode 100644 index 0000000..62808ee --- /dev/null +++ b/.github/workflows/maven-test.yml @@ -0,0 +1,22 @@ +name: Java CI with Maven + +on: + push: + branches: [ "**" ] + +jobs: + test: + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v4 + + - name: Set up JDK 25 + uses: actions/setup-java@v4 + with: + java-version: '25' + distribution: 'temurin' + cache: maven + + - name: Run Maven Tests + run: mvn clean test diff --git a/Dockerfile b/Dockerfile index 1de43d8..f38323a 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,5 +1,5 @@ # Stage 1: Extract Spring Boot layers -FROM eclipse-temurin:17-jre-alpine as builder +FROM eclipse-temurin:25-jre-alpine as builder WORKDIR /builder # Expect the built jar file to be in the target directory ARG JAR_FILE=target/*.jar @@ -8,7 +8,7 @@ COPY ${JAR_FILE} application.jar RUN java -Djarmode=layertools -jar application.jar extract # Stage 2: Create the optimized production image -FROM eclipse-temurin:17-jre-alpine +FROM eclipse-temurin:25-jre-alpine WORKDIR /application # Best Practice: Run as a non-root user for security diff --git a/pom.xml b/pom.xml index 9f3b213..a375d5b 100644 --- a/pom.xml +++ b/pom.xml @@ -5,7 +5,7 @@ org.springframework.boot spring-boot-starter-parent - 3.2.3 + 3.5.14 org.lock14 @@ -15,7 +15,7 @@ Demo project for Angular + Spring Boot - 17 + 25 v12.13.1 1.5.5.Final