Note
This plugin is part of the community.general collection.
To install it use: ansible-galaxy collection install community.general.
To use it in a playbook, specify: community.general.kubevirt.
The below requirements are needed on the local controller node that executes this inventory.
| Parameter | Choices/Defaults | Configuration | Comments | |
|---|---|---|---|---|
| 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. | ||
| connections list / elements=string | Optional list of cluster connection settings. If no connections are provided, the default ~/.kube/config and active context will be used, and objects will be returned for all namespaces the active user is authorized to access. | |||
| annotation_variable string | Default: "ansible" | Specify the name of the annotation which provides data, which should be used as inventory host variables. Note, that the value in ansible annotations should be json. | ||
| api_key string | Token used to authenticate with the API. Can also be specified via K8S_AUTH_API_KEY environment variable. | |||
| api_version string | Specify the KubeVirt API version. | |||
| cert_file string | Path to a certificate used to authenticate with the API. Can also be specified via K8S_AUTH_CERT_FILE environment variable. | |||
| context string | The name of a context found in the config file. Can also be specified via K8S_AUTH_CONTEXT environment variable. | |||
| host string | Provide a URL for accessing the API. Can also be specified via K8S_AUTH_HOST environment variable. | |||
| key_file string | Path to a key file used to authenticate with the API. Can also be specified via K8S_AUTH_HOST environment variable. | |||
| kubeconfig string | Path to an existing Kubernetes config file. If not provided, and no other connection options are provided, the OpenShift client will attempt to load the default configuration file from ~/.kube/config.json. Can also be specified via K8S_AUTH_KUBECONFIG environment variable. | |||
| name string | Optional name to assign to the cluster. If not provided, a name is constructed from the server and port. | |||
| namespaces list / elements=string | List of namespaces. If not specified, will fetch all virtual machines for all namespaces user is authorized to access. | |||
| network_name string | In case of multiple network attached to virtual machine, define which interface should be returned as primary IP address. aliases: interface_name | |||
| password string | Provide a password for authenticating with the API. Can also be specified via K8S_AUTH_PASSWORD environment variable. | |||
| ssl_ca_cert string | Path to a CA certificate used to authenticate with the API. Can also be specified via K8S_AUTH_SSL_CA_CERT environment variable. | |||
| username string | Provide a username for authenticating with the API. Can also be specified via K8S_AUTH_USERNAME environment variable. | |||
| verify_ssl boolean |
| Whether or not to verify the API server's SSL certificates. Can also be specified via K8S_AUTH_VERIFY_SSL environment variable. | ||
| groups dictionary | Default: {} | Add hosts to group based on Jinja2 conditionals. | ||
| host_format string | Default: "{namespace}-{name}-{uid}" | Specify the format of the host in the inventory group. | ||
| keyed_groups list / elements=string | Default: [] | Add hosts to group based on the values of a variable. | ||
| plugin string / required |
| token that ensures this is a source file for the 'kubevirt' 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. | ||
# File must be named kubevirt.yaml or kubevirt.yml
# Authenticate with token, and return all virtual machines for all namespaces
plugin: community.general.kubevirt
connections:
- host: https://kubevirt.io
token: xxxxxxxxxxxxxxxx
ssl_verify: false
# Use default config (~/.kube/config) file and active context, and return vms with interfaces
# connected to network myovsnetwork and from namespace vms
plugin: community.general.kubevirt
connections:
- namespaces:
- vms
network_name: myovsnetwork
© 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/community/general/kubevirt_inventory.html