This is an automated email from the ASF dual-hosted git repository.

sergehuber pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/unomi.git


The following commit(s) were added to refs/heads/master by this push:
     new 24b3641f8 UNOMI-966: Upgrade remaining setup-java actions to v5 and 
speed up CI workflows (#829)
24b3641f8 is described below

commit 24b3641f8deefba82921d8a3ad0229caa9ae4513
Author: Serge Huber <[email protected]>
AuthorDate: Sat Jul 18 08:13:44 2026 +0200

    UNOMI-966: Upgrade remaining setup-java actions to v5 and speed up CI 
workflows (#829)
    
    Co-authored-by: Claude Fable 5 <[email protected]>
---
 .github/workflows/codeql-analysis-java.yml       | 17 ++++++++++++--
 .github/workflows/codeql-analysis-javascript.yml |  5 ++++
 .github/workflows/unomi-ci-build-tests.yml       | 15 ++++++++++++
 .github/workflows/unomi-ci-docs-deploy.yml       | 30 ++++++++++++++++++------
 .github/workflows/unomi-ci-docs.yml              | 13 +++++++++-
 5 files changed, 70 insertions(+), 10 deletions(-)

diff --git a/.github/workflows/codeql-analysis-java.yml 
b/.github/workflows/codeql-analysis-java.yml
index 0043657b8..7429ef98f 100644
--- a/.github/workflows/codeql-analysis-java.yml
+++ b/.github/workflows/codeql-analysis-java.yml
@@ -24,6 +24,11 @@ on:
 env:
   DEVELOCITY_ACCESS_KEY: ${{ secrets.DEVELOCITY_ACCESS_KEY }}
 
+# Cancel superseded runs on the same PR, but never cancel master/scheduled runs
+concurrency:
+  group: ${{ github.workflow }}-${{ github.ref }}
+  cancel-in-progress: ${{ github.event_name == 'pull_request' }}
+
 jobs:
   analyze:
     name: Analyze
@@ -44,11 +49,19 @@ jobs:
         # queries: ./path/to/local/query, your-org/your-repo/queries@main
 
     - name: Set up JDK 17
-      uses: actions/setup-java@v1
+      uses: actions/setup-java@v5
       with:
-        java-version: 17
+        distribution: 'temurin'
+        java-version: '17'
+        cache: 'maven'
     - run: mvn -U -ntp -e clean install -DskipTests
 
+    # Keep only third-party dependencies in the post-job Maven cache: Unomi's 
own
+    # snapshots are rebuilt every run and would only bloat the cache / risk 
staleness
+    - name: Clean Unomi artifacts from Maven cache
+      if: always()
+      run: rm -rf ~/.m2/repository/org/apache/unomi
+
     - name: Perform CodeQL Analysis
       uses: github/codeql-action/analyze@v3
       with:
diff --git a/.github/workflows/codeql-analysis-javascript.yml 
b/.github/workflows/codeql-analysis-javascript.yml
index 50d7ad3df..b1b055cc7 100644
--- a/.github/workflows/codeql-analysis-javascript.yml
+++ b/.github/workflows/codeql-analysis-javascript.yml
@@ -21,6 +21,11 @@ on:
   schedule:
     - cron: '38 1 * * 0'
 
+# Cancel superseded runs on the same PR, but never cancel master/scheduled runs
+concurrency:
+  group: ${{ github.workflow }}-${{ github.ref }}
+  cancel-in-progress: ${{ github.event_name == 'pull_request' }}
+
 jobs:
   analyze:
     name: Analyze
diff --git a/.github/workflows/unomi-ci-build-tests.yml 
b/.github/workflows/unomi-ci-build-tests.yml
index 109ef1433..076ab448e 100644
--- a/.github/workflows/unomi-ci-build-tests.yml
+++ b/.github/workflows/unomi-ci-build-tests.yml
@@ -12,6 +12,11 @@ on:
 env:
   DEVELOCITY_ACCESS_KEY: ${{ secrets.DEVELOCITY_ACCESS_KEY }}
 
+# Cancel superseded runs on the same PR, but never cancel master runs
+concurrency:
+  group: ${{ github.workflow }}-${{ github.ref }}
+  cancel-in-progress: ${{ github.event_name == 'pull_request' }}
+
 jobs:
   unit-tests:
     name: Execute unit tests
@@ -32,6 +37,11 @@ jobs:
         dot -V
     - name: Build and Unit tests
       run: ./build.sh --ci
+    # Keep only third-party dependencies in the post-job Maven cache: Unomi's 
own
+    # snapshots are rebuilt every run and would only bloat the cache / risk 
staleness
+    - name: Clean Unomi artifacts from Maven cache
+      if: always()
+      run: rm -rf ~/.m2/repository/org/apache/unomi
 
   integration-tests:
     name: Execute integration tests
@@ -70,6 +80,11 @@ jobs:
           else
             ./build.sh --ci --integration-tests
           fi
+      # Keep only third-party dependencies in the post-job Maven cache: 
Unomi's own
+      # snapshots are rebuilt every run and would only bloat the cache / risk 
staleness
+      - name: Clean Unomi artifacts from Maven cache
+        if: always()
+        run: rm -rf ~/.m2/repository/org/apache/unomi
       - name: Archive IT memory metrics
         uses: actions/upload-artifact@v6
         if: always()
diff --git a/.github/workflows/unomi-ci-docs-deploy.yml 
b/.github/workflows/unomi-ci-docs-deploy.yml
index 039ab45bc..f53bc44fd 100644
--- a/.github/workflows/unomi-ci-docs-deploy.yml
+++ b/.github/workflows/unomi-ci-docs-deploy.yml
@@ -10,6 +10,11 @@ on:
 env:
   DEVELOCITY_ACCESS_KEY: ${{ secrets.DEVELOCITY_ACCESS_KEY }}
 
+# Serialize deploys from consecutive master pushes; never cancel a publish 
mid-run
+concurrency:
+  group: ${{ github.workflow }}
+  cancel-in-progress: false
+
 jobs:
   publish-docs-and-snapshots:
     name: Publish Javadoc and snapshots
@@ -17,9 +22,11 @@ jobs:
     steps:
       - uses: actions/checkout@v5
       - name: Set up JDK 17
-        uses: actions/setup-java@v1
+        uses: actions/setup-java@v5
         with:
-          java-version: 17
+          distribution: 'temurin'
+          java-version: '17'
+          cache: 'maven'
           server-id: apache.snapshots.https
           server-username: NEXUS_USER
           server-password: NEXUS_PW
@@ -35,6 +42,11 @@ jobs:
         env:
           NEXUS_USER: ${{ secrets.NEXUS_USER }}
           NEXUS_PW: ${{ secrets.NEXUS_PW }}
+      # Keep only third-party dependencies in the post-job Maven cache: 
Unomi's own
+      # snapshots are rebuilt every run and would only bloat the cache / risk 
staleness
+      - name: Clean Unomi artifacts from Maven cache
+        if: always()
+        run: rm -rf ~/.m2/repository/org/apache/unomi
 
   publish-docker-image:
     name: Push Docker image snapshot
@@ -42,11 +54,15 @@ jobs:
     steps:
       - uses: actions/checkout@v5
       - name: Set up JDK 17
-        uses: actions/setup-java@v1
+        uses: actions/setup-java@v5
         with:
-          java-version: 17
-          server-id: apache.snapshots.https
-          server-username: NEXUS_USER
-          server-password: NEXUS_PW
+          distribution: 'temurin'
+          java-version: '17'
+          cache: 'maven'
       - name: Building & pushing Docker snapshot image
         run: mvn -ntp clean install -P docker; pushd docker; mvn 
-Ddocker.username=${{ secrets.DOCKERHUB_USER }} -Ddocker.password=${{ 
secrets.DOCKERHUB_TOKEN }} docker:push; popd
+      # Keep only third-party dependencies in the post-job Maven cache: 
Unomi's own
+      # snapshots are rebuilt every run and would only bloat the cache / risk 
staleness
+      - name: Clean Unomi artifacts from Maven cache
+        if: always()
+        run: rm -rf ~/.m2/repository/org/apache/unomi
diff --git a/.github/workflows/unomi-ci-docs.yml 
b/.github/workflows/unomi-ci-docs.yml
index 01ff8833c..3fe290880 100644
--- a/.github/workflows/unomi-ci-docs.yml
+++ b/.github/workflows/unomi-ci-docs.yml
@@ -9,6 +9,11 @@ on:
       - 'manual/**'
       - '.github/workflows/unomi-ci-docs.yml'
 
+# Cancel superseded runs on the same PR, but never cancel master runs
+concurrency:
+  group: ${{ github.workflow }}-${{ github.ref }}
+  cancel-in-progress: ${{ github.event_name == 'pull_request' }}
+
 jobs:
   build-docs:
     name: Build Documentation
@@ -33,7 +38,13 @@ jobs:
         run: |
           cd manual
           mvn -U -ntp clean install
-      
+
+      # Keep only third-party dependencies in the post-job Maven cache: 
Unomi's own
+      # snapshots are rebuilt every run and would only bloat the cache / risk 
staleness
+      - name: Clean Unomi artifacts from Maven cache
+        if: always()
+        run: rm -rf ~/.m2/repository/org/apache/unomi
+
       - name: Archive documentation
         uses: actions/upload-artifact@v6
         with:

Reply via email to