Skip to content

Commit 629e853

Browse files
committed
CI test disk remove and VM reboot for all disk types
Signed-off-by: Justin Cinkelj <[email protected]>
1 parent 2fdff38 commit 629e853

File tree

2 files changed

+26
-5
lines changed

2 files changed

+26
-5
lines changed

tests/integration/targets/vm__remove_disk/tasks/03_remove_disk_running_with_reboot.yml

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -30,10 +30,10 @@
3030
scale_computing.hypercore.vm:
3131
<<: *vm_a_definition
3232
disks:
33-
- type: ide_disk
33+
- type: "{{ disk_type }}"
3434
disk_slot: 0
3535
size: "{{ '10 GB' | human_to_bytes }}"
36-
- type: ide_disk
36+
- type: "{{ disk_type }}"
3737
disk_slot: 1
3838
size: "{{ '11 GB' | human_to_bytes }}"
3939
register: vm_result
@@ -47,6 +47,8 @@
4747
- vm_result.record.0.description == "VM remove disk CI test"
4848
- vm_result.record.0.vm_name == "{{ vm_name_a }}"
4949
- vm_result.record.0.disks | length == 2
50+
- vm_result.record.0.disks.0.type == disk_type
51+
- vm_result.record.0.disks.1.type == disk_type
5052
- vm_result.vm_rebooted == False
5153
- vm_info_a_initial_result.records.0.description == "VM remove disk CI test"
5254
- vm_info_a_initial_result.records.0.vm_name == "{{ vm_name_a }}"
@@ -55,15 +57,17 @@
5557

5658
# ------------------------------------------------------------------------------------------------------------------
5759
# Remove disk from running VM
58-
# Shutdown is allowed, and needed.
60+
# Force shutdown is allowed, and for disk_type:
61+
# - ide_disk: force shutdown is needed to remove disk.
62+
# - virtio_disk: in some HC3 versions disk can be removed from a running VM.
5963
- name: Remove disk from running VM with reboot
6064
block: &remove_disk_from_vm
6165
- name: Remove disk from running VM {{ vm_name_a }}
6266
scale_computing.hypercore.vm:
6367
<<: *vm_a_definition
6468
disks:
6569
# remove 1st disk, keep 2nd disk
66-
- type: ide_disk
70+
- type: "{{ disk_type }}"
6771
disk_slot: 1
6872
size: "{{ '11 GB' | human_to_bytes }}"
6973
force_reboot: True
@@ -78,11 +82,12 @@
7882
- vm_result is succeeded
7983
- vm_info_a_result.records.0.power_state == "started"
8084
- vm_info_a_result.records.0.disks | length == 1
85+
- vm_info_a_result.records.0.disks.0.type == disk_type
8186
- vm_info_a_result.records.0.disks.0.uuid == vm_info_a_initial_result.records.0.disks.1.uuid
8287
- ansible.builtin.assert:
8388
that:
8489
- vm_result is changed
85-
- vm_result.vm_rebooted == True
90+
- vm_result.vm_rebooted == expected_vm_reboot
8691

8792
- name: Remove disk from running VM with reboot - idempotence
8893
block:

tests/integration/targets/vm__remove_disk/tasks/main.yml

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,3 +22,19 @@
2222
- include_tasks: 01_remove_disk_stopped.yml
2323
- include_tasks: 02_remove_disk_running.yml
2424
- include_tasks: 03_remove_disk_running_with_reboot.yml
25+
vars:
26+
disk_type: ide_disk
27+
expected_vm_reboot: True
28+
- name: Get HyperCore version
29+
scale_computing.hypercore.cluster_info:
30+
register: cluster_info
31+
- include_tasks: 03_remove_disk_running_with_reboot.yml
32+
vars:
33+
disk_type: virtio_disk
34+
# HyperCore 9.1.14 could remove disk from running VM
35+
# HyperCore 9.2.13, 9.2.17 could not remove disk from running VM
36+
expected_vm_reboot: "{{ cluster_info.record.icos_version.startswith('9.2') }}"
37+
- include_tasks: 03_remove_disk_running_with_reboot.yml
38+
vars:
39+
disk_type: scsi_disk
40+
expected_vm_reboot: False

0 commit comments

Comments
 (0)