From 4420df01eacc2d004ce033fa3c8656d83715e53f Mon Sep 17 00:00:00 2001 From: Jason Mehring Date: Wed, 12 Nov 2014 03:39:17 -0500 Subject: [PATCH] debian: Don't display systemd info in chroot since systemd show does not work in chroot --- debian/qubes-core-agent.postinst | 29 +++++++++++++++++------------ 1 file changed, 17 insertions(+), 12 deletions(-) diff --git a/debian/qubes-core-agent.postinst b/debian/qubes-core-agent.postinst index 668c254..db16268 100755 --- a/debian/qubes-core-agent.postinst +++ b/debian/qubes-core-agent.postinst @@ -117,28 +117,33 @@ systemdInfo() { unit=${1} return_global_var=${2} - declare -A INFO + declare -A INFO=() while read line; do INFO[${line%%=*}]="${line##*=}" done < <(systemctl show ${unit} 2> /dev/null) + setArrayAsGlobal INFO $return_global_var + return ${#INFO[@]} } displayFailedStatus() { action=${1} unit=${2} - systemdInfo ${unit} info - echo - echo "===================================================" - echo "FAILED: systemd ${action} ${unit}" - echo "===================================================" - echo " LoadState = ${info[LoadState]}" - echo " LoadError = ${info[LoadError]}" - echo " ActiveState = ${info[ActiveState]}" - echo " SubState = ${info[SubState]}" - echo "UnitFileState = ${info[UnitFileState]}" - echo + # Only display if there are results. In chroot environmnet there will be + # no results to 'systemctl show' command + systemdInfo ${unit} info || { + echo + echo "===================================================" + echo "FAILED: systemd ${action} ${unit}" + echo "===================================================" + echo " LoadState = ${info[LoadState]}" + echo " LoadError = ${info[LoadError]}" + echo " ActiveState = ${info[ActiveState]}" + echo " SubState = ${info[SubState]}" + echo "UnitFileState = ${info[UnitFileState]}" + echo + } } # Disable systemd units