| #!/bin/sh |
| # Copyright (C) 2011 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA |
| |
| SKIP_WITH_LVMLOCKD=1 |
| SKIP_WITH_LVMPOLLD=1 |
| |
| . lib/inittest |
| |
| flatten() { |
| cat > flatten.config |
| for s in `egrep '^[a-z]+ {$' flatten.config | sed -e s,{$,,`; do |
| sed -e "/^$s/,/^}/p;d" flatten.config | sed -e '1d;$d' | sed -e "s,^[ \t]*,$s/,"; |
| done |
| } |
| |
| # clvmd might not be started fast enough and |
| # lvm still activates locking for all commands. |
| # FIXME: Either make longer start delay, |
| # or even better do not initialize |
| # locking for commands like 'dumpconfig' |
| #aux lvmconf "global/locking_type=0" |
| |
| lvm dumpconfig -f lvmdumpconfig |
| flatten < lvmdumpconfig | sort > config.dump |
| flatten < etc/lvm.conf | sort > config.input |
| # check that dumpconfig output corresponds to the lvm.conf input |
| diff -wu config.input config.dump |
| |
| # and that merging multiple config files (through tags) works |
| lvm dumpconfig -f lvmdumpconfig |
| flatten < lvmdumpconfig | not grep 'log/verbose=1' |
| lvm dumpconfig -f lvmdumpconfig |
| flatten < lvmdumpconfig | grep 'log/indent=1' |
| |
| aux lvmconf 'tags/@foo {}' |
| echo 'log { verbose = 1 }' > etc/lvm_foo.conf |
| lvm dumpconfig -f lvmdumpconfig |
| flatten < lvmdumpconfig | grep 'log/verbose=1' |
| lvm dumpconfig -f lvmdumpconfig |
| flatten < lvmdumpconfig | grep 'log/indent=1' |