From 41ddd104291159b305bf9d655fbe9898350f9e8c Mon Sep 17 00:00:00 2001 From: Alexey Kuznetsov Date: Wed, 1 Jul 2026 22:30:19 -0400 Subject: [PATCH 1/2] Relax arm64 CI jobs and align coverage with amd64 Make arm64 tests non-blocking on merge queue and master while collecting stability stats, and fix -PcheckCoverage setup to mirror the amd64 jobs. Co-Authored-By: Claude Opus 4.8 (1M context) --- .gitlab-ci.yml | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 87bcec4c412..f502070f906 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -754,10 +754,16 @@ muzzle-dep-report: # `ibm8`/`oracle8` have no arm64 images published upstream — never run them on arm64. - if: '$testJvm == "ibm8" || $testJvm == "oracle8"' when: never + # arm64 tests are newly introduced to the merge queue and master. Keep them + # non-blocking (allow_failure) for now so we can collect stability stats and + # fix flaky/failing jobs without blocking the whole team. Remove allow_failure + # once the arm64 suite is proven stable. - if: '$CI_COMMIT_BRANCH =~ /^mq-working-branch-/' when: on_success + allow_failure: true - if: '$CI_COMMIT_BRANCH == "master"' when: on_success + allow_failure: true - if: '$testJvm =~ $DEFAULT_TEST_JVMS' when: manual allow_failure: true @@ -924,6 +930,10 @@ test_base_arm64: CACHE_TYPE: "base" parallel: matrix: *test_matrix_4 + # run coverage only on JVM 8, mirroring the amd64 test_base job + script: + - if [ "$testJvm" == "8" ]; then export GRADLE_PARAMS="$GRADLE_PARAMS -PcheckCoverage"; fi + - !reference [.test_job_arm64, script] test_inst: extends: .test_job_with_test_agent @@ -1057,10 +1067,14 @@ test_debugger_arm64: extends: .test_job_arm64 variables: GRADLE_TARGET: ":debuggerTest" - GRADLE_PARAMS: "-PcheckCoverage" CACHE_TYPE: "base" parallel: matrix: *test_matrix + # avoid running coverage for semeru8, semeru11 and semeru17 as some tests are disabled and therefore cannot reach the + # expected coverage (ibm8/oracle8 never run on arm64) + script: + - if [[ "$testJvm" != "semeru8" && "$testJvm" != "semeru11" && "$testJvm" != "semeru17" ]]; then export GRADLE_PARAMS="$GRADLE_PARAMS -PcheckCoverage"; fi + - !reference [.test_job_arm64, script] test_smoke: extends: .test_job From 19745d8ef6926e8c494c4c0414fcba94a1922ae3 Mon Sep 17 00:00:00 2001 From: Alexey Kuznetsov Date: Wed, 1 Jul 2026 22:48:16 -0400 Subject: [PATCH 2/2] Enable non-default JVMs on demand. Co-Authored-By: Claude Opus 4.8 (1M context) --- .gitlab-ci.yml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index f502070f906..c089ef9fab2 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -764,6 +764,13 @@ muzzle-dep-report: - if: '$CI_COMMIT_BRANCH == "master"' when: on_success allow_failure: true + # Enable non-default JVMs on demand. + - if: '$NON_DEFAULT_JVMS == "true"' + when: on_success + allow_failure: true + - if: '$CI_COMMIT_MESSAGE =~ /\[ci: NON_DEFAULT_JVMS\]/' + when: on_success + allow_failure: true - if: '$testJvm =~ $DEFAULT_TEST_JVMS' when: manual allow_failure: true