Bug 1173419 - yumpayload assumes existence of yum in installed package set, but doesn't enforce it
Summary: yumpayload assumes existence of yum in installed package set, but doesn't enf...
Keywords:
Status: CLOSED DUPLICATE of bug 1152753
Alias: None
Product: Fedora
Classification: Fedora
Component: anaconda
Version: rawhide
Hardware: All
OS: All
unspecified
medium
Target Milestone: ---
Assignee: Anaconda Maintenance Team
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2014-12-12 05:32 UTC by Adam Williamson
Modified: 2014-12-17 14:32 UTC (History)
5 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2014-12-17 14:32:31 UTC
Type: Bug


Attachments (Terms of Use)

Description Adam Williamson 2014-12-12 05:32:48 UTC
Up to F21, it's pretty safe to expect yum will be included in any Fedora install, because it's a mandatory package in the 'core' group.

In F22, however, it isn't. dnf has replaced it in core.

yumpayload.py implicitly assumes it will always be installed to the system, though:

_yum_target_langpack_conf = "/etc/yum/pluginconf.d/langpacks.conf"

...

    def _copyLangpacksConfigToTarget(self):
        shutil.copy2(_yum_installer_langpack_conf,
                     iutil.getSysroot()+_yum_target_langpack_conf)

...

    def postInstall(self):
...
        self._copyLangpacksConfigToTarget()

The yum package owns the directory /etc/yum/pluginconf.d .

tflink hit a traceback attempting an install of Rawhide:

http://beaker-dev.fedoraproject.org/logs/recipes/0+/128/anaconda-tb-do5leT

I believe what happened is his installed package set did not contain yum, so when _copyLangpacksConfigToTarget was run, it failed because /mnt/sysimage/etc/yum/pluginconf.d did not exist.

I've just confirmed I see the same thing if I do a minimal install of the 2014-12-08 Rawhide nightly (which hadn't yet switched to dnf by default).

anaconda has now moved to dnf by default and the dnf payload won't hit this bug, but you can still use a parameter to use yum instead, and you could hit this bug on that path.

I'm not sure what the best thing to do here is, actually. Is it really correct that this config only gets written out when the *installer* is using yum? It doesn't seem like that's necessarily the case, to me. Even if the installer uses dnf, the system user/admin may want to use yum, and presumably they would want to have the appropriate langpacks.conf installed? Should this just get done regardless of the payload type?

Comment 1 Tim Flink 2014-12-12 05:44:04 UTC
If it's useful, the kickstart used and other logs are available as well.

http://beaker-dev.fedoraproject.org/bkr/jobs/128

Note that the beaker install is still not 100% functional and all the log urls are rendered improperly but replacing the 'beaker01.qa.fedoraproject.org/beaker' with 'beaker-dev.fedoraproject.org/' will change them into usable links.

This install was done with the 20141209 rawhide tree.

Comment 2 Adam Williamson 2014-12-12 06:53:52 UTC
it's reproducible just by doing any install with the minimal package set (@core). Well, and quite a lot of other package sets too, I guess, I don't know exactly what dep chains still pull in yum in F22, if any.

Comment 3 David Shea 2014-12-17 14:32:31 UTC

*** This bug has been marked as a duplicate of bug 1152753 ***


Note You need to log in before you can comment on or make changes to this bug.