[Kimchi-devel] [PATCH] bug fix: instantiate the Yum manager when update the yum packages list
Zhou Zheng Sheng
zhshzhou at linux.vnet.ibm.com
Tue Mar 18 08:59:12 UTC 2014
于 2014年03月14日 22:52, shaohef at linux.vnet.ibm.com 写道:
> From: ShaoHe Feng <shaohef at linux.vnet.ibm.com>
>
> an instance just refresh packagekit once.
>
> for example:
> $ sudo PYTHONPATH=src python -c '
>> from yum import YumBase
>> YumBase().doPackageLists("updates")
>> _yb = YumBase()
>> _yb.doPackageLists("updates")
>> _yb.doPackageLists("updates")
>> '
> Loaded plugins: langpacks, refresh-packagekit
> Loaded plugins: langpacks, refresh-packagekit
>
> you can seen the second _yb.doPackageLists will not refresh packagekit.
>
> The apt manager may also has the same problem.
> But not test it on ubuntu, will send a patch later after I have check.
>
> Signed-off-by: Aline Manera <alinefm at br.ibm.com>
> Signed-off-by: ShaoHe Feng <shaohef at linux.vnet.ibm.com>
> ---
> src/kimchi/swupdate.py | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/src/kimchi/swupdate.py b/src/kimchi/swupdate.py
> index ff5c9d1..dc48153 100644
> --- a/src/kimchi/swupdate.py
> +++ b/src/kimchi/swupdate.py
> @@ -136,14 +136,14 @@ class YumUpdate(object):
> """
> def __init__(self):
> self._pkgs = {}
> - self._yb = getattr(__import__('yum'), 'YumBase')()
> + self._yb = getattr(__import__('yum'), 'YumBase')
> self.update_cmd = ["yum", "-y", "update"]
>
> def _refreshUpdateList(self):
> """
> Update the list of packages to be updated in the system.
> """
> - self._pkgs = self._yb.doPackageLists('updates')
> + self._pkgs = self._yb().doPackageLists('updates')
>
> def getPackagesList(self):
> """
>
I'd suggest you delete self._yb = getattr(__import__('yum'), 'YumBase')
from __init__(), and move it to _refreshUpdateList(), then change the
_yb to a local variable. The _yb is only used in _refreshUpdateList(),
it should not be a data member of the YumUpdate object.
Some for the AptUpdate.
--
Thanks and best regards!
Zhou Zheng Sheng / 周征晟
E-mail: zhshzhou at linux.vnet.ibm.com
Telephone: 86-10-82454397
More information about the Kimchi-devel
mailing list