UPGRADE_SUPPORT_SCRIPT_NAMES=("upgrade-prepare-partitions.sh" "upgrade-trigger.sh" \
"upgrade-partial.sh" "upgrade-fota.sh")
-if [ -z $BLKID_PRINT ]; then
+if [ -z "$BLKID_PRINT" ]; then
BLKID_PRINT="/usr/bin/blkid-print"
fi
-if [ -z $RESIZE_DYNPARTS ]; then
+if [ -z "$RESIZE_DYNPARTS" ]; then
RESIZE_DYNPARTS="/bin/resize-dynparts"
fi
}
check_if_super() {
- if SUPERFS="$(("$BLKID_PRINT" "$EMMC_DEVICE" super a) 2>/dev/null)"; then
+ if SUPERFS="$( ("$BLKID_PRINT" "$EMMC_DEVICE" super a) 2>/dev/null)"; then
local MAPPED_DEVICES=""
MAPPED_DEVICES=$(dmsetup ls)
"${RESIZE_DYNPARTS}" "${SUPERFS}" "${NEXT_AB}"
fi
- PARSE_DYNPARTS=`/usr/sbin/parse-dynparts "$SUPERFS" --list-tables`
+ PARSE_DYNPARTS=$(/usr/sbin/parse-dynparts "$SUPERFS" --list-tables)
while read -r part_name part_table; do
if [ "$part_name" = "rootfs_${NEXT_AB}" ]; then
map_from_super "$part_name" "$part_table"
- ROOTFS_CURR_SIZE="$(blockdev --getsize64 /dev/mapper/rootfs_${CURRENT_AB})"
- ROOTFS_NEXT_SIZE="$(blockdev --getsize64 /dev/mapper/rootfs_${NEXT_AB})"
+ ROOTFS_CURR_SIZE="$(blockdev --getsize64 /dev/mapper/rootfs_"${CURRENT_AB}")"
+ ROOTFS_NEXT_SIZE="$(blockdev --getsize64 /dev/mapper/rootfs_"${NEXT_AB}")"
fi
if [ "$part_name" = "hal_${NEXT_AB}" ]; then
map_from_super "$part_name" "$part_table"
- HAL_CURR_SIZE="$(blockdev --getsize64 /dev/mapper/hal_${CURRENT_AB})"
- HAL_NEXT_SIZE="$(blockdev --getsize64 /dev/mapper/hal_${NEXT_AB})"
+ HAL_CURR_SIZE="$(blockdev --getsize64 /dev/mapper/hal_"${CURRENT_AB}")"
+ HAL_NEXT_SIZE="$(blockdev --getsize64 /dev/mapper/hal_"${NEXT_AB}")"
fi
done <<< "$PARSE_DYNPARTS"
fi
MAPPER_DEVICE="${ROOTFS_DEVICE}"
DM_NAME=$(basename "${MAPPER_DEVICE}")
DM_N=$(dmsetup ls -o blkdevname | grep "${DM_NAME}" | sed -e 's/^.*(\([^)]\+\))/\1/')
- ROOTFS_DEVICE="/dev/$(ls /sys/class/block/${DM_N}/slaves/)"
+ ROOTFS_DEVICE="/dev/$(ls /sys/class/block/"${DM_N}"/slaves/)"
fi
if ! EMMC_DEVICE="/dev/$(/bin/lsblk -ndo pkname "${ROOTFS_DEVICE}")" ||\
local CURR_PARTITION=""
local NEXT_PARTITION=""
- if { [ "$PART_NAME" == "rootfs" ] || [ "$PART_NAME" == "hal" ]; } && [ x$SUPERFS != "x" ]; then
+ if { [ "$PART_NAME" == "rootfs" ] || [ "$PART_NAME" == "hal" ]; } && [ x"$SUPERFS" != "x" ]; then
NEXT_PARTITION="/dev/mapper/${PART_NAME}_${NEXT_AB}"
CURR_PARTITION="/dev/mapper/${PART_NAME}_${CURRENT_AB}"
else
set_upgrade_status() {
VALUE="$1"
- ${SET_UPGRADE_STATUS} ${VALUE} &>/dev/null
+ ${SET_UPGRADE_STATUS} "${VALUE}" &>/dev/null
if [ $? -eq 0 ]; then
critical_log "[Info] set_upgrade_status success: status is ${VALUE}"
else
set -o errtrace -e -o pipefail
-if [ ! -z "${UPGRADE_DEBUG}" ]; then
+if [ -n "${UPGRADE_DEBUG}" ]; then
set -x
fi
log "[Info] calling sync"
log "[Info] Switching board partition from $CURRENT_AB, to $NEXT_AB"
- if ! device_board_switch_partition $NEXT_AB; then
+ if ! device_board_switch_partition "$NEXT_AB"; then
critical_log "[Error] Failed to switch board slot to $NEXT_AB"
exit 1
fi
trap 'echo "Aborting due to errexit on ${0##*/}:$LINENO. Exit code: $?" >&2' ERR
set -o errtrace -e -o pipefail
-if [ ! -z "${UPGRADE_DEBUG}" ]; then
+if [ -n "${UPGRADE_DEBUG}" ]; then
set -x
fi
prepare_fota_dir() {
if [ -d "$FOTA_DIR" ]; then
# Cleanup FOTA_DIR
- if [ "$(dirname $DOWNLOAD_DELTA)" = "$FOTA_DIR" ]; then
+ if [ "$(dirname "$DOWNLOAD_DELTA")" = "$FOTA_DIR" ]; then
# If provided delta is from inside the FOTA_DIR, delete everything else
- DELTA_FILE_NAME=$(basename $DOWNLOAD_DELTA)
+ DELTA_FILE_NAME=$(basename "$DOWNLOAD_DELTA")
rm -rf -- "$FOTA_DIR/!($DELTA_FILE_NAME)"
else
# If provided delta is from outside the FOTA_DIR delete everything
- rm -rf -- "$FOTA_DIR/*"
+ rm -rf -- "${FOTA_DIR:?}/*"
fi
# `echo` commands below are intentional as upgrade-common.inc is not sourced yet (no access to logging functions)
else
unpack_file "${DOWNLOAD_DELTA}" "${SCRIPT_UPGRADE_PARTIAL}"
unpack_file "${DOWNLOAD_DELTA}" "${SCRIPT_UPGRADE_FOTA}"
- run_script ""${FOTA_DIR}/${SCRIPT_UPGRADE_PARTIAL}" "${DOWNLOAD_DELTA}""
+ run_script "${FOTA_DIR}/${SCRIPT_UPGRADE_PARTIAL} ${DOWNLOAD_DELTA}"
if [ $RET -ne 0 ] ; then
log "[Error] Failed to run $SCRIPT_UPGRADE_PARTIAL ${DOWNLOAD_DELTA}" "$LOG_FILE"