On Wed, Jul 01, 2020 at 08:29:26AM -0500, Martin Jackson wrote:
Hello,
I'm having a problem I don't understand how to fix, and I would appreciate
some guidance. I'm maintaining nagios-plugins, which bundles a number of
different "check" plugins and has some metapackages that include different
subsets of those check plugins.
In the EL 8.2 release cycle, one of the dependencies of one of those plugins
was moved from EPEL into EL proper, which broke new installs of that plugin
and the -all metapackage. A user filed a bug, so as a temporary workaround,
I stopped building the plugin package with that dependency
(nagios-plugins-ssl_validity, and had that version (nagios-plugins-2.3.3-3)
obsolete the ssl_validity plugin, since leaving it around caused it to want
to keep the base package in conflict with other packages that were
upgrading.
Now that CentOS 8.2 is released, and the dependency is available, I've
issued an update
(
https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2020-70bcfe5382) that
builds ssl_validity again, and also adds it back to the -all subpackage. I
can upgrade it sucessfully (which installs the ssl_validity plugin again, as
expected), but subsequent calls to dnf upgrade give this error:
Obsoleting Packages
nagios-plugins.x86_64 2.3.3-3.el8 epel
nagios-plugins-ssl_validity.x86_64 2.3.3-4.el8 @epel-testing
nagios-plugins 2.3.3-3 is not installed anymore, and there are no explicit
Obsoletes: in the ssl_validity package. I'm not sure what needs to be done
here, but whatever it is I'm willing to make the change. Also wondering if
this is expected behavior.
I think the problem is in the stable nagios-plugins-0:2.3.3-3.el8.x86_64
package. It does not constrain the obsoletance of nagios-plugins-ssl_validity
by a specific release:
# dnf --quiet --enablerepo=epel --enablerepo=epel-testing repoquery --obsoletes
nagios-plugins-0:2.3.3-3.el8.x86_64
nagios-plugins-linux_raid < 1.4.16-11
nagios-plugins-ssl_validity <= 2.3.3
It states that any nagios-plugins-ssl_validity package of 2.3.3 version, or
older, which nagios-plugins-ssl_validity-0:2.3.3-4.el8.x86_64 package
fulfilles, should be uninstalled. As a result DNF will uninstall
nagios-plugins-ssl_validity-0:2.3.3-4.el8.x86_64 as long as
nagios-plugins-0:2.3.3-3.el8.x86_64 package is available in any repository.
If nagios-plugins-0:2.3.3-3.el8.x86_64 contained:
Obsoletes: nagios-plugins-ssl_validity <= 2.3.3-3
everything would work smoothly.
I believe that once nagios-plugins-0:2.3.3-4.el8 gets stable and replaces
nagios-plugins-0:2.3.3-3.el8 in the stable EPEL repository, everything will
start working again. EPEL keeps only the latest build of a package in each
repository. Thus I would ignore this issue now, and pushed
nagios-plugins-0:2.3.3-4.el8 into stable once possible.
You can try it: Install nagios-plugins-0:2.3.3-4.el8, then disable the stable
epel repository, and attempt to install nagios-plugins-ssl_validity.
-- Petr