community.general.collection_version 查询 – 获取已安装集合的版本

注意

此查询插件是 community.general 集合 (版本 10.1.0) 的一部分。

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

要安装它,请使用: ansible-galaxy collection install community.general

要在剧本中使用它,请指定: community.general.collection_version

community.general 4.0.0 中的新增功能

概要

  • 此查询允许查询已安装集合的版本,并确定集合是否已安装。

  • 默认情况下,对于不存在的集合,它返回 none,对于没有版本号的集合,返回 *。后者只应在开发环境中发生,或者从 git 安装没有版本号的集合时发生(其 galaxy.yml 文件中没有版本号)。此行为可以通过使用 result_not_foundresult_no_version 提供其他值来调整。

术语

参数

注释

术语

列表 / 元素=字符串 / 必需

要查找的集合。

例如 community.general

关键字参数

这描述了查询的关键字参数。这些是在以下示例中的值 key1=value1key2=value2 等:lookup('community.general.collection_version', key1=value1, key2=value2, ...)query('community.general.collection_version', key1=value1, key2=value2, ...)

参数

注释

result_no_version

字符串

当集合没有版本号时返回的值。

这可能发生在从 git 安装的集合中,这些集合的 galaxy.yml 中没有版本号。

默认情况下,返回 *

默认值: "*"

result_not_found

字符串

找不到集合时返回的值。

默认情况下,返回 none

注释

注意

  • 当关键字参数和位置参数一起使用时,位置参数必须列在关键字参数之前:lookup('community.general.collection_version', term1, term2, key1=value1, key2=value2)query('community.general.collection_version', term1, term2, key1=value1, key2=value2)

示例

- name: Check version of community.general
  ansible.builtin.debug:
    msg: "community.general version {{ lookup('community.general.collection_version', 'community.general') }}"

返回值

描述

返回值

列表 / 元素=字符串

作为输入列出的集合的版本号。

如果找不到集合,它将返回 result_not_found 中提供的值。默认情况下,这是 none

如果找到了集合,但未识别版本,它将返回 result_no_version 中提供的值。默认情况下,这是 *。这可能发生在从 git 安装的集合中,这些集合的 galaxy.yml 中没有版本号。

返回:成功

作者

  • Felix Fontein (@felixfontein)

提示

每个条目类型的配置条目具有从低到高的优先级顺序。例如,列表中较低的变量将覆盖较高的变量。