diff --git a/deploy_app.sh b/deploy_app.sh
index f5b41553f83f06e9a46a075bc013d327da902c5f..99975c4af3bf5dd8784221e6aa6f854f87e0de66 100755
--- a/deploy_app.sh
+++ b/deploy_app.sh
@@ -58,6 +58,9 @@ function setprofile(){
         exit 12
     fi 
     echo "OK, profile [${profile}] was set."
+
+    downloadfile="${tmpdir}/${IMLCI_PROJECT}.tgz"
+    downloadtmp="${tmpdir}/${IMLCI_PROJECT}.tgz.tmp"
 }
 
 # output a colored infoline with date and given message
@@ -65,15 +68,15 @@ function setprofile(){
 function header(){
     local COLOR="\033[34m"
     local NO_COLOR="\033[0m"
+    echo
     echo -en "${COLOR}"
     echo ______________________________________________________________________
-    echo
     echo -n ">>>>>>>>>> $(date) "
     test ! -z "$profile" && echo -n "${profile} :: " 
-    echo -n " - $* "
+    echo -n "$*"
     echo -en "${NO_COLOR}"
     if [ "$wait" = "1" ]; then
-        echo -n "RETURN"; read dummy;
+        echo -n " RETURN"; read dummy;
     fi 
     echo
 }
@@ -84,9 +87,11 @@ function header(){
 function run_task(){
     local taskscript=$1
     if [ -x "${taskscript}" ]; then
+        echo "INFO: starting script ${taskscript}..."
         . "${taskscript}" || exit 10
     else
-        echo "SKIP: task script ${taskscript} does not exist."
+        test -f "${taskscript}" && ( echo "SKIP: task script ${taskscript} is not executable." ; ls -l "${taskscript}")
+        test -f "${taskscript}" || echo "SKIP: task script ${taskscript} does not exist."
     fi
 }
 
@@ -96,11 +101,6 @@ function run_task(){
 
 cd $( dirname $0 )
 
-echo
-echo
-echo "<<<<<<<<<<##########|  POC :: DEPLOYMENT SCRIPT  |##########>>>>>>>>>>"
-echo
-
 if [ $# -eq 0 ]; then
     header "looping over all profiles"
     getprofiles
@@ -109,9 +109,17 @@ if [ $# -eq 0 ]; then
     do
         $0 $myprofile    
     done
+    rc=$?
+    profile=
+    header "loop over projects is finished"
     exit $?
 fi
 
+echo
+echo
+echo "<<<<<<<<<<##########|  POC :: DEPLOYMENT SCRIPT  |##########>>>>>>>>>>"
+echo
+
 
 # ----------------------------------------------------------------------
 header "Set profile [$1]"
@@ -120,15 +128,34 @@ setprofile $1
 
 # ----------------------------------------------------------------------
 header "Download ${IMLCI_PROJECT}.tgz"
-cd $tmpdir
-${selfdir}/bin/getfile.sh -f ${IMLCI_PROJECT}.tgz || exit 1
+isupdate=0
+${selfdir}/bin/getfile.sh -f ${IMLCI_PROJECT}.tgz -o ${downloadtmp} || exit 1
+
+
+# ----------------------------------------------------------------------
+header "Detect if download is newer than last download."
+if [ -f ${downloadfile} ]; then
+    # ls -l "${downloadfile}" "${downloadtmp}" 
+    diff "${downloadfile}" "${downloadtmp}"
+    if [ $? -eq 0 ]; then
+        echo "INFO: the downloaded file is the same like last download."
+        rm -f "${downloadtmp}"
+    else
+        echo "OK: donwload contains an update."
+        isupdate=1
+        mv "${downloadtmp}" "${downloadfile}"
+    fi
+else
+    echo "INFO: last download not available - first install or a forced update."
+    isupdate=1
+    mv "${downloadtmp}" "${downloadfile}"
+fi
 
 
 # ----------------------------------------------------------------------
-header "Go into install dir ${installdir}"
+header "Switch into install dir ${installdir} ..."
 test -d "${installdir}" || mkdir -p "${installdir}"
 cd ${installdir} || exit 2
-pwd
 
 
 # ----------------------------------------------------------------------
@@ -141,14 +168,14 @@ run_task "${profiledir}/tasks_preinstall.sh"
 
 
 # ----------------------------------------------------------------------
-header "Extract ${IMLCI_PROJECT}.tgz"
+header "Extract ${IMLCI_PROJECT}.tgz into $( pwd )"
 tar -xzf ${tmpdir}/${IMLCI_PROJECT}.tgz . || exit 3
 ls -l
 
 
 # ----------------------------------------------------------------------
-header "Remove download archive ${IMLCI_PROJECT}.tgz"
-echo rm -f  ${IMLCI_PROJECT}.tgz
+# header "Remove download archive ${IMLCI_PROJECT}.tgz"
+# echo rm -f  ${IMLCI_PROJECT}.tgz
 
 
 # ----------------------------------------------------------------------