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

jbonofre pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/activemq.git


The following commit(s) were added to refs/heads/main by this push:
     new e3ab2d35a2 feat(ci): improve GitHub Actions workflows (#1773)
e3ab2d35a2 is described below

commit e3ab2d35a2697823a0b8c5f07437064d4104b788
Author: JB Onofré <[email protected]>
AuthorDate: Sat Mar 14 22:15:35 2026 +0100

    feat(ci): improve GitHub Actions workflows (#1773)
---
 .github/workflows/ci-nightly.yml | 13 +++++++++++--
 .github/workflows/ci-quick.yml   | 11 +++++++++++
 .github/workflows/ci-weekly.yml  |  6 ++++++
 .github/workflows/deploy.yml     |  9 ++++++++-
 .github/workflows/stale.yml      | 12 ++++++------
 5 files changed, 42 insertions(+), 9 deletions(-)

diff --git a/.github/workflows/ci-nightly.yml b/.github/workflows/ci-nightly.yml
index bdaf9741c5..18c5ce2c81 100644
--- a/.github/workflows/ci-nightly.yml
+++ b/.github/workflows/ci-nightly.yml
@@ -22,7 +22,7 @@
 # This build is also used to validate the build on various os (Ubuntu, 
Windows, MacOS) and various Java versions (17, 21, 25)
 # on a regular basis to make sure we catch any issue that may be introduced by 
a change in the build or in the dependencies.
 #
-name: CI Nightly
+name: CI Periodic
 
 on:
   schedule:
@@ -30,14 +30,18 @@ on:
 
 jobs:
   build:
+    name: build
 
     permissions:
       contents: read
 
+    timeout-minutes: 60
+
     strategy:
+      fail-fast: false
       matrix:
         os: [ ubuntu-24.04, ubuntu-22.04, macos-26, macos-15, windows-2025, 
windows-2022 ]
-        java-version: [ 17, 21 ]
+        java-version: [ 17, 21, 25 ]
 
     runs-on: ${{ matrix.os }}
 
@@ -48,6 +52,7 @@ jobs:
         with:
           java-version: ${{ matrix.java-version }}
           distribution: temurin
+          cache: 'maven'
       - name: Build
         run: mvn -U -B -e clean install -DskipTests
       - name: Verify
@@ -55,12 +60,15 @@ jobs:
 
   test:
     name: test
+    needs: build
 
     permissions:
       contents: read
       checks: write
       pull-requests: write
 
+    timeout-minutes: 120
+
     strategy:
       fail-fast: false
       matrix:
@@ -76,6 +84,7 @@ jobs:
         with:
           java-version: ${{ matrix.java-version }}
           distribution: temurin
+          cache: 'maven'
       - name: Test
         shell: bash
         run: mvn -B -e -fae verify -Pactivemq.tests-quick 
-Dsurefire.rerunFailingTestsCount=3
diff --git a/.github/workflows/ci-quick.yml b/.github/workflows/ci-quick.yml
index ec5c1e75ce..096330cd6b 100644
--- a/.github/workflows/ci-quick.yml
+++ b/.github/workflows/ci-quick.yml
@@ -29,6 +29,10 @@ on:
   pull_request:
     branches: [ "main", "activemq-6.1.x", "activemq-5.19.x" ]
 
+concurrency:
+  group: ${{ github.workflow }}-${{ github.ref }}
+  cancel-in-progress: true
+
 jobs:
   build:
     name: build
@@ -36,6 +40,8 @@ jobs:
     permissions:
       contents: read
 
+    timeout-minutes: 60
+
     strategy:
       matrix:
         os: [ ubuntu-24.04, macos-26, windows-2025 ]
@@ -50,6 +56,7 @@ jobs:
         with:
           java-version: ${{ matrix.java-version }}
           distribution: temurin
+          cache: 'maven'
       - name: Build
         run: mvn -U -B -e clean install -DskipTests
       - name: Verify
@@ -57,12 +64,15 @@ jobs:
 
   test:
     name: test
+    needs: build
 
     permissions:
       contents: read
       checks: write
       pull-requests: write
 
+    timeout-minutes: 180
+
     runs-on: ubuntu-24.04
 
     steps:
@@ -72,6 +82,7 @@ jobs:
         with:
           java-version: 17
           distribution: temurin
+          cache: 'maven'
       - name: Test
         run: mvn -B -e -fae verify -Pactivemq.tests-quick
       - name: Upload Test Results
diff --git a/.github/workflows/ci-weekly.yml b/.github/workflows/ci-weekly.yml
index 220e6ac705..c0269b20a9 100644
--- a/.github/workflows/ci-weekly.yml
+++ b/.github/workflows/ci-weekly.yml
@@ -33,7 +33,10 @@ jobs:
     permissions:
       contents: read
 
+    timeout-minutes: 60
+
     strategy:
+      fail-fast: false
       matrix:
         os: [ ubuntu-24.04, macos-26, windows-2025 ]
         java-version: [ 17, 21, 25 ]
@@ -47,6 +50,7 @@ jobs:
         with:
           java-version: ${{ matrix.java-version }}
           distribution: temurin
+          cache: 'maven'
       - name: Build
         run: mvn -U -B -e clean install -DskipTests
       - name: Verify
@@ -54,6 +58,7 @@ jobs:
 
   test:
     name: test
+    needs: build
 
     permissions:
       contents: read
@@ -70,6 +75,7 @@ jobs:
         with:
           java-version: 17
           distribution: temurin
+          cache: 'maven'
       - name: Test
         run: mvn -B -e -fae verify -Dsurefire.rerunFailingTestsCount=3
       - name: Upload Test Results
diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml
index 253277c6c9..7953365704 100644
--- a/.github/workflows/deploy.yml
+++ b/.github/workflows/deploy.yml
@@ -23,20 +23,27 @@ on:
   schedule:
     - cron: '0 0 * * *'
 
+concurrency:
+  group: deploy
+  cancel-in-progress: true
+
 jobs:
   deploy:
 
     permissions:
       contents: read
 
+    timeout-minutes: 60
+
     runs-on: ubuntu-24.04
 
     steps:
       - uses: actions/checkout@v4
-      - name: Set up JDK 
+      - name: Set up JDK
         uses: actions/setup-java@v4
         with:
           java-version: 17
           distribution: temurin
+          cache: 'maven'
       - name: Deploy
         run: mvn -B -e deploy -Pdeploy -DskipTests
diff --git a/.github/workflows/stale.yml b/.github/workflows/stale.yml
index eb5566478f..4537b3f209 100644
--- a/.github/workflows/stale.yml
+++ b/.github/workflows/stale.yml
@@ -22,6 +22,10 @@ on:
   schedule:
     - cron: "30 1 * * *"
 
+permissions:
+  issues: write
+  pull-requests: write
+
 jobs:
   stale:
     if: github.repository == 'apache/activemq'
@@ -33,9 +37,5 @@ jobs:
           days-before-issue-close: -1
           days-before-pr-stale: 60
           days-before-pr-close: 5
-          stale-issue-message: "This issue is stale because it has been open 
30 days with no activity. Remove stale label or comment if you think it's still 
relevant."
-          stale-pr-message: "This PR is stale because it has been open 30 days 
with no activity. Remove stale label or comment or this will be closed in 5 
days."
-
-permissions:
-  issues: write
-  pull-requests: write
+          stale-issue-message: "This issue is stale because it has been open 
60 days with no activity. Remove stale label or comment if you think it's still 
relevant."
+          stale-pr-message: "This PR is stale because it has been open 60 days 
with no activity. Remove stale label or comment or this will be closed in 5 
days."


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
For further information, visit: https://activemq.apache.org/contact


Reply via email to