blob: 263eff753d469b8096eff1666da08819d0e341e6 (
plain) (
tree)
|
|
#!/usr/bin/env bash
# -*- coding: utf-8 -*-
source '/usr/lib/rebash/core.sh'
core.import exceptions
core.import logging
type emergency_shell >/dev/null 2>&1 || source /lib/dracut-lib.sh
exceptions.try
{
logging.set_commands_level debug
logging.set_level debug
# NOTE: "getarg" raises an exception so deactivate exceptions for now.
exceptions.deactivate
slx_server="$(getarg slxsrv=)"
slx_server_base="$(getarg slxbase=)"
exceptions.activate
logging.info "Download config.tgz from '${slx_server#@}'..."
IFS_backup="$IFS"
IFS=','
for TIMEOUT in 1 1 2 3; do
if wget --timeout 5 \
"http://${slx_server#@}/${slx_server_base}/config.tgz" \
--output-document "/etc/config.tgz"; then
break
fi
done
IFS="$IFS_backup"
if [[ ! -e "/etc/config.tgz" ]]; then
logging.warn "Downloading 'config.tgz' from '${slx_server}' failed. Return code: $return_code"
exit 1
fi
}
exceptions.catch
{
logging.error "$exceptions_last_traceback"
emergency_shell "error in ${BASH_SOURCE[0]}"
}
|