Index: univention-system-setup/usr/lib/univention-system-setup/scripts/setup-join.sh =================================================================== --- univention-system-setup/usr/lib/univention-system-setup/scripts/setup-join.sh (Revision 35056) +++ univention-system-setup/usr/lib/univention-system-setup/scripts/setup-join.sh (Arbeitskopie) @@ -167,6 +167,19 @@ progress_msg "$(gettext "Preparing domain join")" progress_next_step +failed_message () { + ## Code copied from univention-join, FIXME: refactor into library function + echo "" + echo "" + echo "**************************************************************************" + echo "* Join failed! *" + echo "* Contact your system administrator *" + echo "**************************************************************************" + echo "* Message: $@" + echo "**************************************************************************" + ## NOTE: differs from univention-join: do not exit here +} + # Call join if [ -d /var/lib/univention-ldap/ldap ]; then rm -f /var/lib/univention-ldap/ldap/* @@ -181,14 +194,17 @@ ln -sf /var/univention-join/status /usr/lib/univention-install/.index.txt for i in /usr/lib/univention-install/*.inst; do - echo "Configure $i" - $i + echo "Configure $i" 2>&1 | tee -a /var/log/univention/join.log + if ! "$i" 2>&1 | tee -a /var/log/univention/join.log + then + failed_message "FAILED: $(basename "$i")" + fi done else if [ -n "$dcaccount" -a -n "$password_file" ]; then # Copy to a temporary password file, because univention-join # will copy the file to the same directory on the master - # with the given user credentials. This won't work. + # with the given user credentials. This will not work. pwd_file="$(mktemp)" cp "$password_file" "$pwd_file" /usr/share/univention-join/univention-join -dcaccount "$dcaccount" -dcpwd "$pwd_file"