首页 > 解决方案 > 在ansible中使用yum模块安装多个版本的rpm

问题描述

我有我的应用程序的 rpm。我正在使用 ansible 在多个服务上部署和安装 rpm。如果 rpm 安装失败,我只想保留之前安装的 rpm 版本。例如,如果我安装 rpm v15,然后 v18 和 v18 失败,我想保留 v15 并恢复 v18 安装的更改。

使用 rpm 时,我可以使用以下命令轻松安装相同 rpm 的多个版本:

rpm -ihv --oldpackage my-rpm-18.rpm

有没有办法在 ansible 中使用 yum 模块?

标签: ansibleyum

解决方案


您可以尝试安装最新版本,block然后rescue在出现错误时使用所需的版本:

- block
    - yum:
        name: my-rpm
        state: latest
  rescue:
    - yum:
        name: my-rpm-18
        state: present

推荐阅读