theforeman.foreman.foreman 清单 – Foreman 清单源
注意
此清单插件是 theforeman.foreman 集合(版本 4.2.0)的一部分。
如果您正在使用 ansible
包,则可能已经安装了此集合。它不包含在 ansible-core
中。要检查是否已安装,请运行 ansible-galaxy collection list
。
要安装它,请使用:ansible-galaxy collection install theforeman.foreman
。您需要进一步的要求才能使用此清单插件,有关详细信息,请参阅 要求。
要在 playbook 中使用它,请指定:theforeman.foreman.foreman
。
概要
从 Foreman 获取清单主机。
可以使用 Reports API(默认)或 Hosts API 来获取有关主机的信息。
对于许多主机,Reports API 速度更快。
Reports API 需要在 Foreman 服务器上安装
foreman_ansible
插件。某些选项仅在使用 Reports API 时才有效。
使用以 ``foreman.(yml|yaml)`` 结尾的 YAML 配置文件。
要求
以下要求需要在执行此清单的本地控制器节点上满足。
requests >= 1.1
参数
参数 |
注释 |
---|---|
每次单独调用从 Foreman API 中检索的主机批次数量 默认值: |
|
切换以启用/禁用清单源数据的缓存,需要设置缓存插件才能工作。 选项
配置
|
|
缓存连接数据或路径,请阅读缓存插件文档以了解具体信息。 配置
|
|
用于清单源数据的缓存插件。 默认值: 配置
|
|
用于缓存插件文件/表的前缀 默认值: 配置
|
|
缓存持续时间,以秒为单位 默认值: 配置
|
|
从 jinja2 表达式创建变量。 默认值: |
|
Foreman 服务器相关配置,已弃用。 您可以在此字典中传递 use_reports_api 以启用 Reports API。 仅用于向后兼容。 |
|
应用于 Foreman 组的前缀 默认值: |
|
基于 Jinja2 条件将主机添加到组。 默认值: |
|
此选项可用于限制返回的主机列表 |
|
用于组成 inventory_hostname 的模板列表,按优先级排序。 如果模板结果为空字符串或 None 值,则会被忽略。 默认值: |
|
基于变量的值将主机添加到组。 默认值: |
|
当主机变量的值为空字符串时的默认值。 此选项与 |
|
用于生成组的输入字典中的键 |
|
键控组的父组 |
|
键控组名称将以此前缀开头 默认值: |
|
用于构建键控组名称的分隔符 默认值: |
|
将此选项设置为 此选项与 选项
|
|
与 keyed_groups 结合使用。 默认情况下,没有提供前缀或分隔符的键控组的名称将以下划线开头。 这是因为默认前缀是 "",默认分隔符是 "_"。 如果未给出前缀,则将此选项设置为 False 以省略开头下划线(或其他分隔符)。 如果组名称是从映射派生的,则仍然使用分隔符来连接项目。 要完全不在组名称中使用分隔符,请将键控组的分隔符设置为空字符串。 选项
|
|
切换,如果为 true,插件将构建 foreman 脚本中存在的旧式主机变量 将主机变量放置在以 `foreman`、`foreman_facts` 和 `foreman_params` 为键的字典中 选项
|
|
使用报告数据端点轮询时,在回退到旧主机 API 之前的超时时间。 默认值: |
|
确保这是 选项
|
|
轮询时,对 report_data 端点进行 2 次调用之间的轮询间隔。 默认值: |
|
报告 API 特定配置,已弃用。 可以将报告 API 特定参数作为此字典的一部分传递,而不是作为主要配置。 仅用于向后兼容。 |
|
如果为 由于可以在表达式中使用事实,因此它们可能并不总是可用,默认情况下我们会忽略这些错误。 选项
|
|
将额外变量合并到可用于组合的变量中(优先级最高)。 选项
配置
|
|
使用报告 API。 选项
|
|
应用于主机变量的前缀,不包括事实或参数 默认值: |
|
切换,如果为 true,则清单将获取主机所绑定的内容视图详细信息。 仅适用于使用报告 API 的清单 - 否则将忽略该属性。 选项
|
|
切换,如果为 True,插件将从服务器检索主机事实 选项
|
|
切换,如果为 true,则清单将获取主机组并为它们创建分组。 仅适用于使用报告 API 的清单 - 否则将忽略该属性。 选项
|
|
切换,如果为 true,插件将为主机集合创建 Ansible 组 选项
|
|
切换,如果为 true,则清单将获取主机的 IPv4 地址。 仅适用于使用报告 API 的清单 - 否则将忽略该属性。 选项
|
|
切换,如果为 true,则清单将获取主机的 IPv6 地址。 仅适用于使用报告 API 的清单 - 否则将忽略该属性。 选项
|
|
切换,如果为 true,则清单将获取主机所属的位置并为它们创建分组。 仅适用于使用报告 API 的清单 - 否则将忽略该属性。 选项
|
|
切换,如果为 true,则清单将获取主机所属的组织并为它们创建分组。 仅适用于使用报告 API 的清单 - 否则将忽略该属性。 选项
|
|
切换,如果为 true,则清单将检索“all_parameters”信息作为主机变量 选项
|
|
切换,如果为 true,则清单将获取主机注册的智能代理。 仅适用于使用报告 API 的清单 - 否则将忽略该属性。 选项
|
|
切换,如果为 true,则清单将获取子网。 仅适用于使用报告 API 的清单 - 否则将忽略该属性。 选项
|
|
切换,如果为 true,则清单将获取 IPv6 子网。 仅适用于使用报告 API 的清单 - 否则将忽略该属性。 选项
|
示例
# my.foreman.yml
plugin: theforeman.foreman.foreman
url: https://foreman.example.com
user: ansibleinventory
password: changeme
host_filters: 'organization="Web Engineering"'
# shortname.foreman.yml
plugin: theforeman.foreman.foreman
url: https://foreman.example.com
user: ansibleinventory
password: changeme
hostnames:
- name.split('.')[0]
提示
每种条目类型的配置条目都具有从低到高的优先级顺序。例如,列表中较低的变量将覆盖较高的变量。