-
-
Notifications
You must be signed in to change notification settings - Fork 101
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
UnixPb: Install x64 alpine bootjdks where available #2586
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think we're starting to support Alpine on Aarch64? Does this invalidate that?
It would depend if we're happy with a nightly going in as we haven't released a GA version on that platform yet for any version. |
@Haroon-Khel I think for now I still want to install the Zulu JDK8/11 (as a minimum) on aarch64 but I think this PR might be removing that. |
@Haroon-Khel FYI #2568 |
@Haroon-Khel will this not override JDK7_BOOT_DIR etc. on Alpine/aarch64 which will still have zulu boot JDK and won't have anything /usr/lib/jvm/jdk8 etc. for now? |
So now it should install temurin jdks 8 11 and 17 for both alpine x64 and aarch64 and leave the rest as zulu |
The code for installing the aarch64 is a bit messy as it uses a nightly link and not a release link. This is temporary until we have a ga aarch64 alpine linux binary |
I hope it's after the merge takes place 👀 My only concern just now is that I'm not convinced that the Temurin 11 alpine/aarch64 JDK is stable at the moment (If you look at https://ci.adoptopenjdk.net/job/build-scripts/job/jobs/job/jdk11u/job/jdk11u-alpine-linux-aarch64-temurin/ you can see that things are getting 'stuck' until they hit the 10 hours timeout) so I'm tempted to suggest leaving that one as zulu for now (or potentially installing both for 11) |
Yeah those links from jenkins will expire after a couple of builds as it takes up too much space on the jenkins server to retain them - even though it says |
I've changed the links for the aarch64 alpine jdk 8 11 and 17 binaries to links from our github/temurin*-binaries repos, so these shouldn't expire
The binary links that I've added for the aarch64 binaries do not get overridden do they? ie, the links in https://github.com/adoptium/temurin8-binaries/releases/tag/jdk8u-2022-05-28-05-51-beta do not get overridden by newer builds? If so then I do not see how the failing build job will impact the installation of the binary. Unless you mean that the failing build job causes you to lose confidence in the binary itself? |
This may be the case. I've pulled the latest adoptopenjdk/alpine3_build_image and the changes are not in place |
Correct
At the moment the Temurin 11 builds on Alpine/aarch64 build and publish but do not work correctly, so I don't want to rely on those builds as the boot JDK for building the nightlies of JDK11. At present we're using a non-Temurin build for the boot JDK, and if we install the Temurin one we're risking making it more unstable as it's known to have problems. (It probably needs to be tested to be honest - check whether running a build with zulu or Temurin as the boot JDK makes any difference to the build) |
I'll give this a try |
We have quite a few options now for bootstrapping JDK11 - There's the Alpine-supplied openjdk 11 package, a zulu one, or a Temurin nightly :-) |
@sxa After two attempts (first attempt hung), I got jdk11 to build on dockerhost-equinix-ubuntu2004-armv8-1, currently the only machine that builds jdk11 aarch64 alpine linux. I also got it to build on https://ci.adoptopenjdk.net/computer/docker-equinix-ubuntu2004-armv8-1/, and have now added the To summarise, I think the instability of the jdk11 aarch64 alpine linux build job is due to infra related issues on dockerhost-equinix-ubuntu2004-armv8-1. The timed out test jobs in adoptium/temurin-build#2961 also ran on that machine. Either way, I think using a temurin nightly as a bootjdk for the alpine images is fine |
Interesting ... Do you have Grinder runs from it running on the other machine? |
Good point. I've kicked off some grinders on the alp311 and 312 containers Sanity openjdk https://ci.adoptopenjdk.net/job/Grinder/4970/console Hoping they dont time out |
The tests look unstable even on the second machine. So I've returned jdk11 back to being installed from the alpine repos, but I have kept its link as /usr/lib/jvm/jdk-11 instead of zulu11 so that the links can be consistent on x64 and aarch64 |
ping @sxa for review |
I'm not quite sure what the linter is complaining about
|
Seems to be happening on other PRs too, so unlikely to be related to anything here. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think I'm ok with this now. Will aim to merge tomorrow (Don't want to do it before the nightly builds...
ref #2564
As far as I can see, the alpine jdk build jobs run the build on our alpine docker images, so I have updated what I think are the appropriate files. The alpine pr check will be the judge :)
I've kept some of the oddities, such as
JDK7_BOOT_DIR="/usr/lib/jvm/zulu8
despite being a jdk7 bootjdk I've kept it as a jdk8 binary.