community.general.apt_rpm 模块 – APT-RPM 包管理器

注意

此模块是 community.general 集合 (版本 10.1.0) 的一部分。

如果您使用的是 ansible 包,则可能已安装此集合。它不包含在 ansible-core 中。要检查它是否已安装,请运行 ansible-galaxy collection list

要安装它,请使用:ansible-galaxy collection install community.general。您需要其他要求才能使用此模块,有关详细信息,请参阅 要求

要在 playbook 中使用它,请指定:community.general.apt_rpm

概要

  • 使用 apt-rpm 管理软件包。需要低级 (rpm) 和高级 (apt-get) 软件包管理器二进制文件。

要求

执行此模块的主机需要以下要求。

  • rpm python 包(rpm 绑定),可选。如果 package 选项包含本地文件,则需要此包。

参数

参数

注释

clean

布尔值

在 community.general 6.5.0 中添加

运行等效于 apt-get clean 的命令,以清除本地存储库中已检索的软件包文件。它删除了 /var/cache/apt/archives//var/cache/apt/archives/partial/ 中除锁文件之外的所有内容。

可以作为软件包安装的一部分运行(clean 在安装之前运行)或作为单独的步骤运行。

选项

  • false ← (默认)

  • true

dist_upgrade

布尔值

在 community.general 6.5.0 中添加

如果为 true,则执行 apt-get dist-upgrade 来升级系统。

选项

  • false ← (默认)

  • true

package

别名:name, pkg

列表 / 元素=字符串

要安装、升级或删除的软件包列表。

从 community.general 8.0.0 开始,如果 state=installedstate=present,则可以包含本地 .rpm 文件的路径,需要 rpm python 模块。

state

字符串

指示所需的软件包状态。

请注意,目前 presentinstalled 等效于 latest。这将在将来改变。要简单地确保安装软件包,而不升级它,请使用 present_not_latest 状态。

状态 latestpresent_not_latest 已在 community.general 8.6.0 中添加。

选项

  • "absent"

  • "present" ← (默认)

  • "present_not_latest"

  • "installed"

  • "removed"

  • "latest"

update_cache

布尔值

在操作之前运行等效于 apt-get update 的命令。可以作为软件包安装的一部分运行或作为单独的步骤运行。

默认是不更新缓存。

选项

  • false ← (默认)

  • true

update_kernel

布尔值

在 community.general 6.5.0 中添加

如果为 true,则执行 update-kernel 来升级内核软件包。

选项

  • false ← (默认)

  • true

属性

属性

支持

描述

check_mode

支持:不支持

可以在 check_mode 下运行,并在不修改目标的情况下返回更改状态预测。

diff_mode

支持:不支持

处于 diff 模式时,将返回有关已更改内容(或可能需要在 check_mode 中更改)的详细信息。

示例

- name: Install package foo
  community.general.apt_rpm:
    pkg: foo
    state: present

- name: Install packages foo and bar
  community.general.apt_rpm:
    pkg:
      - foo
      - bar
    state: present

- name: Remove package foo
  community.general.apt_rpm:
    pkg: foo
    state: absent

- name: Remove packages foo and bar
  community.general.apt_rpm:
    pkg: foo,bar
    state: absent

# bar will be the updated if a newer version exists
- name: Update the package database and install bar
  community.general.apt_rpm:
    name: bar
    state: present
    update_cache: true

- name: Run the equivalent of "apt-get clean" as a separate step
  community.general.apt_rpm:
    clean: true

- name: Perform cache update and complete system upgrade (includes kernel)
  community.general.apt_rpm:
    update_cache: true
    dist_upgrade: true
    update_kernel: true

作者

  • Evgenii Terechkov (@evgkrsk)