community.general.zypper 模块 – 在 SUSE 和 openSUSE 上管理软件包
注意
此模块是 community.general 集合 (版本 10.1.0) 的一部分。
如果您使用的是 ansible
软件包,则可能已安装此集合。它不包含在 ansible-core
中。要检查它是否已安装,请运行 ansible-galaxy collection list
。
要安装它,请使用:ansible-galaxy collection install community.general
。您需要其他要求才能使用此模块,请参阅 要求 获取详细信息。
要在剧本中使用它,请指定:community.general.zypper
。
概要
使用 zypper 和 rpm 工具在 SUSE 和 openSUSE 上管理软件包。
还支持事务性更新,方法是在
/sbin/transactional-update --continue --drop-if-no-change --quiet run
内运行 zypper。
要求
执行此模块的主机需要以下要求。
zypper >= 1.0 # 包含在 openSUSE >= 11.1 或 SUSE Linux Enterprise Server/Desktop >= 11.0 中
python-xml
rpm
参数
参数 |
注释 |
---|---|
向 zypper dist-upgrade 命令添加 选项
|
|
向 zypper remove 命令添加 选项
|
|
对应于 zypper 的 选项
|
|
向 选项应像在命令行中提供的那样,在一行中提供。 |
|
向 选项应像在命令行中提供的那样,在一行中提供。 |
|
向 zypper 添加 选项
|
|
向 zypper 添加 选项
|
|
软件包名称 可以包含版本,例如 您还可以传递 rpm 文件的 url 或本地路径。 使用 |
|
向 zypper 添加 选项
|
|
向 zypper install/update 命令添加 选项
|
|
使用 选项
|
|
要对其进行操作的软件包类型。 选项
|
|
在操作之前运行等效于 选项
|
属性
属性 |
支持 |
描述 |
---|---|---|
支持:完全支持 |
可以在 |
|
支持:完全支持 |
在差异模式下,将返回有关已更改内容(或可能需要在 |
备注
注意
与
loop:
一起使用时,每个软件包都将被单独处理,将列表直接传递给name
选项效率更高。
示例
- name: Install nmap
community.general.zypper:
name: nmap
state: present
- name: Install apache2 with recommended packages
community.general.zypper:
name: apache2
state: present
disable_recommends: false
- name: Apply a given patch
community.general.zypper:
name: openSUSE-2016-128
state: present
type: patch
- name: Remove the nmap package
community.general.zypper:
name: nmap
state: absent
- name: Install the nginx rpm from a remote repo
community.general.zypper:
name: 'https://nginx.ac.cn/packages/sles/12/x86_64/RPMS/nginx-1.8.0-1.sles12.ngx.x86_64.rpm'
state: present
- name: Install local rpm file
community.general.zypper:
name: /tmp/fancy-software.rpm
state: present
- name: Update all packages
community.general.zypper:
name: '*'
state: latest
- name: Apply all available patches
community.general.zypper:
name: '*'
state: latest
type: patch
- name: Perform a dist-upgrade with additional arguments
community.general.zypper:
name: '*'
state: dist-upgrade
allow_vendor_change: true
extra_args: '--allow-arch-change'
- name: Perform a installation of nmap with the install option replacefiles
community.general.zypper:
name: 'nmap'
state: latest
replacefiles: true
- name: Refresh repositories and update package openssl
community.general.zypper:
name: openssl
state: present
update_cache: true
- name: "Install specific version (possible comparisons: <, >, <=, >=, =)"
community.general.zypper:
name: 'docker>=1.10'
state: present
- name: Wait 20 seconds to acquire the lock before failing
community.general.zypper:
name: mosh
state: present
environment:
ZYPP_LOCK_TIMEOUT: 20