You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
34 lines
722 B
34 lines
722 B
4 years ago
|
#!/bin/sh -eux
|
||
|
|
||
|
case "$PACKER_BUILDER_TYPE" in
|
||
|
qemu) exit 0 ;;
|
||
|
esac
|
||
|
|
||
|
major_version="`uname -r | awk -F. '{print $1}'`";
|
||
|
|
||
|
if [ "$major_version" -eq 10 ]; then
|
||
|
ZROOT="zroot"
|
||
|
else
|
||
|
ZROOT="zroot/ROOT/default"
|
||
|
fi
|
||
|
|
||
|
COMPRESSION=$(zfs get -H compression $ZROOT | cut -f3);
|
||
|
|
||
|
zfs set compression=off $ZROOT;
|
||
|
dd if=/dev/zero of=/EMPTY bs=1m &
|
||
|
PID=$!;
|
||
|
|
||
|
avail=$(zfs get -pH avail $ZROOT | cut -f3);
|
||
|
while [ "$avail" -ne 0 ]; do
|
||
|
sleep 15;
|
||
|
avail=$(zfs get -pH avail $ZROOT | cut -f3);
|
||
|
done
|
||
|
|
||
|
kill $PID || echo "dd already exited";
|
||
|
|
||
|
rm -f /EMPTY;
|
||
|
# Block until the empty file has been removed, otherwise, Packer
|
||
|
# will try to kill the box while the disk is still full and that's bad
|
||
|
sync;
|
||
|
zfs set compression=$COMPRESSION $ZROOT;
|