adoptium / installer

Installer scripts for Eclipse Temurin binaries
Apache License 2.0
148 stars 75 forks source link

Enable rpm/deb testing of non-x64 Linux packages #375

Open sxa opened 2 years ago

sxa commented 2 years ago

At the moment we do not have the support for running TestContainers on non-x64 platforms. We should look at implementing something that allows us to run the installer testing on the other architectures which we support.

smlambert commented 2 years ago

The year ago now that we talked with the TestContainers folks, there was a way to add support for non-x64 platforms. Need to find the notes from that, something about changing Ryuk, but also its a year ago, and seems there are official updates that may help us: https://twitter.com/whichrich/status/1341730726270492672.

sxa commented 2 years ago

Yep, whether it's with "official" options (0bviously preferred if we can) or just something we knock up ourselves to do a basic install and java -version we should get something in place. Obviously not necessary for this first release as we can verify manually but has to be "on the list".

jerboaa commented 2 years ago

Once this gets enabled, those hard-coded values need to go: https://github.com/adoptium/installer/blob/4b1f0a26d14af0027d31047b1b257ec2d3b64c60/linuxNew/jdk/redhat/src/packageTest/java/packaging/RpmFiles.java#L37

E.g. via an environment variable ARCH or some such.

smlambert commented 2 years ago

related: https://github.com/testcontainers/moby-ryuk/pull/21

sophia-guo commented 2 years ago

Just a note some version may not be abled to add tests 1 . newly enabled sle12 https://github.com/adoptium/installer/pull/426/files

  1. probably will be enabled in a short time RHEL6 https://github.com/adoptium/installer/pull/412/files
karianna commented 2 years ago

For those watching, linuxNew has been renamed to linux

zdtsw commented 2 years ago

I did not know what already have this issue to catch the build and test for non-x64. some of these have been done in my PR which was trying to split the build into arch-wise

the part to remove hardcoded (System.getenv("PACKAGE") + "*.x86_64.rpm"); is included in the PR but to be able to really test on non-x64 , we need to have jenkins agents available first e.g env.NODE_LABEL_RPM = "dockerBuild&&linux&&x64" // RedHat + Suse need to update (replace x64 with ${ARCH} at the moment , we do not have node match dockerBuild&&linux&&s390x dockerBuild&&linux&&armv7hl

sxa commented 2 years ago

It shouldn't be using dockerBuild as that's exclusively for hosts configured to run the dynamically generated docker images we use for building the JDK. docker should be a suitable one to use instead:

https://ci.adoptopenjdk.net/label/docker&&linux&&(s390x||armv7l)/