ovirt.ovirt.ovirt – oVirt inventory source
ovirt.ovirt.ovirt – oVirt inventory source
Note
This plugin is part of the ovirt.ovirt collection (version 1.3.0).
To install it use: ansible-galaxy collection install ovirt.ovirt
.
To use it in a playbook, specify: ovirt.ovirt.ovirt
.
New in version 1.0.0: of ovirt.ovirt
Synopsis
- Get inventory hosts from the ovirt service.
- Requires a YAML file ending in ‘ovirt.yml’, ‘ovirt4.yml’, ‘ovirt.yaml’, ‘ovirt4.yaml’.
Requirements
The below requirements are needed on the local controller node that executes this inventory.
- ovirt-engine-sdk-python >= 4.2.4
Parameters
Parameter | Choices/Defaults | Configuration | Comments |
---|---|---|---|
cache boolean |
|
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 = None [inventory]cache_connection = None
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 string |
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 |
compose dictionary |
Default: {} |
Create vars from jinja2 expressions. | |
groups dictionary |
Default: {} |
Add hosts to group based on Jinja2 conditionals. | |
keyed_groups list / elements=string |
Default: [] |
Add hosts to group based on the values of a variable. | |
leading_separator boolean added in 2.11 of ansible.builtin |
|
Use in conjunction with keyed_groups. By default, a keyed group that does not have a prefix or a separator provided will have a name that starts with an underscore. This is because the default prefix is "" and the default separator is "_". Set this option to False to omit the leading underscore (or other separator) if no prefix is given. If the group name is derived from a mapping the separator is still used to concatenate the items. To not use a separator in the group name at all, set the separator for the keyed group to an empty string instead. | |
ovirt_cafile string |
path to ovirt-engine CA file. If | ||
ovirt_hostname_preference list / elements=string |
Default: ["fqdn", "name"] |
list of options that describe the ordering for which hostnames should be assigned. See https://ovirt.github.io/ovirt-engine-api-model/master/#types/vm for available attributes. | |
ovirt_insecure string |
A boolean flag that indicates if the server TLS certificate and host name should be checked. | ||
ovirt_password string / required |
env:OVIRT_PASSWORD |
ovirt authentication password. | |
ovirt_query_filter string |
dictionary of filter key-values to query VM's. See https://ovirt.github.io/ovirt-engine-sdk/master/services.m.html#ovirtsdk4.services.VmsService.list for filter parameters. | ||
ovirt_url string / required |
env:OVIRT_URL |
URL to ovirt-engine API. | |
ovirt_username string / required |
env:OVIRT_USERNAME |
ovirt authentication user. | |
plugin string / required |
|
the name of this plugin, it should always be set to 'ovirt' for this plugin to recognise it as it's own. | |
strict boolean |
|
If Since it is possible to use facts in the expressions they might not always be available and we ignore those errors by default. | |
use_extra_vars boolean added in 2.11 of ansible.builtin |
|
ini entries: [inventory_plugins]use_extra_vars = no
env:ANSIBLE_INVENTORY_USE_EXTRA_VARS |
Merge extra vars into the available variables for composition (highest precedence). |
Examples
# Ensure the CA is available:
# $ wget "https://engine/ovirt-engine/services/pki-resource?resource=ca-certificate&format=X509-PEM-CA" -O /path/to/ca.pem
# Sample content of ovirt.yml:
plugin: ovirt.ovirt.ovirt
ovirt_url: https://engine/ovirt-engine/api
ovirt_cafile: /path/to/ca.pem
ovirt_username: ansible-tester
ovirt_password: secure
ovirt_query_filter:
search: 'name=myvm AND cluster=mycluster'
case_sensitive: no
max: 15
keyed_groups:
- key: cluster
prefix: 'cluster'
groups:
dev: "'dev' in tags"
compose:
ansible_host: devices["eth0"][0]
Authors
- Bram Verschueren (@bverschueren)
© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/ovirt/ovirt/ovirt_inventory.html