This is an automated email from the ASF dual-hosted git repository.
lhotari pushed a commit to branch branch-3.0
in repository https://gitbox.apache.org/repos/asf/pulsar.git
The following commit(s) were added to refs/heads/branch-3.0 by this push:
new 655bf675828 [improve][ci] Upgrade GitHub Actions workflows to use
ubuntu-24.04 (#24841)
655bf675828 is described below
commit 655bf675828b7508a5abc52fe5b5272955fa3c34
Author: Lari Hotari <[email protected]>
AuthorDate: Mon Oct 13 22:12:37 2025 +0300
[improve][ci] Upgrade GitHub Actions workflows to use ubuntu-24.04 (#24841)
(cherry picked from commit 2233fa894149dcf2e49614bbbc4c6ee42a72fac8)
---
.github/workflows/ci-documentbot.yml | 2 +-
.github/workflows/ci-go-functions.yaml | 4 +--
.github/workflows/ci-maven-cache-update.yaml | 4 +--
.github/workflows/ci-owasp-dependency-check.yaml | 2 +-
.github/workflows/ci-pulsarbot.yaml | 2 +-
.github/workflows/ci-stale-issue-pr.yaml | 2 +-
.github/workflows/pulsar-ci-flaky.yaml | 4 +--
.github/workflows/pulsar-ci.yaml | 30 +++++++++++-----------
build/run_unit_group.sh | 4 ++-
.../offload/jcloud/impl/OffsetsCacheTest.java | 2 +-
10 files changed, 29 insertions(+), 27 deletions(-)
diff --git a/.github/workflows/ci-documentbot.yml
b/.github/workflows/ci-documentbot.yml
index 1006661b60d..98e86eb6a07 100644
--- a/.github/workflows/ci-documentbot.yml
+++ b/.github/workflows/ci-documentbot.yml
@@ -36,7 +36,7 @@ jobs:
if: (github.repository == 'apache/pulsar') &&
(github.event.pull_request.state == 'open')
permissions:
pull-requests: write
- runs-on: ubuntu-22.04
+ runs-on: ubuntu-24.04
steps:
- name: Labeling
uses: apache/pulsar-test-infra/docbot@master
diff --git a/.github/workflows/ci-go-functions.yaml
b/.github/workflows/ci-go-functions.yaml
index f8a10e455b4..97d476dfcdc 100644
--- a/.github/workflows/ci-go-functions.yaml
+++ b/.github/workflows/ci-go-functions.yaml
@@ -38,7 +38,7 @@ env:
jobs:
preconditions:
name: Preconditions
- runs-on: ubuntu-22.04
+ runs-on: ubuntu-24.04
outputs:
docs_only: ${{ steps.check_changes.outputs.docs_only }}
steps:
@@ -73,7 +73,7 @@ jobs:
needs: preconditions
if: ${{ needs.preconditions.outputs.docs_only != 'true' }}
name: Go ${{ matrix.go-version }} Functions style check
- runs-on: ubuntu-22.04
+ runs-on: ubuntu-24.04
strategy:
matrix:
go-version: ['1.23']
diff --git a/.github/workflows/ci-maven-cache-update.yaml
b/.github/workflows/ci-maven-cache-update.yaml
index e3451c87429..8be8091468e 100644
--- a/.github/workflows/ci-maven-cache-update.yaml
+++ b/.github/workflows/ci-maven-cache-update.yaml
@@ -58,7 +58,7 @@ jobs:
matrix:
include:
- name: all modules
- runs-on: ubuntu-22.04
+ runs-on: ubuntu-24.04
cache_name: 'm2-dependencies-all'
mvn_arguments: ''
@@ -67,7 +67,7 @@ jobs:
cache_name: 'm2-dependencies-all'
- name: core-modules
- runs-on: ubuntu-22.04
+ runs-on: ubuntu-24.04
cache_name: 'm2-dependencies-core-modules'
mvn_arguments: '-Pcore-modules,-main'
diff --git a/.github/workflows/ci-owasp-dependency-check.yaml
b/.github/workflows/ci-owasp-dependency-check.yaml
index 9f6c90d359d..ce24b7bb10c 100644
--- a/.github/workflows/ci-owasp-dependency-check.yaml
+++ b/.github/workflows/ci-owasp-dependency-check.yaml
@@ -35,7 +35,7 @@ jobs:
env:
JOB_NAME: Check ${{ matrix.branch }}
DEVELOCITY_ACCESS_KEY: ${{ secrets.DEVELOCITY_ACCESS_KEY }}
- runs-on: ubuntu-22.04
+ runs-on: ubuntu-24.04
timeout-minutes: 75
strategy:
fail-fast: false
diff --git a/.github/workflows/ci-pulsarbot.yaml
b/.github/workflows/ci-pulsarbot.yaml
index 4ea83404856..e0dabac1193 100644
--- a/.github/workflows/ci-pulsarbot.yaml
+++ b/.github/workflows/ci-pulsarbot.yaml
@@ -24,7 +24,7 @@ on:
jobs:
pulsarbot:
- runs-on: ubuntu-22.04
+ runs-on: ubuntu-24.04
timeout-minutes: 10
if: github.event_name == 'issue_comment' &&
contains(github.event.comment.body, '/pulsarbot')
steps:
diff --git a/.github/workflows/ci-stale-issue-pr.yaml
b/.github/workflows/ci-stale-issue-pr.yaml
index c4303f83a3a..af93aca623d 100644
--- a/.github/workflows/ci-stale-issue-pr.yaml
+++ b/.github/workflows/ci-stale-issue-pr.yaml
@@ -5,7 +5,7 @@ on:
jobs:
stale:
- runs-on: ubuntu-22.04
+ runs-on: ubuntu-24.04
steps:
- uses: actions/stale@v4
with:
diff --git a/.github/workflows/pulsar-ci-flaky.yaml
b/.github/workflows/pulsar-ci-flaky.yaml
index d3dfd2ebf4d..fd2f290c1c3 100644
--- a/.github/workflows/pulsar-ci-flaky.yaml
+++ b/.github/workflows/pulsar-ci-flaky.yaml
@@ -46,7 +46,7 @@ env:
jobs:
preconditions:
name: Preconditions
- runs-on: ubuntu-22.04
+ runs-on: ubuntu-24.04
if: (github.event_name != 'schedule') || (github.repository ==
'apache/pulsar')
outputs:
docs_only: ${{ steps.check_changes.outputs.docs_only }}
@@ -96,7 +96,7 @@ jobs:
JOB_NAME: Flaky tests suite
COLLECT_COVERAGE: "${{ needs.preconditions.outputs.collect_coverage }}"
DEVELOCITY_ACCESS_KEY: ${{ secrets.DEVELOCITY_ACCESS_KEY }}
- runs-on: ubuntu-22.04
+ runs-on: ubuntu-24.04
timeout-minutes: 100
if: ${{ needs.preconditions.outputs.docs_only != 'true' }}
steps:
diff --git a/.github/workflows/pulsar-ci.yaml b/.github/workflows/pulsar-ci.yaml
index a2ac42c2428..26d6d939d2f 100644
--- a/.github/workflows/pulsar-ci.yaml
+++ b/.github/workflows/pulsar-ci.yaml
@@ -46,7 +46,7 @@ env:
jobs:
preconditions:
name: Preconditions
- runs-on: ubuntu-22.04
+ runs-on: ubuntu-24.04
if: (github.event_name != 'schedule') || (github.repository ==
'apache/pulsar')
outputs:
docs_only: ${{ steps.check_changes.outputs.docs_only }}
@@ -97,7 +97,7 @@ jobs:
env:
JOB_NAME: Build and License check
DEVELOCITY_ACCESS_KEY: ${{ secrets.DEVELOCITY_ACCESS_KEY }}
- runs-on: ubuntu-22.04
+ runs-on: ubuntu-24.04
timeout-minutes: 60
if: ${{ needs.preconditions.outputs.docs_only != 'true' }}
steps:
@@ -173,7 +173,7 @@ jobs:
JOB_NAME: CI - Unit - ${{ matrix.name }}
COLLECT_COVERAGE: "${{ needs.preconditions.outputs.collect_coverage }}"
DEVELOCITY_ACCESS_KEY: ${{ secrets.DEVELOCITY_ACCESS_KEY }}
- runs-on: ubuntu-22.04
+ runs-on: ubuntu-24.04
timeout-minutes: ${{ matrix.timeout || 60 }}
needs: ['preconditions', 'build-and-license-check']
if: ${{ needs.preconditions.outputs.docs_only != 'true' }}
@@ -307,7 +307,7 @@ jobs:
unit-tests-upload-coverage:
name: CI - Unit - Upload Coverage
- runs-on: ubuntu-22.04
+ runs-on: ubuntu-24.04
timeout-minutes: 30
needs: ['preconditions', 'unit-tests']
if: ${{ needs.preconditions.outputs.collect_coverage == 'true' }}
@@ -387,7 +387,7 @@ jobs:
pulsar-java-test-image:
name: Build Pulsar java-test-image docker image
- runs-on: ubuntu-22.04
+ runs-on: ubuntu-24.04
timeout-minutes: 60
needs: ['preconditions', 'build-and-license-check']
if: ${{ needs.preconditions.outputs.docs_only != 'true'}}
@@ -459,7 +459,7 @@ jobs:
integration-tests:
name: CI - Integration - ${{ matrix.name }}
- runs-on: ubuntu-22.04
+ runs-on: ubuntu-24.04
timeout-minutes: ${{ matrix.timeout || 60 }}
needs: ['preconditions', 'pulsar-java-test-image']
if: ${{ needs.preconditions.outputs.docs_only != 'true' }}
@@ -621,7 +621,7 @@ jobs:
integration-tests-upload-coverage:
name: CI - Integration - Upload Coverage
- runs-on: ubuntu-22.04
+ runs-on: ubuntu-24.04
timeout-minutes: 30
needs: ['preconditions', 'integration-tests']
if: ${{ needs.preconditions.outputs.collect_coverage == 'true' }}
@@ -707,7 +707,7 @@ jobs:
delete-integration-test-docker-image-artifact:
name: "Delete integration test docker image artifact"
- runs-on: ubuntu-22.04
+ runs-on: ubuntu-24.04
timeout-minutes: 10
needs: [
'preconditions',
@@ -731,7 +731,7 @@ jobs:
pulsar-test-latest-version-image:
name: Build Pulsar docker image
- runs-on: ubuntu-22.04
+ runs-on: ubuntu-24.04
timeout-minutes: 60
needs: ['preconditions', 'build-and-license-check']
if: ${{ needs.preconditions.outputs.docs_only != 'true' }}
@@ -839,7 +839,7 @@ jobs:
system-tests:
name: CI - System - ${{ matrix.name }}
- runs-on: ubuntu-22.04
+ runs-on: ubuntu-24.04
timeout-minutes: 60
needs: ['preconditions', 'pulsar-test-latest-version-image']
if: ${{ needs.preconditions.outputs.docs_only != 'true' }}
@@ -984,7 +984,7 @@ jobs:
system-tests-upload-coverage:
name: CI - System - Upload Coverage
- runs-on: ubuntu-22.04
+ runs-on: ubuntu-24.04
timeout-minutes: 30
needs: ['preconditions', 'system-tests']
if: ${{ needs.preconditions.outputs.collect_coverage == 'true' }}
@@ -1071,7 +1071,7 @@ jobs:
flaky-system-tests:
name: CI Flaky - System - ${{ matrix.name }}
- runs-on: ubuntu-22.04
+ runs-on: ubuntu-24.04
timeout-minutes: 60
needs: [ 'preconditions', 'pulsar-test-latest-version-image' ]
if: ${{ needs.preconditions.outputs.docs_only != 'true' }}
@@ -1190,7 +1190,7 @@ jobs:
delete-system-test-docker-image-artifact:
name: "Delete system test docker image artifact"
- runs-on: ubuntu-22.04
+ runs-on: ubuntu-24.04
timeout-minutes: 10
needs: [
'preconditions',
@@ -1250,7 +1250,7 @@ jobs:
owasp-dep-check:
name: OWASP dependency check
- runs-on: ubuntu-22.04
+ runs-on: ubuntu-24.04
timeout-minutes: 120
needs: [ 'preconditions', 'integration-tests' ]
if: ${{ needs.preconditions.outputs.need_owasp == 'true' }}
@@ -1350,7 +1350,7 @@ jobs:
pulsar-ci-checks-completed:
name: "Pulsar CI checks completed"
if: ${{ always() && ((github.event_name != 'schedule') ||
(github.repository == 'apache/pulsar')) }}
- runs-on: ubuntu-22.04
+ runs-on: ubuntu-24.04
timeout-minutes: 10
needs: [
'preconditions',
diff --git a/build/run_unit_group.sh b/build/run_unit_group.sh
index 2d0e804b654..723653b2265 100755
--- a/build/run_unit_group.sh
+++ b/build/run_unit_group.sh
@@ -168,7 +168,8 @@ function test_group_other() {
-pl
'!org.apache.pulsar:distribution,!org.apache.pulsar:pulsar-offloader-distribution,!org.apache.pulsar:pulsar-server-distribution,!org.apache.pulsar:pulsar-io-distribution,!org.apache.pulsar:pulsar-all-docker-image'
\
-PskipTestsForUnitGroupOther -DdisableIoMainProfile=true
-DdisableSqlMainProfile=true -DskipIntegrationTests \
-Dexclude='**/ManagedLedgerTest.java,
- **/OffloadersCacheTest.java
+ **/OffloadersCacheTest.java,
+ **/OffsetsCacheTest.java,
**/PrimitiveSchemaTest.java,
**/BlobStoreManagedLedgerOffloaderTest.java,
**/BlobStoreManagedLedgerOffloaderStreamingTest.java'
@@ -178,6 +179,7 @@ function test_group_other() {
mvn_test -pl tiered-storage/jcloud
-Dinclude='**/BlobStoreManagedLedgerOffloaderTest.java'
mvn_test -pl tiered-storage/jcloud
-Dinclude='**/BlobStoreManagedLedgerOffloaderStreamingTest.java'
+ mvn_test -pl tiered-storage/jcloud -Dinclude='**/OffsetsCacheTest.java'
echo "::endgroup::"
local modules_with_quarantined_tests=$(git grep -l '@Test.*"quarantine"' |
grep '/src/test/java/' | \
diff --git
a/tiered-storage/jcloud/src/test/java/org/apache/bookkeeper/mledger/offload/jcloud/impl/OffsetsCacheTest.java
b/tiered-storage/jcloud/src/test/java/org/apache/bookkeeper/mledger/offload/jcloud/impl/OffsetsCacheTest.java
index 86a72c7b554..58f8b741aa9 100644
---
a/tiered-storage/jcloud/src/test/java/org/apache/bookkeeper/mledger/offload/jcloud/impl/OffsetsCacheTest.java
+++
b/tiered-storage/jcloud/src/test/java/org/apache/bookkeeper/mledger/offload/jcloud/impl/OffsetsCacheTest.java
@@ -38,7 +38,7 @@ public class OffsetsCacheTest {
// test ttl
offsetsCache.put(1, 2, 2);
assertEquals(offsetsCache.getIfPresent(1, 2), 2);
- Thread.sleep(1500);
+ Thread.sleep(2000);
assertNull(offsetsCache.getIfPresent(1, 2));
offsetsCache.close();
}