Bug 2218720
| Summary: | switching ruby modules stream to 3.1 cause removing of pcs package | ||
|---|---|---|---|
| Product: | Red Hat Enterprise Linux 8 | Reporter: | William LEE <reli> |
| Component: | ruby | Assignee: | ruby maint <ruby-maint> |
| Status: | CLOSED NOTABUG | QA Contact: | RHEL CS Apps Subsystem QE <rhel-cs-apps-subsystem-qe> |
| Severity: | medium | Docs Contact: | |
| Priority: | medium | ||
| Version: | 8.8 | CC: | vondruch |
| Target Milestone: | rc | ||
| Target Release: | --- | ||
| Hardware: | x86_64 | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Fixed In Version: | Doc Type: | If docs needed, set a value | |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2023-06-30 08:40:15 UTC | Type: | Bug |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
| Embargoed: | |||
|
Description
William LEE
2023-06-30 02:08:04 UTC
In short, this behavior is expected unfortunately. Let me quote a note from the documentation you have linked above: "If certain installed packages depend on the earlier stream, and there is no compatible version in the later stream, yum reports a dependency conflict. In this case, use the --allowerasing option to remove such packages because they cannot be installed together with the later stream due to missing dependencies." In more detail, the pcs package is bare/plain RPM, build against default module, which is Ruby 2.5 in RHEL 8. In ideal world, as was imagined with introduction of modularity, the pcs would also be modular package and the modular expansion would ensure, that the pcs is build against all available Ruby modules. But as you can imagine, this greatly expands the support matrix, therefore this ware never really implemented in practice. Our recommendation for cases like this is captured in this [1] part of the documentation: "Only one stream of a particular module can be active at a given point in time. Therefore, only one version of a component can be installed on a system. Different versions can be used in separate containers." I hope this explanation help and closing as NOTABUG. [1]: https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/8/html-single/installing_managing_and_removing_user-space_components/index#module-streams_introduction-to-modules Thanks, Vit.
But customer is very concerning CVE-2022-28739. it seem pcs package is "hard dependence" on ruby, I am seeing the same symptom if I tried switch to ruby.
If possible to avoid such conflict if we install ruby stream (in rhel 8) before pcs package installation? (in my previous experience, it seem ruby was installed as dependence when we run "yum install pcs" in a fresh system.
--William
(In reply to William LEE from comment #3) > Thanks, Vit. > > But customer is very concerning CVE-2022-28739. That is something we might be able to help to address. Please keep the discussion in the appropriate trackers. > it seem pcs package > is "hard dependence" on ruby, I am seeing the same symptom if I tried > switch to ruby. That is correct. pcs seems to have some binary extension which depends on Ruby 2.5 > If possible to avoid such conflict if we install ruby stream (in > rhel 8) before pcs package installation? (in my previous experience, it seem > ruby was installed as dependence when we run "yum install pcs" in a > fresh system. pcs and ruby:3.1 unfortunately can't be installed at the same time, unless you go with container or similar technology. You would need to ask the pcs maintainer to build pcs against ruby:3.1, but that would mean also modularizing pcs and I don't think they'll be open to this idea. |