ansible.builtin.script – Executes an inventory script that returns JSON

Note

This module is part of ansible-base and included in all Ansible installations. In most cases, you can use the short module name script even without specifying the collections: keyword. Despite that, we recommend you use the FQCN for easy linking to the module documentation and to avoid conflicting with other collections that may have the same module name.

New in version 2.4: of ansible.builtin

Synopsis

  • The source provided must be an executable that returns Ansible inventory JSON

  • The source must accept --list and --host <hostname> as arguments. --host will only be used if no _meta key is present. This is a performance optimization as the script would be called per host otherwise.

Parameters

Parameter Choices/Defaults Configuration Comments
always_show_stderr
boolean
added in 2.5.1 of ansible.builtin
    Choices:
  • no
  • yes ←
ini entries:

[inventory_plugin_script]
always_show_stderr = yes

env:ANSIBLE_INVENTORY_PLUGIN_SCRIPT_STDERR
Toggle display of stderr even when script was successful
cache
string
Removed in: version 2.12
Why: This option has never been in use. External scripts must implement their own caching.
Alternative:
ini entries:

[inventory_plugin_script]
cache = None

env:ANSIBLE_INVENTORY_PLUGIN_SCRIPT_CACHE
This option has no effect. The plugin will not cache results because external inventory scripts are responsible for their own caching. This option will be removed in 2.12.

Notes

Note

  • Whitelisted in configuration by default.

  • The plugin does not cache results because external inventory scripts are responsible for their own caching.