summaryrefslogtreecommitdiffstats
path: root/builder/dnbd3-rootfs/scripts
diff options
context:
space:
mode:
Diffstat (limited to 'builder/dnbd3-rootfs/scripts')
-rwxr-xr-xbuilder/dnbd3-rootfs/scripts/container-unpack-xmount.sh11
1 files changed, 9 insertions, 2 deletions
diff --git a/builder/dnbd3-rootfs/scripts/container-unpack-xmount.sh b/builder/dnbd3-rootfs/scripts/container-unpack-xmount.sh
index 05dd7940..d40e8dad 100755
--- a/builder/dnbd3-rootfs/scripts/container-unpack-xmount.sh
+++ b/builder/dnbd3-rootfs/scripts/container-unpack-xmount.sh
@@ -2,19 +2,26 @@
# -*- coding: utf-8 -*-
# region imports
source '/usr/lib/rebash/core.sh'
+core.import logging
+core.import utils
core.import exceptions
exceptions.activate
# endregion
+logging.set_level info
+logging.set_commands_level info
in_device="$1"
mkdir --parents /mnt/xmount
loop_device="$(losetup --find)"
-if systemd-preserve-process-marker xmount --in qemu "$in_device" --out raw \
+if ! utils.dependecy_check xmount; then
+ logging.warn "\"xmount\" not found, assuming raw image."
+ losetup "$loop_device" "$in_device"--partscan
+elif systemd-preserve-process-marker xmount --in qemu "$in_device" --out raw \
/mnt/xmount
then
losetup "$loop_device" /mnt/xmount/*.dd --partscan
else
- # assume raw disk image
+ logging.warn "\"xmount\" call failed, assuming raw image."
losetup "$loop_device" "$in_device"--partscan
fi
udevadm settle