-
Notifications
You must be signed in to change notification settings - Fork 13
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
1 changed file
with
41 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,41 @@ | ||
# QUARKUS-2994 JDK 21 Support | ||
|
||
This document is a high level test plan for certification of Red Hat build of Quarkus on JDK 21. | ||
|
||
## Scope of the testing | ||
|
||
### Current test coverage | ||
* Regular CI runs in upstream include full testing for Java 21 (according to the announcement) | ||
* Daily runs on java 21 in GitHub Actions | ||
* Checks of code.quarkus in StartStop TS | ||
|
||
### Impact on test suites and testing automation | ||
* Temurin JVM 21 and OpenJDK 21 need to be added as JDKs to Quarkus QE Jenkins | ||
* Temurin JVM 21 and OpenJDK 21 have to be added as JVMs to Polarion | ||
* Bare metal jobs in extended platform testing need to be extended to run with both Temurin 21 and OpenJDK 21. | ||
* This affects JVM mode only. | ||
* Openshift JVm job needs to use OpenJDK 21 (together with existing 17) instead of OpenJDK 11 | ||
* We also should use s2i build image based on jdk 21 there | ||
* Two quickstart jobs (Linux and Windows) should be added/repurposed from 11 in general or extended pipeline | ||
|
||
### Impact on resources | ||
* Should not change (or be minimal), since for affected jobs we should drop testing on java 11, so consumed resource will stay the same. | ||
* In general support for JDK depends on number of used jobs. For basic product support, each run requires the following resources on Openstack: | ||
* Baremetal 3 combinations (podman, docker, fips) * 8 scenarios * `large`(8192 RAM + 4 vCPU) node | ||
* openshift two combinations (eus, stable) * `medium`(4096 RAM + 4 vCPU) node. | ||
* Each combination includes ~180 tests (running together for 40 minutes), each creates and deletes a dedicated Openshift namespace of unknown resource consumption | ||
* Quickstarts on RHEL: `large` jenkins node (see above) | ||
* Quickstarts on Windows: `medium` jenkins node and `m5zn.metal` amazon EC2 instance | ||
|
||
## Future considerations | ||
* Since updating JDKs require additional effort on both ours and infra team side, we may have to come up with setting up the JDK ourselves | ||
* If snapshot-local setup is used, testing snapshots have to be respun every time a release is made(but we do it every two weeks anyway) | ||
* If we install JDK as part of the testing job, this will make using matrix jobs very inconvenient | ||
|
||
## Contacts | ||
* Tester: Fedor Dudinsky <[email protected]> | ||
|
||
## References | ||
* Feature epic: [QUARKUS-2994 JDK 21 Support](https://issues.redhat.com/browse/QUARKUS-2994) | ||
* Temurin support TP: [QUARKUS-1936](QUARKUS-1936.md) | ||
* Upstream support announcement: https://quarkus.io/blog/quarkus-3-5-0-released/ |