scripts: delta-generation: Update an usage about target
[platform/core/system/upgrade-tools.git] / scripts / delta-generation.sh
1 #!/bin/bash
2
3 #---------------------------------------------------------#
4 #                Delta Generation Script
5 #                  (Tizen 4.0 Upgrade)
6 #
7 # Preconditions
8 #  * tota-upg
9 #  * diff binary and libraries:
10 #   ss_bsdiff, lib7zip, libdivsufsort
11 #
12 # Upgrade procedure
13 #  1. Download images (old, new)
14 #  2. Download old image to target
15 #  3. Generate delta
16 #  4. Download delta to target
17 #  5. Execute upgrade trigger
18 #
19 # This script covers step 3
20 #
21 #---------------------------------------------------------#
22
23 # Get argument
24 if [ $# -lt 2 ]; then
25         echo "Usage: delta-generation.sh TOTA_UPG_PATH TARGET DELTA_TYPE [SIGN_PKCS_FILE SIGN_PKCS_PASSWORD]"
26         echo " TARGET> rpi4"
27         echo " DELTA_TYPE> common | full   (default: common)"
28         exit
29 fi
30
31 TOTA_UPG_PATH=$1
32 TARGET=$2
33
34 if [ -z ${3+x} ]; then
35         DELTA_TYPE="common"
36 else
37         DELTA_TYPE=$3
38 fi
39
40 if [ "$DELTA_TYPE" == "common" ]; then
41         SIGN_PKCS_FILE=$4
42         SIGN_PKCS_PASSWORD=$5
43 fi
44
45 # Path of downloaded images (old, new)
46 TOTA_UPG_WORK=${TOTA_UPG_PATH}/mk_delta/${TARGET}
47 OLD_IMG_PATH=${TOTA_UPG_WORK}/data/old_tar
48 NEW_IMG_PATH=${TOTA_UPG_WORK}/data/new_tar
49
50 # Cleanup previous data
51 MOUNT_LIST=$(mount | grep ${TOTA_UPG_WORK})
52 if [ ! -z "$MOUNT_LIST" ]; then
53         echo "$MOUNT_LIST" | \
54         while read LINE
55         do
56                 MOUNT_PATH=$(echo "$LINE" | awk '{print $3}')
57                 sudo umount $MOUNT_PATH
58         done
59 fi
60
61 CWD=${PWD}
62 if ! [ -d $TOTA_UPG_WORK ]; then
63         echo "$(tput setaf 1)$(tput bold)ERROR: There is no  $TOTA_UPG_WORK directory. Please input correct path."
64         tput sgr 0
65         exit
66 fi
67 cd $TOTA_UPG_WORK
68 ls | grep -vE "cfg|data" | xargs rm -rf
69 cd data
70 ls | grep -vE "old_tar|new_tar" | xargs rm -rf
71 cd ${CWD}
72
73 # Execute mk_delta script
74 CWD=${PWD}
75 cd ${TOTA_UPG_WORK}
76 if [ "$DELTA_TYPE" == "full" ]; then
77         ../common/bin/mk_delta_full.sh
78 else
79         ../common/bin/mk_delta.sh ${SIGN_PKCS_FILE} ${SIGN_PKCS_PASSWORD}
80 fi
81 cd ${CWD}