mirror of
git://sourceware.org/git/lvm2.git
synced 2024-12-22 17:35:59 +03:00
test: add make check_lvmlockd_test
Which runs lvmlockd in --test mode, without any lock manager. Also make some adjustments to the check_lvmlockd variations using the lock managds.
This commit is contained in:
parent
ed5e5c38b5
commit
161ae36363
@ -3365,6 +3365,11 @@ static void *worker_thread_main(void *arg_in)
|
|||||||
int run_sanlock = lm_is_running_sanlock();
|
int run_sanlock = lm_is_running_sanlock();
|
||||||
int run_dlm = lm_is_running_dlm();
|
int run_dlm = lm_is_running_dlm();
|
||||||
|
|
||||||
|
if (daemon_test) {
|
||||||
|
run_sanlock = gl_use_sanlock;
|
||||||
|
run_dlm = gl_use_dlm;
|
||||||
|
}
|
||||||
|
|
||||||
if (run_sanlock && run_dlm)
|
if (run_sanlock && run_dlm)
|
||||||
act->result = -EXFULL;
|
act->result = -EXFULL;
|
||||||
else if (!run_sanlock && !run_dlm)
|
else if (!run_sanlock && !run_dlm)
|
||||||
|
@ -74,6 +74,7 @@ help:
|
|||||||
@echo " check_lvmpolld Run tests with lvmpolld daemon."
|
@echo " check_lvmpolld Run tests with lvmpolld daemon."
|
||||||
@echo " check_lvmlockd_sanlock Run tests with lvmlockd and sanlock."
|
@echo " check_lvmlockd_sanlock Run tests with lvmlockd and sanlock."
|
||||||
@echo " check_lvmlockd_dlm Run tests with lvmlockd and dlm."
|
@echo " check_lvmlockd_dlm Run tests with lvmlockd and dlm."
|
||||||
|
@echo " check_lvmlockd_test Run tests with lvmlockd --test."
|
||||||
@echo " clean Clean dir."
|
@echo " clean Clean dir."
|
||||||
@echo " help Display callable targets."
|
@echo " help Display callable targets."
|
||||||
@echo -e "\nSupported variables:"
|
@echo -e "\nSupported variables:"
|
||||||
@ -146,26 +147,21 @@ ifeq ("@BUILD_LVMLOCKD@", "yes")
|
|||||||
check_lvmlockd_sanlock: .tests-stamp
|
check_lvmlockd_sanlock: .tests-stamp
|
||||||
VERBOSE=$(VERBOSE) ./lib/runner \
|
VERBOSE=$(VERBOSE) ./lib/runner \
|
||||||
--testdir . --outdir results \
|
--testdir . --outdir results \
|
||||||
--flavours udev-lvmlockd-sanlock --only shell/sanlock-prepare.sh
|
--flavours udev-lvmlockd-sanlock --only shell/aa-lvmlockd-sanlock-prepare.sh,$(T),shell/zz-lvmlockd-sanlock-remove.sh --skip $(S)
|
||||||
VERBOSE=$(VERBOSE) ./lib/runner \
|
|
||||||
--testdir . --outdir results \
|
|
||||||
--flavours udev-lvmlockd-sanlock --only $(T) --skip $(S)
|
|
||||||
VERBOSE=$(VERBOSE) ./lib/runner \
|
|
||||||
--testdir . --outdir results \
|
|
||||||
--flavours udev-lvmlockd-sanlock --only shell/sanlock-remove.sh
|
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifeq ("@BUILD_LVMLOCKD@", "yes")
|
ifeq ("@BUILD_LVMLOCKD@", "yes")
|
||||||
check_lvmlockd_dlm: .tests-stamp
|
check_lvmlockd_dlm: .tests-stamp
|
||||||
VERBOSE=$(VERBOSE) ./lib/runner \
|
VERBOSE=$(VERBOSE) ./lib/runner \
|
||||||
--testdir . --outdir results \
|
--testdir . --outdir results \
|
||||||
--flavours udev-lvmlockd-dlm --only shell/dlm-prepare.sh
|
--flavours udev-lvmlockd-dlm --only shell/aa-lvmlockd-dlm-prepare.sh,$(T),shell/zz-lvmlockd-dlm-remove.sh --skip $(S)
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ("@BUILD_LVMLOCKD@", "yes")
|
||||||
|
check_lvmlockd_test: .tests-stamp
|
||||||
VERBOSE=$(VERBOSE) ./lib/runner \
|
VERBOSE=$(VERBOSE) ./lib/runner \
|
||||||
--testdir . --outdir results \
|
--testdir . --outdir results \
|
||||||
--flavours udev-lvmlockd-dlm --only $(T) --skip $(S)
|
--flavours udev-lvmlockd-test --only shell/aa-lvmlockd-test-prepare.sh,$(T),shell/zz-lvmlockd-test-remove.sh --skip $(S)
|
||||||
VERBOSE=$(VERBOSE) ./lib/runner \
|
|
||||||
--testdir . --outdir results \
|
|
||||||
--flavours udev-lvmlockd-dlm --only shell/dlm-remove.sh
|
|
||||||
endif
|
endif
|
||||||
|
|
||||||
DATADIR = $(datadir)/lvm2-testsuite
|
DATADIR = $(datadir)/lvm2-testsuite
|
||||||
@ -185,6 +181,7 @@ LIB_FLAVOURS = \
|
|||||||
flavour-udev-lvmpolld\
|
flavour-udev-lvmpolld\
|
||||||
flavour-udev-lvmlockd-sanlock\
|
flavour-udev-lvmlockd-sanlock\
|
||||||
flavour-udev-lvmlockd-dlm\
|
flavour-udev-lvmlockd-dlm\
|
||||||
|
flavour-udev-lvmlockd-test\
|
||||||
flavour-udev-vanilla
|
flavour-udev-vanilla
|
||||||
|
|
||||||
LIB_LVMLOCKD_CONF = \
|
LIB_LVMLOCKD_CONF = \
|
||||||
|
6
test/lib/flavour-udev-lvmlockd-test.sh
Normal file
6
test/lib/flavour-udev-lvmlockd-test.sh
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
export LVM_TEST_LOCKING=1
|
||||||
|
export LVM_TEST_LVMETAD=1
|
||||||
|
export LVM_TEST_LVMPOLLD=1
|
||||||
|
export LVM_TEST_LVMLOCKD=1
|
||||||
|
export LVM_TEST_LVMLOCKD_TEST=1
|
||||||
|
export LVM_TEST_DEVDIR=/dev
|
@ -1,2 +1,2 @@
|
|||||||
# created by lvm test suite
|
# created by lvm test suite
|
||||||
SANLOCKOPTS="-U sanlock -G sanlock -w 0"
|
use_watchdog=0
|
||||||
|
@ -16,7 +16,7 @@ test_description='Set up things to run tests with sanlock'
|
|||||||
|
|
||||||
[ -z "$LVM_TEST_LOCK_TYPE_SANLOCK" ] && skip;
|
[ -z "$LVM_TEST_LOCK_TYPE_SANLOCK" ] && skip;
|
||||||
|
|
||||||
SANLOCK_CONF="/etc/sysconfig/sanlock"
|
SANLOCK_CONF="/etc/sanlock/sanlock.conf"
|
||||||
create_sanlock_conf() {
|
create_sanlock_conf() {
|
||||||
if test -a $SANLOCK_CONF; then
|
if test -a $SANLOCK_CONF; then
|
||||||
if ! grep "created by lvm test suite" $SANLOCK_CONF; then
|
if ! grep "created by lvm test suite" $SANLOCK_CONF; then
|
||||||
@ -43,9 +43,7 @@ prepare_lvmlockd_sanlock() {
|
|||||||
|
|
||||||
create_sanlock_conf
|
create_sanlock_conf
|
||||||
|
|
||||||
# FIXME: use 'systemctl start sanlock' once we can pass options
|
systemctl start sanlock
|
||||||
sanlock daemon -U sanlock -G sanlock -w 0 -e testhostname
|
|
||||||
sleep 1
|
|
||||||
if ! pgrep sanlock; then
|
if ! pgrep sanlock; then
|
||||||
echo "Failed to start sanlock"
|
echo "Failed to start sanlock"
|
||||||
exit 1
|
exit 1
|
44
test/shell/aa-lvmlockd-test-prepare.sh
Normal file
44
test/shell/aa-lvmlockd-test-prepare.sh
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
# Copyright (C) 2008-2012 Red Hat, Inc. All rights reserved.
|
||||||
|
#
|
||||||
|
# This copyrighted material is made available to anyone wishing to use,
|
||||||
|
# modify, copy, or redistribute it subject to the terms and conditions
|
||||||
|
# of the GNU General Public License v.2.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with this program; if not, write to the Free Software Foundation,
|
||||||
|
# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||||
|
|
||||||
|
test_description='Set up things to run tests with lvmlockd'
|
||||||
|
|
||||||
|
. lib/utils
|
||||||
|
. lib/inittest
|
||||||
|
|
||||||
|
[ -z "$LVM_TEST_LVMLOCKD_TEST" ] && skip;
|
||||||
|
|
||||||
|
# TODO: allow this to be configured sanlock/dlm
|
||||||
|
LVM_TEST_LVMLOCKD_TEST_DLM=1
|
||||||
|
|
||||||
|
prepare_lvmlockd_test() {
|
||||||
|
if pgrep lvmlockd ; then
|
||||||
|
echo "Cannot run while existing lvmlockd process exists"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test -n "$LVM_TEST_LVMLOCKD_TEST_SANLOCK"; then
|
||||||
|
lvmlockd --test -g sanlock
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test -n "$LVM_TEST_LVMLOCKD_TEST_DLM"; then
|
||||||
|
lvmlockd --test -g dlm
|
||||||
|
fi
|
||||||
|
|
||||||
|
sleep 1
|
||||||
|
if ! pgrep lvmlockd ; then
|
||||||
|
echo "Failed to start lvmlockd"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
prepare_lvmlockd_test
|
||||||
|
|
@ -27,6 +27,12 @@ LOCKARGS2="dlm"
|
|||||||
LOCKARGS3="dlm"
|
LOCKARGS3="dlm"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if test -n "$LVM_TEST_LVMLOCKD_TEST" ; then
|
||||||
|
LOCKARGS1="dlm"
|
||||||
|
LOCKARGS2="dlm"
|
||||||
|
LOCKARGS3="dlm"
|
||||||
|
fi
|
||||||
|
|
||||||
aux prepare_devs 5
|
aux prepare_devs 5
|
||||||
|
|
||||||
vgcreate --shared $vg "$dev1" "$dev2" "$dev3" "$dev4" "$dev5"
|
vgcreate --shared $vg "$dev1" "$dev2" "$dev3" "$dev4" "$dev5"
|
||||||
|
@ -27,10 +27,12 @@ vgremove --config 'devices { global_filter=["a|GL_DEV|", "r|.*|"] filter=["a|GL_
|
|||||||
# sanlock log_dump > sanlock-debug.txt
|
# sanlock log_dump > sanlock-debug.txt
|
||||||
|
|
||||||
killall lvmlockd
|
killall lvmlockd
|
||||||
|
sleep 1
|
||||||
killall sanlock
|
killall sanlock
|
||||||
|
sleep 1
|
||||||
|
|
||||||
killall -9 lvmlockd
|
killall -9 lvmlockd || true
|
||||||
killall -9 sanlock
|
killall -9 sanlock || true
|
||||||
|
|
||||||
# FIXME: dmsetup remove LVMTEST*-lvmlock
|
# FIXME: dmsetup remove LVMTEST*-lvmlock
|
||||||
|
|
23
test/shell/zz-lvmlockd-test-remove.sh
Normal file
23
test/shell/zz-lvmlockd-test-remove.sh
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
# Copyright (C) 2008-2012 Red Hat, Inc. All rights reserved.
|
||||||
|
#
|
||||||
|
# This copyrighted material is made available to anyone wishing to use,
|
||||||
|
# modify, copy, or redistribute it subject to the terms and conditions
|
||||||
|
# of the GNU General Public License v.2.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with this program; if not, write to the Free Software Foundation,
|
||||||
|
# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||||
|
|
||||||
|
test_description='Remove the dlm test setup'
|
||||||
|
|
||||||
|
. lib/inittest
|
||||||
|
|
||||||
|
[ -z "$LVM_TEST_LVMLOCKD_TEST" ] && skip;
|
||||||
|
|
||||||
|
killall lvmlockd
|
||||||
|
sleep 1
|
||||||
|
killall lvmlockd || true
|
||||||
|
sleep 1
|
||||||
|
killall -9 lvmlockd || true
|
||||||
|
|
Loading…
Reference in New Issue
Block a user