Stabilize Molecule verification and RPM install workflow#712
Stabilize Molecule verification and RPM install workflow#712beri04 wants to merge 15 commits intojenkinsci:masterfrom
Conversation
|
@MarkEWaite @lemeurherve All checks of Jenkins has done successfully. |
The changes in the pull request are not current with the upstream master branch. You need to merge those changes into this pull request, then I'll need to replay the build of the pull request with your modified Jenkinsfile. If you have a remote named This complication is because the pull request was submitted from your master branch instead of being submitted from a new branch based on the master branch. That's one of the reasons that the pull request template has a checkbox to confirm that a new branch is being used for the pull request changes. |
|
The GitHub UI offered an update button, so I pressed it. I'll reply the job with the new changes to the Jenkinsfile. |
|
I've labeled it as |
There was a problem hiding this comment.
Why the new lines in this file?
Is it required for your fix? If not, can you restore the original file please?
There was a problem hiding this comment.
Thanks for catching that. The changes in molecule.yml were not intentional, they were caused by upstream merge whitespace differences.
I've now restored the file to match upstream exactly.
|
Run 4 is the replay on ci.jenkins.io |
Jenkinsfile
Outdated
| sh 'make package && python3 -m pytest bin --junitxml target/junit.xml' | ||
| sh ''' | ||
| make package && python3 -m pytest bin --junitxml target/junit.xml | ||
| mkdir -p /var/tmp/target/rpm |
There was a problem hiding this comment.
Why using the /var/tmp directory? It does not look like a standard Linux location.
There was a problem hiding this comment.
Good point — there’s no strong reason to use /var/tmp here, i am changing to jenkins workspace to follow standard ci-conventions and avoid hard-coded filesystem paths.
| - ansible_distribution_major_version | int >= 42 | ||
|
|
||
| # Install Temurin 17 JRE for Fedora 42+ | ||
| - name: Install Temurin 17 JRE for Fedora 42+ |
There was a problem hiding this comment.
Why reverting the JDK major version from 21 (before) to 17?
There was a problem hiding this comment.
Jenkins currently supports Java 17 as the required LTS runtime, java 21 is not yet a supported runtime for Jenkins, so installing temurin 21 on fedora 42+ would be inconsistent with jenkins supported java versions.
((Once Jenkins officially supports Java 21, this can be revisited.))
There was a problem hiding this comment.
The Java support policy for Jenkins shows that Jenkins has supported Java 21 since November 2023. We've just dropped support for Java 17 in Jenkins weekly and will drop support for Java 17 in Jenkins LTS in April 2026.
dduportal
left a comment
There was a problem hiding this comment.
Even when reading #536 body, I'm not sure to understand all the problems tackled by this change.
Could you update the PR body to explain what is / are the issues you are trying to solve please?
Also blocking this PR: could you explain the logic behind (creating/)using the /var/tmp/target directory in the pipeline?
An absolute path does not seem to be a portable way in a CI or dev environment. But I might be missing something in the setup maybe?
I would have expected molecule to use Docker container for testing each test case, so the absolute path would make sense inside these ephemeral containers. But not from the outer host (e.g. the agent). Did I miss something?
|
Hello @beri04 , before continuing spending time on the PR, can you open an issue to describe the problem you would want to solve please? |
|
Thanks for the guidance. I’ve opened an issue to describe the problem and proposed direction: I’ll wait for feedback there before continuing work on this PR. |
This PR reintroduces the changes from #536 with the corrected Jenkinsfile.
The previous PR was reverted because the Molecule preparation stage was placed
outside of any node block, which breaks the Jenkins pipeline.
Fixes included:
nodeWithTimeout(POD_LABEL) block.
This version should run without causing Jenkinsfile validation errors.