diff options
9 files changed, 124 insertions, 17 deletions
diff --git a/builder/dnbd3-rootfs/hooks/copy-dnbd3-service-into-newroot.sh b/builder/dnbd3-rootfs/hooks/copy-dnbd3-service-into-newroot.sh index 592bc3b4..4c97102f 100755 --- a/builder/dnbd3-rootfs/hooks/copy-dnbd3-service-into-newroot.sh +++ b/builder/dnbd3-rootfs/hooks/copy-dnbd3-service-into-newroot.sh @@ -1,10 +1,28 @@ #!/usr/bin/env bash -systemdsystemunitdir="$( - dirname "$(find / -name dracut-mount.service -type f -print -quit)")" -newsystemdsystemunitdir="${NEWROOT}/lib/systemd/system" +# -*- coding: utf-8 -*- +# region imports +type getarg >/dev/null 2>&1 || source /lib/dracut-lib.sh +source "/usr/lib/rebash/core.sh" +core.import exceptions +exceptions.activate +core.import logging +# endregion +( # subshell for variable scoping +logging.set_commands_level debug +logging.set_level debug -cp "${systemdsystemunitdir}/dnbd3root.service" \ - "${newsystemdsystemunitdir}/dnbd3root.service" -mkdir -p "${newsystemdsystemunitdir}/sysinit.target.wants" -ln -s ../dnbd3root.service \ - "${newsystemdsystemunitdir}/sysinit.target.wants/dnbd3root.service" +systemd_system_unit_path="$(dirname "$(find / -name dracut-mount.service \ + -type f -print -quit)")" +new_systemd_system_unit_path="${NEWROOT}/lib/systemd/system" +cp "${systemd_system_unit_path}/dnbd3root.service" \ + "${new_systemd_system_unit_path}/dnbd3root.service" +mkdir --parents "${new_systemd_system_unit_path}/sysinit.target.wants" +ln --symbolic '../dnbd3root.service' \ + "${new_systemd_system_unit_path}/sysinit.target.wants/dnbd3root.service" + +) || exit $? +exceptions.deactivate +# region vim modline +# vim: set tabstop=4 shiftwidth=4 expandtab: +# vim: foldmethod=marker foldmarker=region,endregion: +# endregion diff --git a/builder/dnbd3-rootfs/hooks/copy-dracut-systemd-files-into-newroot.sh b/builder/dnbd3-rootfs/hooks/copy-dracut-systemd-files-into-newroot.sh index f8670a09..35b5e3e7 100755 --- a/builder/dnbd3-rootfs/hooks/copy-dracut-systemd-files-into-newroot.sh +++ b/builder/dnbd3-rootfs/hooks/copy-dracut-systemd-files-into-newroot.sh @@ -1,4 +1,5 @@ #!/usr/bin/env bash +# -*- coding: utf-8 -*- # region imports type getarg >/dev/null 2>&1 || source /lib/dracut-lib.sh source "/usr/lib/rebash/core.sh" @@ -38,6 +39,7 @@ mount --options bind / "$temporary_directory_path" cp --recursive --no-target-directory "$temporary_directory_path" /run/initramfs umount "$temporary_directory_path" rm --dir "$temporary_directory_path" + ) || exit $? exceptions.deactivate # region vim modline diff --git a/builder/dnbd3-rootfs/hooks/copy-openslx-configuration-into-newroot.sh b/builder/dnbd3-rootfs/hooks/copy-openslx-configuration-into-newroot.sh index fd00593c..514a797e 100755 --- a/builder/dnbd3-rootfs/hooks/copy-openslx-configuration-into-newroot.sh +++ b/builder/dnbd3-rootfs/hooks/copy-openslx-configuration-into-newroot.sh @@ -1,3 +1,23 @@ +#!/usr/bin/env bash +# -*- coding: utf-8 -*- +# region imports +type getarg >/dev/null 2>&1 || source /lib/dracut-lib.sh +source "/usr/lib/rebash/core.sh" +core.import exceptions +exceptions.activate +core.import logging +# endregion +( # subshell for variable scoping +logging.set_commands_level debug +logging.set_level debug + source "/etc/openslx" mkdir --parents "${NEWROOT}${SLX_CONFIGURATION_LOCATION}" cp "/etc/openslx" "${NEWROOT}${SLX_CONFIGURATION_LOCATION}" + +) || exit $? +exceptions.deactivate +# region vim modline +# vim: set tabstop=4 shiftwidth=4 expandtab: +# vim: foldmethod=marker foldmarker=region,endregion: +# endregion diff --git a/builder/dnbd3-rootfs/hooks/enable-sysrq.sh b/builder/dnbd3-rootfs/hooks/enable-sysrq.sh index 30b12ea0..7fe42c31 100755 --- a/builder/dnbd3-rootfs/hooks/enable-sysrq.sh +++ b/builder/dnbd3-rootfs/hooks/enable-sysrq.sh @@ -1,2 +1,22 @@ +#!/usr/bin/env bash +# -*- coding: utf-8 -*- +# region imports +type getarg >/dev/null 2>&1 || source /lib/dracut-lib.sh +source "/usr/lib/rebash/core.sh" +core.import exceptions +exceptions.activate +core.import logging +# endregion +( # subshell for variable scoping +logging.set_commands_level debug +logging.set_level debug + # Enables magic sysrq kernel supported key combinations. echo 1 > /proc/sys/kernel/sysrq + +) || exit $? +exceptions.deactivate +# region vim modline +# vim: set tabstop=4 shiftwidth=4 expandtab: +# vim: foldmethod=marker foldmarker=region,endregion: +# endregion diff --git a/builder/dnbd3-rootfs/hooks/fetch-config.sh b/builder/dnbd3-rootfs/hooks/fetch-config.sh index 61174a3f..c9f026de 100755 --- a/builder/dnbd3-rootfs/hooks/fetch-config.sh +++ b/builder/dnbd3-rootfs/hooks/fetch-config.sh @@ -1,10 +1,10 @@ #!/usr/bin/env bash +# -*- coding: utf-8 -*- # region imports type getarg >/dev/null 2>&1 || source /lib/dracut-lib.sh source "/usr/lib/rebash/core.sh" core.import exceptions exceptions.activate -core.import utils core.import logging # endregion ( # subshell for variable scoping @@ -25,7 +25,8 @@ IFS=',' for host in ${slx_server}; do logging.info "Trying host \"$host\"." if wget --timeout 5 "http://${host}/${slx_server_base}${configuration_file_name}" \ - --output-document "/etc/openslx"; then + --output-document '/etc/openslx' + then break fi done @@ -35,11 +36,10 @@ if [[ ! -e "/etc/openslx" ]]; then logging.warn "Downloading OpenSLX configuration file from any of the servers \"${slx_server}\" at location \"${slx_server_base}${configuration_file_name}\" failed. Return code: $return_code" exit 1 fi + ) || exit $? exceptions.deactivate # region vim modline - # vim: set tabstop=4 shiftwidth=4 expandtab: # vim: foldmethod=marker foldmarker=region,endregion: - # endregion diff --git a/builder/dnbd3-rootfs/hooks/load-custom-kernel-modules.sh b/builder/dnbd3-rootfs/hooks/load-custom-kernel-modules.sh index 653dc9a7..300adc47 100755 --- a/builder/dnbd3-rootfs/hooks/load-custom-kernel-modules.sh +++ b/builder/dnbd3-rootfs/hooks/load-custom-kernel-modules.sh @@ -1,4 +1,16 @@ +#!/usr/bin/env bash +# -*- coding: utf-8 -*- +# region imports +type getarg >/dev/null 2>&1 || source /lib/dracut-lib.sh +source "/usr/lib/rebash/core.sh" +core.import exceptions +exceptions.activate +core.import logging +# endregion ( # subshell for variable scoping +logging.set_commands_level debug +logging.set_level debug + DNBD3_MOD_PATH="/usr/lib/modules/current/extra/dnbd3.ko" if [ ! -e "${DNBD3_MOD_PATH}" ]; then @@ -13,4 +25,10 @@ if ! insmod "${DNBD3_MOD_PATH}"; then emergency_shell -n "Error in $0" exit 1 fi + ) || exit $? +exceptions.deactivate +# region vim modline +# vim: set tabstop=4 shiftwidth=4 expandtab: +# vim: foldmethod=marker foldmarker=region,endregion: +# endregion diff --git a/builder/dnbd3-rootfs/hooks/mount-root-device.sh b/builder/dnbd3-rootfs/hooks/mount-root-device.sh index f3cde0bd..2c59c0f3 100755 --- a/builder/dnbd3-rootfs/hooks/mount-root-device.sh +++ b/builder/dnbd3-rootfs/hooks/mount-root-device.sh @@ -1,14 +1,26 @@ +#!/usr/bin/env bash +# -*- coding: utf-8 -*- +# region imports +type getarg >/dev/null 2>&1 || source /lib/dracut-lib.sh +source "/usr/lib/rebash/core.sh" +core.import exceptions +exceptions.activate +core.import logging +# endregion ( # subshell for variable scoping +logging.set_commands_level debug +logging.set_level debug + type getarg >/dev/null 2>&1 || source /lib/dracut-lib.sh if ! getarg root=; then source "/etc/openslx" mount /dev/mapper/root "$NEWROOT" $SLX_MOUNT_ROOT_OPTIONS genfstab "$NEWROOT" 2>/dev/null > "$NEWROOT/etc/fstab" fi + ) || exit $? +exceptions.deactivate # region vim modline - # vim: set tabstop=4 shiftwidth=4 expandtab: # vim: foldmethod=marker foldmarker=region,endregion: - # endregion diff --git a/builder/dnbd3-rootfs/hooks/prepare-root-partition.sh b/builder/dnbd3-rootfs/hooks/prepare-root-partition.sh index 01747a08..6101272c 100755 --- a/builder/dnbd3-rootfs/hooks/prepare-root-partition.sh +++ b/builder/dnbd3-rootfs/hooks/prepare-root-partition.sh @@ -65,7 +65,6 @@ fi # endregion - # region connect dnbd3 IFS_backup="$IFS" IFS="," @@ -88,7 +87,6 @@ if [[ $return_code != 0 ]]; then exit 1 fi # endregion - # region scan partitions read_only_device="" if utils.dependency_check qemu-img && ! qemu-img info \ @@ -108,7 +106,6 @@ fi # Fail fast if no device could be determined. [ -z "$read_only_device" ] && exit 1 # endregion - # region find read-only partition if [ -z "$SLX_SYSTEM_PARTITION_PREPARATION_SCRIPT" ]; then read_only_partition="$(tools.find_block_device \ diff --git a/builder/dnbd3-rootfs/hooks/set-dracut-environment-variables.sh b/builder/dnbd3-rootfs/hooks/set-dracut-environment-variables.sh index a934731e..bb879b7f 100755 --- a/builder/dnbd3-rootfs/hooks/set-dracut-environment-variables.sh +++ b/builder/dnbd3-rootfs/hooks/set-dracut-environment-variables.sh @@ -1,3 +1,16 @@ +#!/usr/bin/env bash +# -*- coding: utf-8 -*- +# region imports +type getarg >/dev/null 2>&1 || source /lib/dracut-lib.sh +source "/usr/lib/rebash/core.sh" +core.import exceptions +exceptions.activate +core.import logging +# endregion +( # subshell for variable scoping +logging.set_commands_level debug +logging.set_level debug + # Set rootok and root as dracut expects them to be set by the module preparing # the root filesystem. @@ -6,3 +19,10 @@ rootok=1 # Tell dracut where the final root fs will be located. root=block:/dev/devicemapper/root + +) || exit $? +exceptions.deactivate +# region vim modline +# vim: set tabstop=4 shiftwidth=4 expandtab: +# vim: foldmethod=marker foldmarker=region,endregion: +# endregion |
