On Wed, 2011-10-12 at 13:18 +0200, Zdeněk Pavlas wrote:
> A repo may be disabled in config but a plugin enables it in
> prereposetup_hook. 'yum clean' usually skips repo setup,
> because we don't need them up to date.
>
> Make sure plugins are run before iterating enabled repos.
> ---
> cli.py | 6 ++++++
> 1 files changed, 6 insertions(+), 0 deletions(-)
>
> diff --git a/cli.py b/cli.py
> index bbe8e55..8e3ae39 100755
> --- a/cli.py
> +++ b/cli.py
> @@ -1447,6 +1447,12 @@ class YumBaseCli(yum.YumBase, output.YumOutput):
> """
> hdrcode = pkgcode = xmlcode = dbcode = expccode = 0
> pkgresults = hdrresults = xmlresults = dbresults = expcresults = []
> + # Repositories get enabled by plugins during repo setup.
> + # If we haven't run repos.doSetup() yet, trigger plugins.
> + if not self.repos._setup:
> + self.plugins.run('prereposetup')
> + self.plugins.run('postreposetup')
> + self.repos._setup = True
We can't call these when we aren't actually setting up the repos.
We almost certainly "just" need to create prerepoconfig and
postrepoconfig plugin hooks (probably called from _getRepos), and then
move the creation of dynamic repos. into those calls.
_______________________________________________
Yum-devel mailing list
[email protected]
http://lists.baseurl.org/mailman/listinfo/yum-devel