-
-
Notifications
You must be signed in to change notification settings - Fork 317
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
Added inital hook to allow both docker/podman and sudo/runas/"" #5460
Conversation
3f147e2
to
3d81b27
Compare
This looks ready for review. I do not claim it is feature completed, but seems to work. Especially the 0b4a57a troubles me The cleanup of images loks broken (but afaik was also before):
but only:
around |
1978660
to
9d0e1bb
Compare
b8ad5d1
to
37ea18a
Compare
Ok, the network issue was casued by jdk itself. (wrong jdk with symlik to cacerts). This PR is thus feature compelted and works fine |
external/external.sh
Outdated
if [[ ${test} == 'external_custom' ]]; then | ||
test="$(echo ${EXTERNAL_CUSTOM_REPO} | awk -F'/' '{print $NF}' | sed 's/.git//g')" | ||
fi | ||
if [ "${EXTERNAL_AQA_CLEAN}" == "false" ] ; then |
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.
what is the default of EXTERNAL_AQA_CLEAN? How would it be changed?
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.
It is the variable I introduced. If y oou have any better idea I would happily use it.
The makefiles are calling the clean at the end, and I it is very often undesired to lost the results. I have not found a better way how to propagate the "dont clean" to the makefiles (which are calling this script).
One other way led to several if statemnts around calling of the external.sh. The direct variable seemed better. I had also wrote it to the header and readme.
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.
It can be changed as any other env. variable.
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.
For tkg story env variable has to be visible and set by build.xml. See other env variables in build.xml
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.
This is not running in container. This is the part which is launching the contianer (just to ensure we are bothj in same page).
This variable is not set nowhere. It is up to user of build.xml to slightly modify the behaviour. You do not want to run the runs we clean off. You want to run clean on. However for debugging, it was of immense help, to disallow make _target
to clean after itself pretty often.
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.
Yes, I understand it's the part of launching the container. Take /lucene-solr for example, after the test run the image is cleaned by $(TEST_ROOT)$(D)external$(D)external.sh --clean --tag "${DOCKERIMAGE_TAG}" --dir lucene-solr. My question is how the variable EXTERNAL_AQA_CLEAN be set and visible to make _lucene_solr_nightly_smoketest? To support If EXTERNAL_AQA_CLEAN is false, then the image is not cleaned
I think more changes are needed. Maybe you can separate that from this PR.
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.
something like this:
EXTERNAL_AQA_CLEAN=false make _lucene_solr_nightly_smoketest
or
EXTERNAL_AQA_CLEAN=false make _jacoco_test
works perfectly fine. Aka the final images are not clean after the run. Very good thing is, that they are cleared on next startup anyway.
If this is kept, I can then
podman run --privileged -v /usr/lib/jvm/java-11-openjdk-11.0.19.0.7-1.fc37.portable.jdk.x86_64/:/opt/java/openjdk --name jacoco-test --rm -i --entrypoint /bin/bash adoptopenjdk-jacoco-test:11-jdk-ubuntu-hotspot-full
or
podman run --privileged -v /usr/lib/jvm/java-11-openjdk-11.0.19.0.7-1.fc37.portable.jdk.x86_64/:/opt/java/openjdk --name lucene-solr-test --rm -i --entrypoint /bin/bash adoptopenjdk-lucene-solr-test:11-jdk-ubuntu-hotspot-full
Moreover out of the box, and immediately debug without any more interventions.
Thanx!
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 see. EXTERNAL_AQA_CLEAN=false make _lucene_solr_nightly_smoketest
won't work for jenkins story without other changes. It will work locally and seems mainly needed for debug. Suggest update docs.
[exec] INFO: podman build --no-cache -t adoptopenjdk-lucene-solr-test:11-jdk-ubuntu-hotspot-full -f /home/jvanek/git/jvmtest/external/lucene-solr/dockerfile/11/jdk/ubuntu/Dockerfile.hotspot.full /home/jvanek/git/jvmtest/external/ [exec] ##################################################### [exec] STEP 1/21: FROM eclipse-temurin:11-jdk [exec] Error: creating build container: short-name resolution enforced but cannot prompt without a TTY Which needs to resolve. The docker.io/library is already ised in external/external.sh: docker_image_name="docker.io/library/eclipse-temurin:${JDK_VERSION}-jdk"
d143223
to
373dfb8
Compare
3509c55
to
726ac87
Compare
java_tool_options moved to separate PR - #5498 - Thanx for that! |
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.
Based on the discussion EXTERNAL_AQA_CLEAN --> EXTERNAL_IMAGE_CLEAN might be better. But will leave to @judovana to make decision.
Yes please, I will do the change. Do not merge yet. |
Renamed. Thanx! |
Gosh fixed. Sorry. |
I didi it as whole to have one single commit. |
I do not see any Grinder jobs using this branch. We should launch a few to verify this PR. |
Right you are! here you go: https://ci.adoptium.net/view/Test_grinder/job/Grinder/10755/console that is my branch, on ubuntu. failed https://ci.adoptium.net/view/Test_grinder/job/Grinder/10756/console is master, on rhel7 (faield also with my branch:( ) There is (in both!) |
WIll rerun grinder |
This is initial shot on, moreover following lesson learned in https://github.com/adoptium/temurin-build/pull/3796/files and https://github.com/adoptium/temurin-build/pull/3869/files
Before proceeding with ore tuning, wdyt?