Note
This plugin is part of the theforeman.foreman collection.
To install it use: ansible-galaxy collection install theforeman.foreman
.
To use it in a playbook, specify: theforeman.foreman.foreman
.
foreman.(yml|yaml)
.The below requirements are needed on the local controller node that executes this inventory.
Parameter | Choices/Defaults | Configuration | Comments |
---|---|---|---|
batch_size integer | Default: 250 | Number of hosts per batch that will be retrieved from the Foreman API per individual call | |
cache boolean |
| ini entries: [inventory] env:ANSIBLE_INVENTORY_CACHE | Toggle to enable/disable the caching of the inventory's source data, requires a cache plugin setup to work. |
cache_connection string | ini entries: [defaults] [inventory] env:ANSIBLE_CACHE_PLUGIN_CONNECTION env:ANSIBLE_INVENTORY_CACHE_CONNECTION | Cache connection data or path, read cache plugin documentation for specifics. | |
cache_plugin string | Default: "memory" | ini entries: [defaults] [inventory] env:ANSIBLE_CACHE_PLUGIN env:ANSIBLE_INVENTORY_CACHE_PLUGIN | Cache plugin to use for the inventory's source data. |
cache_prefix string | Default: "ansible_inventory_" | ini entries: [default] [inventory] env:ANSIBLE_CACHE_PLUGIN_PREFIX env:ANSIBLE_INVENTORY_CACHE_PLUGIN_PREFIX | Prefix to use for cache plugin files/tables |
cache_timeout integer | Default: 3600 | ini entries: [defaults] [inventory] env:ANSIBLE_CACHE_PLUGIN_TIMEOUT env:ANSIBLE_INVENTORY_CACHE_TIMEOUT | Cache duration in seconds |
compose dictionary | Default: {} | Create vars from jinja2 expressions. | |
group_prefix string | Default: "foreman_" | prefix to apply to foreman groups | |
groups dictionary | Default: {} | Add hosts to group based on Jinja2 conditionals. | |
host_filters string | This can be used to restrict the list of returned host | ||
keyed_groups list / elements=string | Default: [] | Add hosts to group based on the values of a variable. | |
legacy_hostvars boolean |
| Toggle, if true the plugin will build legacy hostvars present in the foreman script Places hostvars in a dictionary with keys `foreman`, `foreman_facts`, and `foreman_params` | |
password string / required | env:FOREMAN_PASSWORD | Password of the user accessing the Foreman server. | |
plugin string / required |
| token that ensures this is a source file for the foreman plugin. | |
strict boolean |
| If yes make invalid entries a fatal error, otherwise skip and continue.Since it is possible to use facts in the expressions they might not always be available and we ignore those errors by default. | |
url string | Default: "http://localhost:3000" | env:FOREMAN_SERVER env:FOREMAN_SERVER_URL env:FOREMAN_URL | URL of the Foreman server. |
user string / required | env:FOREMAN_USER env:FOREMAN_USERNAME | Username accessing the Foreman server. | |
validate_certs boolean |
| env:FOREMAN_VALIDATE_CERTS | Whether or not to verify the TLS certificates of the Foreman server. |
vars_prefix string | Default: "foreman_" | prefix to apply to host variables, does not include facts nor params | |
want_facts boolean |
| Toggle, if True the plugin will retrieve host facts from the server | |
want_hostcollections boolean |
| Toggle, if true the plugin will create Ansible groups for host collections | |
want_params boolean |
| Toggle, if true the inventory will retrieve 'all_parameters' information as host vars |
# my.foreman.yml plugin: theforeman.foreman.foreman url: http://localhost:2222 user: ansible-tester password: secure validate_certs: False host_filters: 'organization="Web Engineering"'
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.10/collections/theforeman/foreman/foreman_inventory.html