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:
Josh Durgin 2016-03-18 14:21:01 -07:00
commit ae13d6ff55
2 changed files with 80 additions and 0 deletions

View 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

View 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