mirror of
https://github.com/ceph/ceph
synced 2025-04-30 06:38:54 +00:00
Merge pull request #8216 from ceph/wip-rbd-maint-ops
qa/workunits/rbd: new online maintenance op tests Reviewed-by: Josh Durgin <jdurgin@redhat.com>
This commit is contained in:
commit
ae13d6ff55
44
qa/workunits/rbd/qemu_dynamic_features.sh
Executable file
44
qa/workunits/rbd/qemu_dynamic_features.sh
Executable file
@ -0,0 +1,44 @@
|
|||||||
|
#!/bin/sh -ex
|
||||||
|
|
||||||
|
if [[ -z "${IMAGE_NAME}" ]]; then
|
||||||
|
echo image name must be provided
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
is_qemu_running() {
|
||||||
|
rbd status ${IMAGE_NAME} | grep -v "Watchers: none"
|
||||||
|
}
|
||||||
|
|
||||||
|
wait_for_qemu() {
|
||||||
|
while ! is_qemu_running ; do
|
||||||
|
echo "*** Waiting for QEMU"
|
||||||
|
sleep 30
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
rbd feature disable ${IMAGE_NAME} journaling || true
|
||||||
|
rbd feature disable ${IMAGE_NAME} fast-diff || true
|
||||||
|
rbd feature disable ${IMAGE_NAME} object-map || true
|
||||||
|
rbd feature disable ${IMAGE_NAME} exclusive-lock || true
|
||||||
|
|
||||||
|
wait_for_qemu
|
||||||
|
while is_qemu_running ; do
|
||||||
|
echo "*** Enabling all features"
|
||||||
|
rbd feature enable ${IMAGE_NAME} exclusive-lock
|
||||||
|
rbd feature enable ${IMAGE_NAME} journaling
|
||||||
|
rbd feature enable ${IMAGE_NAME} object-map
|
||||||
|
rbd feature enable ${IMAGE_NAME} fast-diff
|
||||||
|
if is_qemu_running ; then
|
||||||
|
sleep 60
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "*** Disabling all features"
|
||||||
|
rbd feature disable ${IMAGE_NAME} journaling
|
||||||
|
rbd feature disable ${IMAGE_NAME} fast-diff
|
||||||
|
rbd feature disable ${IMAGE_NAME} object-map
|
||||||
|
rbd feature disable ${IMAGE_NAME} exclusive-lock
|
||||||
|
if is_qemu_running ; then
|
||||||
|
sleep 60
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
36
qa/workunits/rbd/qemu_rebuild_object_map.sh
Executable file
36
qa/workunits/rbd/qemu_rebuild_object_map.sh
Executable file
@ -0,0 +1,36 @@
|
|||||||
|
#!/bin/sh -ex
|
||||||
|
|
||||||
|
if [[ -z "${IMAGE_NAME}" ]]; then
|
||||||
|
echo image name must be provided
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
is_qemu_running() {
|
||||||
|
rbd status ${IMAGE_NAME} | grep -v "Watchers: none"
|
||||||
|
}
|
||||||
|
|
||||||
|
wait_for_qemu() {
|
||||||
|
while ! is_qemu_running ; do
|
||||||
|
echo "*** Waiting for QEMU"
|
||||||
|
sleep 30
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
rbd feature disable ${IMAGE_NAME} journaling || true
|
||||||
|
rbd feature disable ${IMAGE_NAME} fast-diff || true
|
||||||
|
rbd feature disable ${IMAGE_NAME} object-map || true
|
||||||
|
rbd feature disable ${IMAGE_NAME} exclusive-lock || true
|
||||||
|
|
||||||
|
rbd feature enable ${IMAGE_NAME} exclusive-lock
|
||||||
|
rbd feature enable ${IMAGE_NAME} object-map
|
||||||
|
|
||||||
|
wait_for_qemu
|
||||||
|
while is_qemu_running ; do
|
||||||
|
echo "*** Rebuilding object map"
|
||||||
|
rbd object-map rebuild ${IMAGE_NAME}
|
||||||
|
|
||||||
|
if is_qemu_running ; then
|
||||||
|
sleep 60
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
Loading…
Reference in New Issue
Block a user