Merge pull request #49 from 0xFelix/cleanup-tests

ci: Cleanup integration tests
This commit is contained in:
kubevirt-bot
2024-03-04 14:38:52 +01:00
committed by GitHub
10 changed files with 55 additions and 64 deletions

View File

@@ -0,0 +1,4 @@
all.yml
empty.yml
label.yml
net.yml

View File

@@ -1,22 +1,18 @@
--- ---
- name: Create VM - name: Create VMs
connection: local connection: local
gather_facts: false gather_facts: false
hosts: localhost hosts: localhost
tasks: tasks:
- name: Create a VirtualMachine - name: Create a VM
kubevirt.core.kubevirt_vm: kubevirt.core.kubevirt_vm:
state: present state: present
name: testvm name: testvm1
namespace: default namespace: default
labels: labels:
app: test app: test
wait: true
wait_timeout: 600
spec: spec:
domain: domain:
cpu:
sockets: 1
memory: memory:
guest: 256Mi guest: 256Mi
devices: devices:
@@ -33,31 +29,26 @@
networkName: kindexgw networkName: kindexgw
volumes: volumes:
- containerDisk: - containerDisk:
image: quay.io/containerdisks/fedora:latest image: quay.io/containerdisks/centos-stream:9
name: containerdisk name: containerdisk
- name: Create a 2nd VirtualMachine wait: true
wait_timeout: 600
- name: Create another VM
kubevirt.core.kubevirt_vm: kubevirt.core.kubevirt_vm:
state: present state: present
name: testvm2 name: testvm2
namespace: default namespace: default
labels: labels:
foo: bar foo: bar
wait: true
wait_timeout: 600
spec: spec:
domain: domain:
cpu:
sockets: 1
memory: memory:
guest: 256Mi guest: 256Mi
devices: devices: {}
interfaces:
- name: default
masquerade: {}
networks:
- name: default
pod: {}
volumes: volumes:
- containerDisk: - containerDisk:
image: quay.io/containerdisks/fedora:latest image: quay.io/containerdisks/centos-stream:9
name: containerdisk name: containerdisk
wait: true
wait_timeout: 600

View File

@@ -2,14 +2,8 @@
set -eux set -eux
set -o pipefail set -o pipefail
export ANSIBLE_ROLES_PATH="../" export ANSIBLE_CALLBACKS_ENABLED=ansible.posix.profile_tasks
export ANSIBLE_INVENTORY_ENABLED=kubevirt.core.kubevirt
USER_CREDENTIALS_DIR=$(pwd)
export USER_CREDENTIALS_DIR
export ANSIBLE_CALLBACKS_ENABLED=profile_tasks
export ANSIBLE_INVENTORY_ENABLED=kubevirt.core.kubevirt,yaml
export ANSIBLE_PYTHON_INTERPRETER=auto_silent
ansible-inventory -i test.kubevirt.yml -y --list --output empty.yml "$@" ansible-inventory -i test.kubevirt.yml -y --list --output empty.yml "$@"

View File

@@ -1,6 +1,7 @@
--- ---
plugin: kubevirt.core.kubevirt plugin: kubevirt.core.kubevirt
connections: connections:
- namespaces: - name: test
namespaces:
- default - default
create_groups: true create_groups: true

View File

@@ -8,7 +8,11 @@
ansible.builtin.include_vars: ansible.builtin.include_vars:
file: empty.yml file: empty.yml
name: inv_empty name: inv_empty
- name: Read inventory after vm creation - name: Assert empty inventory
ansible.builtin.assert:
that:
- inv_empty['all'] is not defined or inv_empty['all']['children']['test']['children']['namespace_default']['hosts'] is not defined
- name: Read inventory after VM creation
ansible.builtin.include_vars: ansible.builtin.include_vars:
file: all.yml file: all.yml
name: inv_all name: inv_all

View File

@@ -0,0 +1 @@
files/

View File

@@ -4,21 +4,18 @@
gather_facts: false gather_facts: false
hosts: localhost hosts: localhost
tasks: tasks:
- name: Create a VirtualMachine - name: Create a VM
kubevirt.core.kubevirt_vm: kubevirt.core.kubevirt_vm:
state: present name: testvm
name: testvm3
namespace: default namespace: default
labels: labels:
app: test app: test
wait: true instancetype:
wait_timeout: 600 name: u1.small
preference:
name: centos.stream9
spec: spec:
domain: domain:
cpu:
sockets: 1
memory:
guest: 1536Mi
devices: devices:
interfaces: interfaces:
- name: default - name: default
@@ -39,5 +36,7 @@
userData: |- userData: |-
#cloud-config #cloud-config
ssh_authorized_keys: ssh_authorized_keys:
- {{ lookup('file', 'pub_key') }} - {{ lookup('file', 'testkey.pub') }}
name: cloudinit name: cloudinitdisk
wait: true
wait_timeout: 600

View File

