diff --git a/.ansible-lint b/.ansible-lint index 473975d..56a712b 100644 --- a/.ansible-lint +++ b/.ansible-lint @@ -27,6 +27,7 @@ warn_list: - run-once[task] - var-naming[no-role-prefix] - galaxy[version-incorrect] + - yaml[key-duplicates] skip_list: - jinja[spacing] diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 74c95ad..588e3e6 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -46,71 +46,25 @@ jobs: matrix_exclude: >- [ { - "ansible-version": "stable-2.9" + "ansible-version": "stable-2.12" + }, + { + "ansible-version": "stable-2.13" }, { - "ansible-version": "stable-2.12", "python-version": "3.7" }, { - "ansible-version": "stable-2.12", - "python-version": "3.11" - }, - { - "ansible-version": "stable-2.13", - "python-version": "3.7" - }, - { - "ansible-version": "stable-2.13", - "python-version": "3.11" - }, - { - "ansible-version": "stable-2.14", - "python-version": "3.7" - }, - { - "ansible-version": "stable-2.14", "python-version": "3.8" }, { - "ansible-version": "stable-2.14", - "python-version": "3.11" - }, - { - "ansible-version": "stable-2.15", - "python-version": "3.7" - }, - { - "ansible-version": "stable-2.15", - "python-version": "3.8" - }, - { - "ansible-version": "stable-2.15", - "python-version": "3.11" - }, - { - "ansible-version": "milestone", - "python-version": "3.7" - }, - { - "ansible-version": "milestone", - "python-version": "3.8" - }, - { - "ansible-version": "milestone", "python-version": "3.9" }, { - "ansible-version": "devel", - "python-version": "3.7" + "python-version": "3.10" }, { - "ansible-version": "devel", - "python-version": "3.8" - }, - { - "ansible-version": "devel", - "python-version": "3.9" + "python-version": "3.12" } ] unit-source: @@ -121,63 +75,25 @@ jobs: matrix_exclude: >- [ { - "python-version": "3.11" + "ansible-version": "stable-2.12" + }, + { + "ansible-version": "stable-2.13" }, { - "ansible-version": "stable-2.12", "python-version": "3.7" }, { - "ansible-version": "stable-2.13", - "python-version": "3.7" - }, - { - "ansible-version": "stable-2.12", "python-version": "3.8" }, { - "ansible-version": "stable-2.13", - "python-version": "3.8" - }, - { - "ansible-version": "stable-2.14", - "python-version": "3.7" - }, - { - "ansible-version": "stable-2.14", - "python-version": "3.8" - }, - { - "ansible-version": "stable-2.15", - "python-version": "3.7" - }, - { - "ansible-version": "stable-2.15", - "python-version": "3.8" - }, - { - "ansible-version": "milestone", - "python-version": "3.7" - }, - { - "ansible-version": "milestone", - "python-version": "3.8" - }, - { - "ansible-version": "milestone", "python-version": "3.9" }, { - "ansible-version": "devel", - "python-version": "3.7" + "python-version": "3.10" }, { - "ansible-version": "devel", - "python-version": "3.8" - }, - { - "ansible-version": "devel", - "python-version": "3.9" + "python-version": "3.12" } ] collection_pre_install: '' diff --git a/.github/workflows/integration.yml b/.github/workflows/integration.yml index 7c848c8..dd3cd9d 100644 --- a/.github/workflows/integration.yml +++ b/.github/workflows/integration.yml @@ -111,15 +111,11 @@ jobs: matrix: test-target: ${{ fromJSON(inputs.ansible_test_targets) }} ansible-version: - - stable-2.9 - - stable-2.12 - stable-2.14 - stable-2.15 - milestone - devel python-version: - - "3.8" - - "3.9" - "3.11" exclude: ${{ fromJSON(inputs.matrix_exclude) }} include: ${{ fromJSON(inputs.matrix_include) }} diff --git a/README.md b/README.md index 9963b1e..cb90fc6 100644 --- a/README.md +++ b/README.md @@ -8,7 +8,7 @@ This repository hosts the `kubevirt.core` Ansible Collection, which provides vir ## Ansible version compatibility -This collection has been tested against following Ansible versions: **>=2.9.10**. +This collection has been tested against following Ansible versions: **>=2.14.0**. ## Included content diff --git a/meta/runtime.yml b/meta/runtime.yml index 3b2dfb0..be99ccf 100644 --- a/meta/runtime.yml +++ b/meta/runtime.yml @@ -1,2 +1,2 @@ --- -requires_ansible: '>=2.11.0' # Use '>= 2.9.10' instead, if needed +requires_ansible: '>=2.14.0' diff --git a/plugins/inventory/kubevirt.py b/plugins/inventory/kubevirt.py index fb96a27..6b4f4ea 100644 --- a/plugins/inventory/kubevirt.py +++ b/plugins/inventory/kubevirt.py @@ -134,31 +134,31 @@ EXAMPLES = """ # Authenticate with token, and return all VirtualMachineInstances for all accessible namespaces plugin: kubevirt.core.kubevirt connections: -- host: https://192.168.64.4:8443 - api_key: xxxxxxxxxxxxxxxx - validate_certs: false + - host: https://192.168.64.4:8443 + api_key: xxxxxxxxxxxxxxxx + validate_certs: false # Use default config (~/.kube/config) file and active context, and return VirtualMachineInstances # from namespace testing with interfaces connected to network bridge-network plugin: kubevirt.core.kubevirt connections: -- namespaces: - - testing - network_name: bridge-network + - namespaces: + - testing + network_name: bridge-network # Use default config (~/.kube/config) file and active context, and return VirtualMachineInstances # from namespace testing with label app=test plugin: kubevirt.core.kubevirt connections: -- namespaces: - - testing - label_selector: app=test + - namespaces: + - testing + label_selector: app=test # Use a custom config file, and a specific context. plugin: kubevirt.core.kubevirt connections: -- kubeconfig: /path/to/config - context: 'awx/192-168-64-4:8443/developer' + - kubeconfig: /path/to/config + context: 'awx/192-168-64-4:8443/developer' """ from dataclasses import dataclass diff --git a/plugins/modules/kubevirt_vm.py b/plugins/modules/kubevirt_vm.py index 915771d..e2ccf4d 100644 --- a/plugins/modules/kubevirt_vm.py +++ b/plugins/modules/kubevirt_vm.py @@ -128,27 +128,27 @@ EXAMPLES = """ domain: devices: interfaces: - - name: default - masquerade: {} - - name: bridge-network - bridge: {} + - name: default + masquerade: {} + - name: bridge-network + bridge: {} networks: - - name: default - pod: {} - - name: bridge-network - multus: - networkName: kindexgw + - name: default + pod: {} + - name: bridge-network + multus: + networkName: kindexgw volumes: - - containerDisk: - image: quay.io/containerdisks/fedora:latest - name: containerdisk - - cloudInitNoCloud: - userData: |- - #cloud-config - # The default username is: fedora - ssh_authorized_keys: - - ssh-ed25519 AAAA... - name: cloudinit + - containerDisk: + image: quay.io/containerdisks/fedora:latest + name: containerdisk + - cloudInitNoCloud: + userData: |- + #cloud-config + # The default username is: fedora + ssh_authorized_keys: + - ssh-ed25519 AAAA... + name: cloudinit - name: Create a VirtualMachine with a DataVolume template kubevirt.core.kubevirt_vm: @@ -170,7 +170,7 @@ EXAMPLES = """ url: docker://quay.io/containerdisks/fedora:latest storage: accessModes: - - ReadWriteOnce + - ReadWriteOnce resources: requests: storage: 5Gi @@ -178,16 +178,16 @@ EXAMPLES = """ domain: devices: {} volumes: - - dataVolume: - name: testdv - name: datavolume - - cloudInitNoCloud: - userData: |- - #cloud-config - # The default username is: fedora - ssh_authorized_keys: - - ssh-ed25519 AAAA... - name: cloudinit + - dataVolume: + name: testdv + name: datavolume + - cloudInitNoCloud: + userData: |- + #cloud-config + # The default username is: fedora + ssh_authorized_keys: + - ssh-ed25519 AAAA... + name: cloudinit wait: yes - name: Delete a VirtualMachine