我正在编写我的第一个Yum插件,我希望用它来显示有关要在更新或安装时下载的软件包的一些信息。我已成功获得该插件运行并正确设置。 我的问题是获取在用户接受或取消交易之前将下载的软件包列表。
某个渠道中有一种方法,提供给predownload_hook(conduit)
和postdownload_hook(conduit)
的方法,可以使用conduit.getDownloadPackages()
调用,以完全按照我的要求进行操作。但是,在用户接受或拒绝事务后调用这两个钩子。根据yum Python API文档,getDownloadPackages()
在其他任何地方都无法使用。
我已经在Freenode的#yum上问了几次,但没有得到答案。非常感谢解决方案或任何帮助。有一个好的。
答案 0 :(得分:2)
您想使用postresolve_hook(),并遍历交易列表。要查看相当简单的复制和粘贴示例,请查看changelog插件(显示要在事务中安装/升级的所有内容的rpm更改日志)。