]> git.proxmox.com Git - ceph.git/blob - ceph/src/spdk/test/vhost/readonly/disabled_readonly_vm.sh
update sources to ceph Nautilus 14.2.1
[ceph.git] / ceph / src / spdk / test / vhost / readonly / disabled_readonly_vm.sh
1 #!/usr/bin/env bash
2
3 set -xe
4 BASE_DIR=$(readlink -f $(dirname $0))
5
6 disk_name="vda"
7 test_folder_name="readonly_test"
8 test_file_name="some_test_file"
9
10 function error()
11 {
12 echo "==========="
13 echo -e "ERROR: $@"
14 echo "==========="
15 trap - ERR
16 set +e
17 umount "$test_folder_name"
18 rm -rf "$BASE_DIR/$test_folder_name"
19 exit 1
20 }
21
22 trap 'error "In disabled_readonly_vm.sh, line:" "${LINENO}"' ERR
23
24 if [[ ! -d "/sys/block/$disk_name" ]]; then
25 error "No vhost-blk disk found!"
26 fi
27
28 if (( $(lsblk -r -n -o RO -d "/dev/$disk_name") == 1 )); then
29 error "Vhost-blk disk is set as readonly!"
30 fi
31
32 parted -s /dev/$disk_name mklabel gpt
33 parted -s /dev/$disk_name mkpart primary 2048s 100%
34 partprobe
35 sleep 0.1
36
37 echo "INFO: Creating file system"
38 mkfs.ext4 -F /dev/$disk_name"1"
39
40 echo "INFO: Mounting disk"
41 mkdir -p $test_folder_name
42 mount /dev/$disk_name"1" $test_folder_name
43
44 echo "INFO: Creating a test file $test_file_name"
45 truncate -s "200M" $test_folder_name/$test_file_name
46 umount "$test_folder_name"
47 rm -rf "$BASE_DIR/$test_folder_name"