]> git.proxmox.com Git - ceph.git/blame - ceph/qa/workunits/rbd/qemu_dynamic_features.sh
bump version to 18.2.4-pve3
[ceph.git] / ceph / qa / workunits / rbd / qemu_dynamic_features.sh
CommitLineData
11fdf7f2
TL
1#!/usr/bin/env bash
2set -x
7c673cae
FG
3
4if [[ -z "${IMAGE_NAME}" ]]; then
5 echo image name must be provided
6 exit 1
7fi
8
9is_qemu_running() {
10 rbd status ${IMAGE_NAME} | grep -v "Watchers: none"
11}
12
13wait_for_qemu() {
14 while ! is_qemu_running ; do
15 echo "*** Waiting for QEMU"
16 sleep 30
17 done
18}
19
20wait_for_qemu
21rbd feature disable ${IMAGE_NAME} journaling
7c673cae
FG
22rbd feature disable ${IMAGE_NAME} object-map
23rbd feature disable ${IMAGE_NAME} exclusive-lock
24
25while is_qemu_running ; do
26 echo "*** Enabling all features"
27 rbd feature enable ${IMAGE_NAME} exclusive-lock || break
28 rbd feature enable ${IMAGE_NAME} journaling || break
29 rbd feature enable ${IMAGE_NAME} object-map || break
7c673cae
FG
30 if is_qemu_running ; then
31 sleep 60
32 fi
33
34 echo "*** Disabling all features"
35 rbd feature disable ${IMAGE_NAME} journaling || break
7c673cae
FG
36 rbd feature disable ${IMAGE_NAME} object-map || break
37 rbd feature disable ${IMAGE_NAME} exclusive-lock || break
38 if is_qemu_running ; then
39 sleep 60
40 fi
41done
42
43if is_qemu_running ; then
44 echo "RBD command failed on alive QEMU"
45 exit 1
46fi