Pack important files at beginning of the archive
[platform/core/system/upgrade-tools.git] / mk_delta / common / bin / mk_delta.sh
index 935dff5..a730cf4 100755 (executable)
@@ -84,6 +84,8 @@ fn_set_default_params()
        MK_PART_DELTA=${COMMON_BINDIR}/mk_part_delta.sh
        DELTA_CFG_PATH=./cfg/delta.cfg
        UPDATE_CFG_PATH=./cfg/update.cfg
+       UPDATE_INFO_FILE=update-info.ini
+       UPDATE_INFO_PATH=./data/${UPDATE_INFO_FILE}
        SETUP_SCRIPT_PATH=./cfg/setup.sh
        DELTA_UA=./data/delta.ua
        UPDATE_MANAGER=./data/upgrade-trigger.sh
@@ -343,6 +345,12 @@ do
                sudo cp ${BUILD_STRING_PATH} ${DELTA_DIR}/${BUILD_STRING_FILE}
                sudo rm ${BUILD_STRING_PATH}
        fi
+
+       if [ -r ${UPDATE_INFO_PATH} ]; then
+               sudo cp ${UPDATE_INFO_PATH} ${DELTA_DIR}/${UPDATE_INFO_FILE}
+               sudo rm ${UPDATE_INFO_PATH}
+       fi
+
        if [ -r ${SETUP_SCRIPT_PATH} ]; then
                sudo cp ${SETUP_SCRIPT_PATH} ${DELTA_DIR}/setup.sh
        fi
@@ -366,7 +374,10 @@ if [ -r ${UPDATE_CFG_PATH} ]; then
 fi
 cd ${DELTA_DIR}
 sudo cp ${COMMON_BINDIR}/unpack.sh ./
-sudo tar --overwrite -cf ../delta.tar *
+
+# Ensure essential files are at beginning of archive (metadata, scripts and binaries to perform upgrade)
+touch *.txt *.cfg *.ini *.sh *.ua
+sudo tar --overwrite -cpf ../delta.tar $(ls -1td *)
 
 SIGN_PKCS_FILE=$1
 SIGN_PKCS_PASSWORD=$2