# foreman – foreman inventory source

New in version 2.6.

- Synopsis

- Requirements

- Parameters

- Examples

- Status

## Synopsis

- Get inventory hosts from the foreman service.

- Uses a configuration file as an inventory source, it must end in `.foreman.yml` or `.foreman.yaml` and has a `plugin: foreman` entry.

## Requirements

The below requirements are needed on the local master node that executes this inventory.

- requests >= 1.1

## Parameters

Parameter | Choices/Defaults | Configuration | Comments
--- | --- | --- | ---

cache
boolean

Choices:
- no ←
- yes

ini entries:

[inventory]
cache = no

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] fact_caching_connection = VALUE [inventory] cache_connection = VALUE 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] fact_caching = memory [inventory] cache_plugin = memory env:ANSIBLE_CACHE_PLUGIN env:ANSIBLE_INVENTORY_CACHE_PLUGIN | Cache plugin to use for the inventory's source data.
cache_prefix - | Default: "ansible_inventory_" | ini entries: [default] fact_caching_prefix = ansible_inventory_ [inventory] cache_prefix = ansible_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] fact_caching_timeout = 3600 [inventory] cache_timeout = 3600 env:ANSIBLE_CACHE_PLUGIN_TIMEOUT env:ANSIBLE_INVENTORY_CACHE_TIMEOUT | Cache duration in seconds
group_prefix - | Default: "foreman_" |  | prefix to apply to foreman groups
password - / required |  | env:FOREMAN_PASSWORD | foreman authentication password

plugin
- / required

Choices:
- foreman

the name of this plugin, it should always be set to 'foreman' for this plugin to recognize it as it's own.

url - | Default: "http://localhost:3000" | env:FOREMAN_SERVER | url to foreman
user - / required |  | env:FOREMAN_USER | foreman authentication user
validate_certs boolean | Default: "no" |  | verify SSL certificate if using https
vars_prefix - | Default: "foreman_" |  | prefix to apply to host variables, does not include facts nor params
want_facts boolean | Default: "no" |  | Toggle, if True the plugin will retrieve host facts from the server
want_params boolean | Default: "no" |  | Toggle, if true the inventory will retrieve 'all_parameters' information as host vars

## Examples

    # my.foreman.yml
    plugin: foreman
    url: http://localhost:2222
    user: ansible-tester
    password: secure
    validate_certs: False

## Status

- This inventory is not guaranteed to have a backwards compatible interface. [preview]

- This inventory is maintained by the Ansible Community. [community]

### Authors

- UNKNOWN

Hint

If you notice any issues in this documentation, you can edit this document to improve it.

Hint

Configuration entries for each entry type have a low to high priority order. For example, a variable that is lower in the list will override a variable that is higher up.