diff --git a/check_deployment.sh b/check_deployment.sh index c7482935d1ecdc6d7448988a6c044cc3c5e91f33..02c33688566af0da80c6ffab2307635f53b4683e 100755 --- a/check_deployment.sh +++ b/check_deployment.sh @@ -5,6 +5,7 @@ # # ---------------------------------------------------------------------- # 2023-12-11 v0.1 <axel.hahn@iml.unibe.ch> first lines... +# 2023-12-14 v0.2 <axel.hahn@iml.unibe.ch> detect profile without logfile # ====================================================================== # ---------------------------------------------------------------------- @@ -16,6 +17,7 @@ logdir=/var/log/imldeployment-client tmpfile=/tmp/deploystatus.log typeset -i iErrors=0 +typeset -i iUnknown=0 typeset -i iCount=0 # ---------------------------------------------------------------------- @@ -36,25 +38,35 @@ for myprofile in $( getprofiles ) do iCount+=1 logfile=$( ls -tr1 ${logdir}/${myprofile}__* | tail -1 ) - if grep "^OK: ${myprofile}$" $logfile >/dev/null; then - echo "OK: $myprofile - $logfile" + + if [ -z "$logfile" ]; then + echo "UNKNOWN: $myprofile - was created but not rolled yet." + iUnknown+=1 else - iErrors+=1 - echo "ERROR: $myprofile - $logfile" - echo " Last lines:" - tail -10 "${logfile}" | sed "s#^# #g" - echo + if grep "^OK: ${myprofile}$" $logfile >/dev/null; then + echo "OK: $myprofile - $logfile" + else + iErrors+=1 + echo "ERROR: $myprofile - $logfile" + echo " Last lines:" + tail -10 "${logfile}" | sed "s#^# #g" + echo + fi fi done > "$tmpfile" if [ $iCount -eq 0 ]; then - echo "Deployment No profile was created yet." + echo "UNKNOWN: Deployment No profile was created yet." else if [ $iErrors -eq 0 ]; then - echo -n "OK" + if [ $iUnknown -eq 0 ]; then + echo -n "UNKNOWN" + else + echo -n "OK" + fi else echo -n "ERROR" fi - echo " Deployment ... Profiles: $iCount ... Errors: $iErrors" + echo ": Deployment ... Profiles: $iCount ... Errors: $iErrors" cat "$tmpfile" fi rm -f "$tmpfile"