@@ -4,14 +4,13 @@ set -o pipefail
export ANSIBLE_CALLBACKS_ENABLED=ansible.posix.profile_tasks export ANSIBLE_CALLBACKS_ENABLED=ansible.posix.profile_tasks
export ANSIBLE_INVENTORY_ENABLED=kubevirt.core.kubevirt export ANSIBLE_INVENTORY_ENABLED=kubevirt.core.kubevirt
export ANSIBLE_HOST_KEY_CHECKING=False
[ -d files ] || mkdir files [ -d files ] || mkdir files
[ -f files/priv_key ] || (ssh-keygen -t ed25519 -C test@test -f files/priv_key ; ssh-keygen -y -f files/priv_key > files/pub_key) [ -f files/testkey ] || (ssh-keygen -t ed25519 -C test@test -f files/testkey -N "")
ansible-playbook playbook.yml "$@" ansible-playbook playbook.yml "$@"
ansible-inventory -i test.kubevirt.yml -y --list "$@" ansible-inventory -i test.kubevirt.yml -y --list "$@"
ansible-playbook verify.yml -i test.kubevirt.yml --private-key=files/priv_key "$@" ansible-playbook verify.yml -i test.kubevirt.yml --private-key=files/testkey "$@"
rm "$HOME/.ssh/known_hosts"

View File

@@ -1,5 +1,5 @@
--- ---
- name: Wait for ssh - name: Wait for SSH
connection: local connection: local
gather_facts: false gather_facts: false
hosts: localhost hosts: localhost
@@ -7,18 +7,18 @@
- name: Wait up to 900 seconds for port 22 to become open - name: Wait up to 900 seconds for port 22 to become open
ansible.builtin.wait_for: ansible.builtin.wait_for:
port: 22 port: 22
host: "{{ hostvars['default-testvm3'].ansible_host }}" host: "{{ hostvars['default-testvm'].ansible_host }}"
delay: 30 delay: 30
timeout: 900 timeout: 900
- name: Connect to VM - name: Connect to VM
gather_facts: true gather_facts: true
hosts: default-testvm3 hosts: default-testvm
remote_user: cloud-user remote_user: cloud-user
vars: vars:
ansible_python_interpreter: /usr/bin/python3 ansible_python_interpreter: /usr/bin/python3
tasks: tasks:
- name: Print out virtual machine facts - name: Print VM facts
ansible.builtin.debug: ansible.builtin.debug:
var: ansible_facts var: ansible_facts
@@ -27,10 +27,9 @@
gather_facts: false gather_facts: false
hosts: localhost hosts: localhost
tasks: tasks:
- name: Create a VirtualMachine - name: Create a VM
kubevirt.core.kubevirt_vm: kubevirt.core.kubevirt_vm:
state: present name: testvm
name: testvm3
namespace: default namespace: default
labels: labels:
app: test app: test
@@ -45,11 +44,11 @@
gather_facts: false gather_facts: false
hosts: localhost hosts: localhost
tasks: tasks:
- name: Delete a VirtualMachine - name: Delete a VM
kubevirt.core.kubevirt_vm: kubevirt.core.kubevirt_vm:
state: absent name: testvm
name: testvm3
namespace: default namespace: default
state: absent
wait: true wait: true
- name: Verify VM deletion - name: Verify VM deletion
@@ -57,11 +56,11 @@
gather_facts: false gather_facts: false
hosts: localhost hosts: localhost
tasks: tasks:
- name: Delete a VirtualMachine - name: Delete a VM
kubevirt.core.kubevirt_vm: kubevirt.core.kubevirt_vm:
state: absent name: testvm
name: testvm3
namespace: default namespace: default
state: absent
register: delete register: delete
- name: Assert module reported no changes - name: Assert module reported no changes
ansible.builtin.assert: ansible.builtin.assert:

View File

@@ -4,7 +4,7 @@
gather_facts: false gather_facts: false
hosts: localhost hosts: localhost
tasks: tasks:
- name: Create a VirtualMachine - name: Create a VM
kubevirt.core.kubevirt_vm: kubevirt.core.kubevirt_vm:
name: testvm name: testvm
namespace: default namespace: default
@@ -19,7 +19,6 @@
- containerDisk: - containerDisk:
image: quay.io/containerdisks/centos-stream:9 image: quay.io/containerdisks/centos-stream:9
name: containerdisk name: containerdisk
state: present
wait: true wait: true
wait_timeout: 600 wait_timeout: 600
@@ -28,7 +27,7 @@
gather_facts: false gather_facts: false
hosts: localhost hosts: localhost
tasks: tasks:
- name: Describe a VirtualMachine - name: Describe a VM
kubevirt.core.kubevirt_vm_info: kubevirt.core.kubevirt_vm_info:
name: testvm name: testvm
namespace: default namespace: default
@@ -44,7 +43,7 @@
gather_facts: false gather_facts: false
hosts: localhost hosts: localhost
tasks: tasks:
- name: Delete a VirtualMachine - name: Delete a VM
kubevirt.core.kubevirt_vm: kubevirt.core.kubevirt_vm:
name: testvm name: testvm
namespace: default namespace: default
@@ -56,7 +55,7 @@
gather_facts: false gather_facts: false
hosts: localhost hosts: localhost
tasks: tasks:
- name: Delete a VirtualMachine - name: Delete a VM
kubevirt.core.kubevirt_vm: kubevirt.core.kubevirt_vm:
name: testvm name: testvm
namespace: default namespace: default