2

我正在编写一个 yum 插件来更新本地存储库的 URL。当 repo URL 更改时,我想让 yum 运行 ayum clean all以确保没有缓存过时的信息。我知道 yum 有一个钩子可以在请求时运行代码,yum clean [plugins|all]但是是否可以从插件的其他钩子函数之一中触发 clean all?

4

1 回答 1

3

你可以很容易地做到这一点。Yum 公开了一个由命令行程序使用的库。这是 yum clean all 的示例代码:

import sys
sys.path.append("/usr/share/yum-cli")
import cli
ybc = cli.YumBaseCli()
ybc.cleanCli(["all"])

如果您想做更多的事情,然后使用函数检查所有由 CLI 库方法公开的 API,这些 API 在 /user/share/yum-cli 文件夹中公开:)

问候,

于 2012-05-08T05:59:16.013 回答