summaryrefslogtreecommitdiffstats
path: root/builder/dnbd3-rootfs/hooks/pre-mount/prepare-root-partition.sh
diff options
context:
space:
mode:
authorjandob2015-12-10 15:03:47 +0100
committerjandob2015-12-10 15:03:47 +0100
commit238216497d218afa6e8076ff8ae1255854828677 (patch)
tree07c4e170be8b9592cfc406fc30e6b1824a50d978 /builder/dnbd3-rootfs/hooks/pre-mount/prepare-root-partition.sh
parentMerge branch 'master' of git.openslx.org:openslx-ng/systemd-init (diff)
downloadsystemd-init-238216497d218afa6e8076ff8ae1255854828677.tar.gz
systemd-init-238216497d218afa6e8076ff8ae1255854828677.tar.xz
systemd-init-238216497d218afa6e8076ff8ae1255854828677.zip
add exception handling inside initramfs
Diffstat (limited to 'builder/dnbd3-rootfs/hooks/pre-mount/prepare-root-partition.sh')
-rwxr-xr-xbuilder/dnbd3-rootfs/hooks/pre-mount/prepare-root-partition.sh15
1 files changed, 8 insertions, 7 deletions
diff --git a/builder/dnbd3-rootfs/hooks/pre-mount/prepare-root-partition.sh b/builder/dnbd3-rootfs/hooks/pre-mount/prepare-root-partition.sh
index fc99226d..2e62434d 100755
--- a/builder/dnbd3-rootfs/hooks/pre-mount/prepare-root-partition.sh
+++ b/builder/dnbd3-rootfs/hooks/pre-mount/prepare-root-partition.sh
@@ -1,5 +1,7 @@
# region imports
source "/usr/lib/rebash/core.sh"
+core.import exceptions
+exceptions.activate
core.import utils
core.import logging
logging.set_commands_log_level debug
@@ -7,19 +9,17 @@ logging.set_log_level debug
# endregion
# region connect dnbd3
-# Close previous connections to be able to run this script many times.
-dnbd3-client --device "$SLX_DNBD3_DEVICE" --close
local IFS_backup="$IFS"
IFS=","
local host
for host in ${SLX_DNBD3_SERVERS}; do
- info "Trying host \"$host\"."
- systemd-preserve-process-marker dnbd3-client --host "$host" --image \
+ logging.info "Trying host '$host'."
+ if systemd-preserve-process-marker dnbd3-client --host "$host" --image \
"${SLX_SERVER_BASE#/}${SLX_DNBD3_IMAGE}" --device "$SLX_DNBD3_DEVICE" \
--rid "$SLX_DNBD3_RID"
- local return_code="$?"
- [[ $return_code == 0 ]] && break
- continue
+ then
+ break
+ fi
done
IFS="$IFS_backup"
@@ -106,6 +106,7 @@ modprobe dm_snapshot
dmsetup create "$writable_partition_name" --noudevsync --table \
"0 $partition_size snapshot $read_only_partition $writable_device $persistent $chunksize"
dmsetup mknodes --noudevsync "$writable_partition_name"
+exceptions.deactivate
# enregion
# region vim modline