SRE-3976 build: exclude leap 15.6 RPMs from build - #18903
Conversation
Signed-off-by: Tomasz Gromadzki <tomasz.gromadzki@hpe.com>
|
Errors are Unable to load ticket data |
|
Test stage NLT on EL 8.8 completed with status UNSTABLE. https://jenkins-3.daos.hpc.amslabs.hpecorp.net/job/daos-stack/job/daos//view/change-requests/job/PR-18903/1/testReport/ |
Signed-off-by: Tomasz Gromadzki <tomasz.gromadzki@hpe.com>
| # Leap 15.5 and Leap 15.6 DAOS packages can coexist in a single Artifactory | ||
| # repository path. During mock/dnf dependency resolution for a Leap 15.5 | ||
| # chroot, dnf may prefer newer *.suse.lp156* (Leap 15.6) package candidates. | ||
| # | ||
| # This leads to 15.5 builds pulling 15.6-built packages and their dependency | ||
| # chain (for example libpmemobj and related libraries). Those dependencies are | ||
| # not fully ABI-compatible across these releases, especially around libc/glibc: | ||
| # 15.6-built packages may require GLIBC_2.34 symbols, while Leap 15.5 provides | ||
| # glibc up to 2.31. | ||
| # | ||
| # The result can be dependency installation failures inside the Leap 15.5 root. | ||
| # Therefore we apply a chroot-level repository filter in mock dnf.conf (exclude | ||
| # *.suse.lp156*) instead of changing DAOS spec dependencies. |
There was a problem hiding this comment.
- Why "can" and "may" where we know all of these are just facts?
- mock/chroot are irrelevant in this conversation. The only important bits are the version of the Leap and the dnf configuration.
- IMHO too much about dependencies and dependencies chain. A packages requires glibc in version X.
- I do not understand what is this alternative "changing DAOS spec dependencies". We would have to specify exact "suse.leap15X" suffix to make it work. It does not seem as a viable solution.
Shorter, less bloated and to the point suggestion:
Leap 15.5 and Leap 15.6 DAOS packages COEXIST in a single Artifactory repository path. During dependency resolution for Leap 15.5, dnf prefers .suse.lp156 package candidates because string lp156 > lp155 from the string-comparison point of view.
This leads to 15.5 builds pulling 15.6-built packages where these packages are not compatible with the Leap 15.5 system e.g. 15.6-built packages require GLIBC_2.34 symbols, while Leap 15.5 provides glibc up to 2.31.
The result is an installation failure for Leap 15.5. Therefore we apply a repository filter in dnf.conf (exclude .suse.lp156).
| # This leads to 15.5 builds pulling 15.6-built packages and their dependency | ||
| # chain (for example libpmemobj and related libraries). Those dependencies are | ||
| # not fully ABI-compatible across these releases, especially around libc/glibc: | ||
| # 15.6-built packages may require GLIBC_2.34 symbols, while Leap 15.5 provides |
There was a problem hiding this comment.
Are you sure GLIBC_2.34 is the requirement? From what I see online it may be even 2.38.
There was a problem hiding this comment.
it is minimum requirement (at least)
Signed-off-by: Tomasz Gromadzki <tomasz.gromadzki@hpe.com>
|
Test stage NLT on EL 8.8 completed with status UNSTABLE. https://jenkins-3.daos.hpc.amslabs.hpecorp.net/job/daos-stack/job/daos//view/change-requests/job/PR-18903/3/testReport/ |
Steps for the author:
After all prior steps are complete: