# Lean Ansible bindings for KubeVirt

This repository hosts the `kubevirt.core` Ansible Collection, which provides virtual machine operations and an inventory source for use with Ansible.

## Ansible and Python version compatibility

This collection has been tested against Ansible versions >=2.14,<=2.16 and Python versions >=3.9,<=3.12.

See the Ansible core support matrix for supported combinations.

## Included content

### Plugins

- `kubevirt`: Inventory source for KubeVirt VirtualMachines

- `kubevirt_vm`: Create or delete KubeVirt VirtualMachines

- `kubevirt_vm_info`: Describe KubeVirt VirtualMachines

## Using this collection

### Installing the Collection from Ansible Galaxy

Before using this collection, you need to install it with the Ansible Galaxy command-line tool:

    ansible-galaxy collection install kubevirt.core

### Build and install locally

Clone the repository, checkout the tag you want to build, or pick the main branch for the development version; then:

    ansible-galaxy collection build .
    ansible-galaxy collection install kubevirt-kubevirt.core-*.tar.gz

### Dependencies

#### Ansible collections

- kubernetes.core>=3.0.1

To install all the dependencies:

    ansible-galaxy collection install -r requirements.yml

#### Python libraries

- jinja2

- jsonpatch

- kubernetes>=28.1.0

- PyYAML>=3.11

To install all the dependencies:

    pip install -r requirements.txt

See Ansible Using collections for more details.

## Code of Conduct

We follow the KubeVirt Code of Conduct.

## Contributing to this collection

The content of this collection is made by people like you, a community of individuals collaborating on making the world better through developing automation software.

We are actively accepting new contributors.

Any kind of contribution is very welcome.

You don’t know how to start? Refer to our contribution guide!

We use the following guidelines:

- CONTRIBUTING.md

- REVIEW_CHECKLIST.md

- Ansible Community Guide

- Ansible Development Guide

- Ansible Collection Development Guide

## Collection maintenance

The current maintainers are listed in the OWNERS file. If you have questions or need help, feel free to mention them in the proposals.

To learn how to maintain / become a maintainer of this collection, refer to the Maintainer guidelines.

## Governance

The process of decision making in this collection is based on discussing and finding consensus among participants.

Every voice is important. If you have something on your mind, create an issue or dedicated discussion and let’s discuss it!

## Licensing

GNU General Public License v3.0 or later.

See LICENSE to see the full text.