File openstack-loopback-lvm of Package openstack-quickstart

#!/bin/sh

f=/var/lib/nova/volumes
loop=/dev/loop0
modprobe loop

if vgscan |grep -q nova-volumes ; then
  echo "using existing nova-volumes VG"
  vgchange -ay nova-volumes
  exit 0
fi

# stop/cleanup
#vgremove nova-volumes
vgchange -an nova-volumes
#losetup -d $loop


# calc wanted size
size=$(df -P -k /var/lib/nova/|tail -1| perl -ne 'm/^\S+\s*\d+\s+\d+\s+(\d+)/; print int($1*0.3)')

if [ $size -le 2000000 ] ; then
	echo "error detecting free space or FS too small: $size KB"
	exit 12
fi

truncate --size=${size}K $f
losetup $loop $f
pvcreate $loop
vgcreate nova-volumes $loop

vgchange -ay nova-volumes
openSUSE Build Service is sponsored by