[Yum] [PATCH] Set repo.cachedir to repo.basecachedir when reading configuration
seth vidal
skvidal at fedoraproject.org
Wed Jul 23 12:36:36 UTC 2008
On Wed, 2008-07-23 at 15:32 +0300, Alexander Todorov wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA512
>
> The failure was at:
> yumdownloader -c $yumconf anaconda-runtime. The config files that come with
Is revisor actually running this command or is it doing something like
it internally?
> Apparently it was failing to download the package from http://localrepo as such
> doesn't exist but then it was failing to download the package from any
> mirrorlist (as a matter of fact mirrorlist was not used). The patch below fixed
> that. What I noticed is that repo.cachedir was empty and it was used to
> construct the path for mirrorlist.txt which resulted in /mirrorlist.txt and
> denied write. Although Revisor was running as root that was failing. I still
> have to go and find out why this happened.
>
> Please review and apply the proposed patch.
>
>
> diff --git a/yum/__init__.py b/yum/__init__.py
> index 5786816..8decfca 100644
> - --- a/yum/__init__.py
> +++ b/yum/__init__.py
> @@ -325,6 +325,7 @@ class YumBase(depsolve.Depsolve):
>
> ~ # Set attributes not from the config file
> ~ repo.basecachedir = self.conf.cachedir
> + repo.cachedir = repo.basecachedir
> ~ repo.yumvar.update(self.conf.yumvar)
> ~ repo.cfg = parser
>
is there some reason why repo.dirSetup() never gets run?
You'll notice that it does:
def dirSetup(self):
"""make the necessary dirs, if possible, raise on failure"""
cachedir = os.path.join(self.basecachedir, self.id)
pkgdir = os.path.join(cachedir, 'packages')
hdrdir = os.path.join(cachedir, 'headers')
self.setAttribute('cachedir', cachedir)
self.setAttribute('pkgdir', pkgdir)
self.setAttribute('hdrdir', hdrdir)
There may be another bug here, but I don't think the patch you sent is
the right way to fix it.
-sv
More information about the Yum
mailing list