如果先决条件不满足,如何停止 meta-rpm 事务?

如果先决条件不满足,如何停止 meta-rpm 事务?

我目前有一个元包 rpm,其中包含对其他 rpm 包的依赖列表。

如果预安装脚本失败(即返回非 0 的值),我想停止元包(以及所有后续包)的更新/安装事务。

我尝试将测试条件放入元包预安装脚本中,这似乎是合理的,但发生了以下情况:

# yum update my-package
  1. 元包检查哪些依赖包需要更新/安装
  2. 运行元包预安装脚本并失败(在这种情况下)
  3. 继续更新过程并更新后续包(!)

因此,我最终陷入了这样的境地:

  • 元包版本未更新
  • 所有依赖包可能更新至较新版本

如果元包包含其他包所需的数据,这显然会导致一些严重的问题。

如果预安装条件失败,有什么办法可以停止整个交易吗?

笔记:我也尝试过使用 rpm 命令进行更新过程,但是也没有作用。

相关内容