xref: /spdk/test/vhost/readonly/delete_partition_vm.sh (revision b30d57cdad6d2bc75cc1e4e2ebbcebcb0d98dcfa)
1#!/usr/bin/env bash
2
3set -xe
4
5testdir=$(readlink -f $(dirname $0))
6
7disk_name="vda"
8test_folder_name="readonly_test"
9test_file_name="some_test_file"
10
11function error() {
12	echo "==========="
13	echo -e "ERROR: $*"
14	echo "==========="
15	trap - ERR
16	set +e
17	umount "$test_folder_name"
18	rm -rf "${testdir:?}/${test_folder_name:?}"
19	exit 1
20}
21
22trap 'error "In delete_partition_vm.sh, line:" "${LINENO}"' ERR
23
24if [[ ! -d "/sys/block/$disk_name" ]]; then
25	error "No vhost-blk disk found!"
26fi
27
28if (($(lsblk -r -n -o RO -d "/dev/$disk_name") == 1)); then
29	error "Vhost-blk disk is set as readonly!"
30fi
31
32mkdir -p $test_folder_name
33
34echo "INFO: Mounting disk"
35mount /dev/$disk_name"1" $test_folder_name
36
37echo "INFO: Removing folder and unmounting $test_folder_name"
38umount "$test_folder_name"
39rm -rf "${testdir:?}/${test_folder_name:?}"
40
41echo "INFO: Deleting partition"
42echo -e "d\n1\nw" | fdisk /dev/$disk_name
43