awx.awx.controller inventory – 用于自动化平台控制器的 Ansible 动态清单插件。

注意

此清单插件是 awx.awx 集合(版本 24.6.1)的一部分。

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

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

要在 playbook 中使用它,请指定:awx.awx.controller

概要

  • 从自动化平台控制器读取清单。

  • 支持从 YAML 配置文件和环境变量读取配置。

  • 如果从 YAML 文件读取,则文件名必须以 controller.(yml|yaml) 或 controller_inventory.(yml|yaml) 结尾,命令中的路径将是 /path/to/controller_inventory.(yml|yaml)。如果配置文件中缺少某些参数,此插件将尝试通过从环境变量读取来填写缺少的参数。

  • 如果从环境变量读取配置,则命令中的路径必须是 @controller_inventory。

别名:tower

参数

参数

注释

host

字符串

您的自动化平台控制器主机的网络地址。

配置

  • 环境变量:CONTROLLER_HOST

  • 环境变量:TOWER_HOST

    在以下版本中删除:4.0.0

    原因:集合名称更改

    替代方案:CONTROLLER_HOST

include_metadata

布尔值

发出额外的请求,以提供所有组变量,其中包含有关源主机的元数据。

选项

  • false ←(默认)

  • true

inventory_id

任意 / 必需

您希望导入的清单的 ID。

允许使用清单主键或其命名的 URL slug。

主键值将被接受为字符串或整数,URL slug 必须是字符串。

命名的 URL slug 遵循 “inventory_name++organization_name” 的语法。

配置

oauth_token

字符串

要使用的 OAuth 令牌。

配置

password

字符串

您的控制器用户的密码。

配置

request_timeout

浮点数

指定 Ansible 在向控制器主机发出请求时应使用的超时。

默认为 10 秒

这不适用于导出或导入模块。

配置

username

字符串

您计划用于访问控制器上的清单的用户。

配置

verify_ssl

别名:validate_certs

布尔值

指定 Ansible 是否应验证控制器主机的 SSL 证书。

默认为 True,但这由共享的 module_utils 代码处理

选项

  • false

  • true

配置

注意

注意

  • 如果没有提供 config_file,我们将尝试使用 tower-cli 库的默认值来查找您的主机信息。

  • config_file 应该采用以下格式:host=hostname username=username password=password

示例

# Before you execute the following commands, you should make sure this file is in your plugin path,
# and you enabled this plugin.

# Example for using controller_inventory.yml file

plugin: awx.awx.controller
host: your_automation_controller_server_network_address
username: your_automation_controller_username
password: your_automation_controller_password
inventory_id: the_ID_of_targeted_automation_controller_inventory
# Then you can run the following command.
# If some of the arguments are missing, Ansible will attempt to read them from environment variables.
# ansible-inventory -i /path/to/controller_inventory.yml --list

# Example for reading from environment variables:

# Set environment variables:
# export CONTROLLER_HOST=YOUR_AUTOMATION_PLATFORM_CONTROLLER_HOST_ADDRESS
# export CONTROLLER_USERNAME=YOUR_CONTROLLER_USERNAME
# export CONTROLLER_PASSWORD=YOUR_CONTROLLER_PASSWORD
# export CONTROLLER_INVENTORY=THE_ID_OF_TARGETED_INVENTORY
# Read the inventory specified in CONTROLLER_INVENTORY from the controller, and list them.
# The inventory path must always be @controller_inventory if you are reading all settings from environment variables.
# ansible-inventory -i @controller_inventory --list

作者

  • Matthew Jones (@matburt)

  • Yunfan Zhang (@YunfanZhang42)

提示

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