Repository navigation
Conversation
|
@blueorangutan package |
|
@vishesh92 a [SL] Jenkins job has been kicked to build packages. It will be bundled with KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress. |
|
@blueorangutan package |
|
@weizhouapache a [SL] Jenkins job has been kicked to build packages. It will be bundled with KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress. |
|
Points to consider:
|
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## 4.22 #14418 +/- ##
=========================================
Coverage 18.03% 18.03%
- Complexity 16286 16289 +3
=========================================
Files 5937 5937
Lines 536771 536771
Branches 65782 65782
=========================================
+ Hits 96787 96797 +10
+ Misses 428932 428921 -11
- Partials 11052 11053 +1
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
|
Packaging result [SF]: ✔️ el8 ✔️ el9 ✔️ el10 ✖️ debian ✖️ suse15. SL-JID 19578 |
On distros that ship both (e.g. Ubuntu 24.04), a fresh install still pulls OpenJDK 17 since it's the first alternative, so existing setups see no change. OpenJDK 21 is only used when it's the only one available (Debian 13) or already installed.
I don't think we need to make any changes for this in the PR. |
|
@blueorangutan package |
|
@vishesh92 a [SL] Jenkins job has been kicked to build packages. It will be bundled with KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress. |
|
Packaging result [SF]: ✔️ el8 ✔️ el9 ✔️ el10 ✔️ debian ✖️ suse15. SL-JID 19583 |
wido
left a comment
There was a problem hiding this comment.
I reviewed this manually and then used Claude Fable to check and build the PR.
Built the PR head on Temurin JDK 21.0.12 with -P developer,systemvm -Dsimulator -DskipTests. All modules build, including the UI, apidocs and marvin. Unit tests of utils, framework/db, engine/orchestration and the KVM plugin also pass on JDK 21 (the one QemuImgTest error is a missing libvirt.so on my machine).
Package side: Debian 13 ships neither openjdk-17 nor python3-mysql.connector, so there Java 21 and PyMySQL are the only options. Ubuntu 26.04 still has openjdk-17 and python3-mysql.connector 9.5.0, so a fresh install there keeps running on 17.
The PyMySQL fallback is API compatible with how the three scripts use the connection: single statements, explicit commit, ping and fetchall.
One point, following up on Wei's remark about the build JDK. debian/rules does not set JAVA_HOME, so the build runs on whatever update-alternatives selects, not on the first Build-Depends alternative. On Ubuntu 26.04 default-jre-headless is openjdk-25 and maven lists it as its first alternative. If openjdk-25 ends up on the build host, the build fails in cloud-utils on aspectjweaver 1.8.13 (zip64 header rejected by JDK 24+). I hit this on my own 26.04 machine. It would be safer if build-deb.sh or debian/rules exported JAVA_HOME to the newest of java-21 or java-17 under /usr/lib/jvm when present. Fine as a follow-up.
Nit: the description only mentions Java 21, but half of the PR is the PyMySQL fallback. Worth a line in the description and ticking a box in the template.

Description
This PR adds support for java 21 in the debian packages for debian 13 & ubuntu 26.04
Types of changes
Feature/Enhancement Scale or Bug Severity
Feature/Enhancement Scale
Bug Severity
Screenshots (if appropriate):
How Has This Been Tested?
How did you try to break this feature and the system with this change?