This is an automated email from the ASF dual-hosted git repository. lhotari pushed a commit to branch branch-4.0 in repository https://gitbox.apache.org/repos/asf/pulsar.git
commit 37af4670109c6407596f9bf7960a6479846296ad 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/pulsar-ci-flaky.yaml | 4 +-- .github/workflows/pulsar-ci.yaml | 32 +++++++++++----------- build/run_unit_group.sh | 4 ++- .../offload/jcloud/impl/OffsetsCacheTest.java | 2 +- 9 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 5fbd85eb012..f4934a45acb 100644 --- a/.github/workflows/ci-go-functions.yaml +++ b/.github/workflows/ci-go-functions.yaml @@ -37,7 +37,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: @@ -72,7 +72,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 6b0310e4871..ac0f66e3837 100644 --- a/.github/workflows/ci-maven-cache-update.yaml +++ b/.github/workflows/ci-maven-cache-update.yaml @@ -59,7 +59,7 @@ jobs: matrix: include: - name: all modules - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 cache_name: 'm2-dependencies-all' mvn_arguments: '' @@ -68,7 +68,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/pulsar-ci-flaky.yaml b/.github/workflows/pulsar-ci-flaky.yaml index 9b867b1d595..cc2174d9312 100644 --- a/.github/workflows/pulsar-ci-flaky.yaml +++ b/.github/workflows/pulsar-ci-flaky.yaml @@ -86,7 +86,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 }} changed_tests: ${{ steps.changes.outputs.tests_files }} @@ -175,7 +175,7 @@ jobs: THREAD_LEAK_DETECTOR_DIR: ${{ github.workspace }}/target/thread-leak-dumps NETTY_LEAK_DETECTION: "${{ needs.preconditions.outputs.netty_leak_detection }}" NETTY_LEAK_DUMP_DIR: ${{ github.workspace }}/target/netty-leak-dumps - 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 ac568341dcf..3b192238eda 100644 --- a/.github/workflows/pulsar-ci.yaml +++ b/.github/workflows/pulsar-ci.yaml @@ -86,7 +86,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 }} changed_tests: ${{ steps.changes.outputs.tests_files }} @@ -168,7 +168,7 @@ jobs: JOB_NAME: Build and License check DEVELOCITY_ACCESS_KEY: ${{ secrets.DEVELOCITY_ACCESS_KEY }} CI_JDK_MAJOR_VERSION: ${{ needs.preconditions.outputs.jdk_major_version }} - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 timeout-minutes: 60 if: ${{ needs.preconditions.outputs.docs_only != 'true' }} steps: @@ -251,7 +251,7 @@ jobs: THREAD_LEAK_DETECTOR_DIR: ${{ github.workspace }}/target/thread-leak-dumps NETTY_LEAK_DETECTION: "${{ needs.preconditions.outputs.netty_leak_detection }}" NETTY_LEAK_DUMP_DIR: ${{ github.workspace }}/target/netty-leak-dumps - 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' }} @@ -406,7 +406,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'] env: @@ -488,7 +488,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'}} @@ -570,7 +570,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' }} @@ -773,7 +773,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' }} @@ -860,7 +860,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', @@ -884,7 +884,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' }} @@ -1008,7 +1008,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' }} @@ -1170,7 +1170,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' }} @@ -1258,7 +1258,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' }} @@ -1397,7 +1397,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', @@ -1458,7 +1458,7 @@ jobs: codeql: name: Run CodeQL Analysis - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 timeout-minutes: 60 needs: ['preconditions', 'unit-tests'] if: ${{ (needs.preconditions.outputs.java_non_tests == 'true' || github.event_name != 'pull_request') && ((github.event_name == 'pull_request' && github.base_ref == 'master') || (github.event_name != 'pull_request' && github.ref_name == 'master')) }} @@ -1523,7 +1523,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' }} @@ -1629,7 +1629,7 @@ jobs: # this is to allow the workflow scheduled jobs to show as cancelled instead of failed since scheduled # jobs are not enabled for other than apache/pulsar repository. if: ${{ always() && !(cancelled() && github.repository != 'apache/pulsar' && github.event_name == 'schedule') }} - 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 02347648b94..1e09eaf83b9 100755 --- a/build/run_unit_group.sh +++ b/build/run_unit_group.sh @@ -174,7 +174,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-docker-image,!org.apache.pulsar:pulsar-all-docker-image' \ -PskipTestsForUnitGroupOther -DdisableIoMainProfile=true -DskipIntegrationTests \ -Dexclude='**/ManagedLedgerTest.java, - **/OffloadersCacheTest.java + **/OffloadersCacheTest.java, + **/OffsetsCacheTest.java, **/PrimitiveSchemaTest.java, **/BlobStoreManagedLedgerOffloaderTest.java, **/BlobStoreManagedLedgerOffloaderStreamingTest.java' @@ -184,6 +185,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 083706ceb39..5eb11edf958 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(); }
