virtualbox – virtualbox inventory source

From Get docs
< Inventory PluginsAnsible/docs/2.8/plugins/inventory/virtualbox


virtualbox – virtualbox inventory source

Synopsis

  • Get inventory hosts from the local virtualbox installation.
  • Uses a YAML configuration file that ends with virtualbox.(yml|yaml) or vbox.(yml|yaml).
  • The inventory_hostname is always the ‘Name’ of the virtualbox instance.

Parameters

Parameter Choices/Defaults Configuration Comments

cache

boolean

  • 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

compose

dictionary

Default:

{}

Create vars from jinja2 expressions.

groups

dictionary

Default:

{}

Add hosts to group based on Jinja2 conditionals.

keyed_groups

list

Default:

[]

Add hosts to group based on the values of a variable.

network_info_path

-

Default:

"/VirtualBox/GuestInfo/Net/0/V4/IP"

property path to query for network information (ansible_host)

plugin

- / required

  • virtualbox

token that ensures this is a source file for the 'virtualbox' plugin

query

dictionary

Default:

{}

create vars from virtualbox properties

running_only

boolean

Default:

"no"

toggles showing all vms vs only those currently running

settings_password_file

-

provide a file containing the settings password (equivalent to --settingspwfile)

strict

boolean

  • no

  • yes

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.



Examples

# file must be named vbox.yaml or vbox.yml
simple_config_file:
    plugin: virtualbox
    settings_password_file: /etc/virtulbox/secrets
    query:
      logged_in_users: /VirtualBox/GuestInfo/OS/LoggedInUsersList
    compose:
      ansible_connection: ('indows' in vbox_Guest_OS)|ternary('winrm', 'ssh')

Status

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.


© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.8/plugins/inventory/virtualbox.html