 da3eed582b
			
		
	
	
		da3eed582b
		
			
		
	
	
	
	
		
			
			This requires creating LVM volume group, so create on based on loop dev in /tmp. This is rather rough, but if any of this fails, run the tests anyway - it will simply skip LVM tests.
		
			
				
	
	
		
			28 lines
		
	
	
		
			909 B
		
	
	
	
		
			Plaintext
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			28 lines
		
	
	
		
			909 B
		
	
	
	
		
			Plaintext
		
	
	
		
			Executable File
		
	
	
	
	
| # This is to include LVM-requiring tests in Travis-CI
 | |
| if [ "$1" = "setup-lvm" -a -n "$2" ]; then
 | |
|     POOL_PATH=$2
 | |
|     VG_NAME=`echo $POOL_PATH | cut -f 1 -d /`
 | |
|     POOL_NAME=`echo $POOL_PATH | cut -f 2 -d /`
 | |
|     if lvs $VG_NAME >/dev/null 2>&1 || lvs $POOL_PATH >/dev/null 2>&1; then
 | |
|         echo "WARNING: either VG '$VG_NAME' or thin pool '$POOL_PATH' already exists, not reusing" >&2
 | |
|         exit 1
 | |
|     fi
 | |
|     set -e
 | |
|     loop_file=`mktemp`
 | |
|     truncate -s 1G $loop_file
 | |
|     loop_dev=`losetup -f --show $loop_file`
 | |
|     # auto cleanup
 | |
|     rm -f $loop_file
 | |
|     vgcreate "$VG_NAME" $loop_dev
 | |
|     lvcreate --thinpool "$POOL_NAME" --type thin-pool -L 960M "$VG_NAME"
 | |
|     exit 0
 | |
| elif [ "$1" = "cleanup-lvm" -a -n "$2" ]; then
 | |
|     VG_NAME=`echo $2 | cut -f 1 -d /`
 | |
|     set -e
 | |
|     pvs=`vgs --noheadings -o pv_name $VG_NAME | tr -d ' '`
 | |
|     lvremove -f "$2"
 | |
|     vgremove "$VG_NAME"
 | |
|     losetup -d $pvs
 | |
|     exit 0
 | |
| fi
 |