On Thu, 1 May 2025 22:46:00 GMT, Jiangli Zhou <jian...@openjdk.org> wrote:
> Please review this PR that adds a `test-linux-x64-static` job, which runs > tier1 tests on the static-jdk 'release' binary created from the > `linux-x64-static` build job in GHA. Following are the details on the changes: > > .github/actions/get-bundles/action.yml. > - Add `static-suffix` parameter. `static-suffix` is added to the bundle name. > - Add `static-jdk-path` output. > - Unpack static bundles in bundles/static-jdk. > > .github/actions/upload-bundles/action.yml > - Add `static-suffix` parameter. The `static-suffix` is added to the bundle > name. The `linux-x64-static` build job sets the parameter as "-static". In > other jobs, `static-suffix` not set. > > .github/workflows/build-linux.yml > - Pass `${{ inputs.static-suffix }}` to upload-bundles action, with the > `static-suffix` parameter. > > .github/workflows/main.yml > - Build `product-bundles test-bundles static-jdk-bundles` for > `linux-x64-static` job. > - Add `test-linux-x64-static` job. It currently tests on `release` binary and > not `debug` binary, since there are build issue with `debug` due to GHA > resource/space limit. > - Set `debug-suffix` for the existing non-static test jobs, which test on > `debug` binaries. > > .github/workflows/test.yml > - Add `debug-suffix` parameter and replace `debug-suffix: -debug` with > `debug-suffix: ${{ inputs.debug-suffix }}` in hs/tier1 tests in the test > matrix. The existing test jobs (on non-static JDK) set `debug-suffix` to > `-debug` to test on `debug` binaries. > - Add `static-suffix` parameter. Add `${{ inputs.static-suffix }}` to the > test result artifact name. > - Add `run-tests-static`. > - Add step for notifying test failures on static JDK. > > @shipilev Could you please help review this change? Thanks! .github/workflows/main.yml line 367: > 365: name: linux-x64-static > 366: needs: > 367: - build-linux-x64-static Just thinking out loud here, what if you also added ` build-linux-x64` to the `needs` list. I guess that would make sure the test bundle is built before trying to execute this. Then the trick will just be to get both the test bundle and the static-jdk bundle downloaded... .github/workflows/test.yml line 95: > 93: - test-name: 'hs/tier1 common' > 94: test-suite: 'test/hotspot/jtreg/:tier1_common' > 95: debug-suffix: ${{ inputs.debug-suffix }} I don't understand why these changes were needed? What are you doing with the debug suffix? .github/workflows/test.yml line 182: > 180: BOOT_JDK=${{ steps.bootjdk.outputs.path }} > 181: JDK_UNDER_TEST=${{ steps.bundles.outputs.static-jdk-path }} > 182: JDK_FOR_COMPILE=${{ steps.bundles.outputs.jdk-path }} Do we really need to duplicate all this code? From what I can see, this is just to be able to send in the JDK_FOR_COMPILE argument, right? ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/24992#discussion_r2073616222 PR Review Comment: https://git.openjdk.org/jdk/pull/24992#discussion_r2073618514 PR Review Comment: https://git.openjdk.org/jdk/pull/24992#discussion_r2073621919