-
-
Notifications
You must be signed in to change notification settings - Fork 301
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
Git-Maven demo: Switch to the jenkinsfile-runner:maven image pack #388
Conversation
@rsvoboda you are right, the image size is far from optimal. It is a "known issue" with a few references in the bugtracker (e.g. #226), but not all problems were referenced there. I have added analysis to jenkinsci/jenkinsfile-runner-image-packs#5 I also have some experiments for building native JFR images with Graal/Quarkus, but they will not be applicable to JDK-focused images event when finalized.
Yes, quite a lot. Some of them come from AdoptOpenJDK. Others come from https://github.com/jenkinsci/jenkinsfile-runner-image-packs/blob/main/maven/Dockerfile-jdk8 which is optimized for readability, not for the layers number. Layers number can be optimized in the future. Once the base images stabilize, I plan to start striping them properly. |
This is a part of the Declarative Pipeline. It gets converted to a scripted Pipeline form for execution in the Pipeline's DSL execution engine, basically to... try {
// build stage
...
} finally {
junit '**/TEST*.xml'
}
Right, it will not work as is. Vanilla package in this repository and have different plugins define. So
Yes, everything gets deleted after the execution. There are summaries printed to the build log though. Ways to export the data:
There is #67 for doing something more fancy (e.g. exporting reports as HTML), but I cannot provide ETA for it. |
Thanks for details. I got curious thanks to So I tried how this works, my naive part expected some reports copy to appear in current directory, my realistic me didn't expect anything to appear :) Can I get the list of plugins available in jenkinsfile-runner-image-packs docker file? It could be handy to have it listed in REDME or dedicated file (for example under https://github.com/jenkinsci/jenkinsfile-runner-image-packs/tree/main/maven). If the traditional Jenkins reporting plugins are for no real use in jenkinsfile-runner, they could be removed => size trimmed. |
Yes, the demo is largely work-in-progress, and the use-cases need to be implemented better. For my projects I'd rather use GitHub Checks API reporting once JUnit reports are supported there: https://www.jenkins.io/blog/2020/08/03/github-checks-api-plugin-coding-phase-2/ , but it is not a good option for demo purposes. GitHub App authentication needs to be configured there.
I hope it gets closer to naive expectations over time :)
There is even a TODO for it in the comments :) It is yet to be documented, but https://jenkinsci.github.io/maven-hpi-plugin/list-plugin-dependencies-mojo.html should work for all JFR images using JFR Packaging POM. It does not list transitive dependencies though... Output for the current image:
|
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.
LGTM, will merge the PR once the CI passes. I plan to cut a new release tonight. This and the previous PRs should go inside
Update git-maven to use jenkinsfile-runner:maven
Fixes #385
Hope it matches the expectation.
Few concerns:
Question:
What happens under the hood when I add:
post { always { junit '**/TEST*.xml' } }
?
In console log I see
Recording test results
when using docker way, withjava -jar
way I see error because of missing plugin.But what really happens with archived results, can I get them somewhere or they got deleted because everything runs in temporary directory?