mirror of
https://github.com/lucaspalomodevelop/core.git
synced 2026-03-15 09:04:39 +00:00
firmware: second batch in check script #4500
This commit is contained in:
parent
9a08ea91e9
commit
d44a148899
@ -136,7 +136,7 @@ else
|
||||
# Repository can be used for updates
|
||||
repository="ok"
|
||||
|
||||
if [ -n "$(grep 'The following' ${OUTFILE} | awk -F '[ ]' '{print $3}')" ]; then
|
||||
if [ -n "$(grep 'The following' ${OUTFILE} | awk -F '[ ]' '{print $3}')" ]; then # XXX not strictly needed
|
||||
# if we run twice give values as CSV for later processing
|
||||
download_size=$(grep 'to be downloaded' ${OUTFILE} | awk -F '[ ]' '{print $1$2}' | tr '\n' ',' | sed 's/,$//')
|
||||
|
||||
@ -151,179 +151,180 @@ else
|
||||
MODE=
|
||||
|
||||
while read LINE; do
|
||||
REPO=$(echo "${LINE}" | grep -o '\[.*\]' | tr -d '[]')
|
||||
if [ -z "${REPO}" ]; then
|
||||
REPO=${UPSTREAM}
|
||||
fi
|
||||
for i in $(echo "${LINE}" | tr '[' '(' | cut -d '(' -f1); do
|
||||
case ${MODE} in
|
||||
DOWNGRADED:)
|
||||
if [ "$(expr $linecount + 4)" -eq "$itemcount" ]; then
|
||||
if [ "${i%:*}" = "${i}" ]; then
|
||||
itemcount=0 # This is not a valid item so reset item count
|
||||
MODE=
|
||||
else
|
||||
i=$(echo $i | tr -d :)
|
||||
if [ -z "$packages_downgraded" ]; then
|
||||
packages_downgraded="{\"name\":\"$i\"," # If it is the first item then we do not want a separator
|
||||
else
|
||||
packages_downgraded=$packages_downgraded", {\"name\":\"$i\","
|
||||
fi
|
||||
packages_downgraded=$packages_downgraded"\"repository\":\"${REPO}\","
|
||||
fi
|
||||
fi
|
||||
if [ "$(expr $linecount + 3)" -eq "$itemcount" ]; then
|
||||
packages_downgraded=$packages_downgraded"\"current_version\":\"$i\","
|
||||
fi
|
||||
if [ "$(expr $linecount + 1)" -eq "$itemcount" ]; then
|
||||
packages_downgraded=$packages_downgraded"\"new_version\":\"$i\"}"
|
||||
itemcount=$(expr $itemcount + 4) # get ready for next item
|
||||
fi
|
||||
;;
|
||||
INSTALLED:)
|
||||
if [ "$(expr $linecount + 2)" -eq "$itemcount" ]; then
|
||||
if [ "${i%:*}" = "${i}" ]; then
|
||||
itemcount=0 # This is not a valid item so reset item count
|
||||
MODE=
|
||||
else
|
||||
i=$(echo $i | tr -d :)
|
||||
if [ -n "$packages_new" ]; then
|
||||
packages_new=$packages_new","
|
||||
fi
|
||||
packages_new=$packages_new"{\"name\":\"$i\",\"repository\":\"${REPO}\","
|
||||
fi
|
||||
fi
|
||||
if [ "$(expr $linecount + 1)" -eq "$itemcount" ]; then
|
||||
packages_new=$packages_new"\"version\":\"$i\"}"
|
||||
itemcount=$(expr $itemcount + 2) # get ready for next item
|
||||
fi
|
||||
;;
|
||||
REINSTALLED:)
|
||||
if [ "$(expr $linecount + 1)" -eq "$itemcount" ]; then
|
||||
if [ "${i%-*}" = "${i}" ]; then
|
||||
itemcount=0 # This is not a valid item so reset item count
|
||||
MODE=
|
||||
else
|
||||
name=${i%-*}
|
||||
version=${i##*-}
|
||||
itemcount="$(expr $itemcount + 1)" # get ready for next item
|
||||
if [ -n "$packages_reinstall" ]; then
|
||||
packages_reinstall=$packages_reinstall"," # separator for next item
|
||||
fi
|
||||
packages_reinstall=$packages_reinstall"{\"name\":\"$name\",\"version\":\"$version\",\"repository\":\"${REPO}\"}"
|
||||
fi
|
||||
fi
|
||||
;;
|
||||
REMOVED:)
|
||||
if [ "$(expr $linecount + 2)" -eq "$itemcount" ]; then
|
||||
if [ "${i%:*}" = "${i}" ]; then
|
||||
itemcount=0 # This is not a valid item so reset item count
|
||||
MODE=
|
||||
else
|
||||
i=$(echo $i | tr -d :)
|
||||
if [ -n "$packages_removed" ]; then
|
||||
packages_removed=$packages_removed","
|
||||
fi
|
||||
packages_removed=$packages_removed"{\"name\":\"$i\",\"repository\":\"$(pkg query %R ${i})\","
|
||||
fi
|
||||
fi
|
||||
if [ "$(expr $linecount + 1)" -eq "$itemcount" ]; then
|
||||
packages_removed=$packages_removed"\"version\":\"$i\"}"
|
||||
itemcount=$(expr $itemcount + 2) # get ready for next item
|
||||
fi
|
||||
;;
|
||||
UPGRADED:)
|
||||
if [ "$(expr $linecount + 4)" -eq "$itemcount" ]; then
|
||||
if [ "${i%:*}" = "${i}" ]; then
|
||||
itemcount=0 # This is not a valid item so reset item count
|
||||
MODE=
|
||||
else
|
||||
i=$(echo $i | tr -d :)
|
||||
if [ -z "$packages_upgraded" ]; then
|
||||
packages_upgraded="{\"name\":\"$i\"," # If it is the first item then we do not want a separator
|
||||
else
|
||||
packages_upgraded=$packages_upgraded", {\"name\":\"$i\","
|
||||
fi
|
||||
packages_upgraded=$packages_upgraded"\"repository\":\"${REPO}\","
|
||||
fi
|
||||
fi
|
||||
if [ "$(expr $linecount + 3)" -eq "$itemcount" ]; then
|
||||
packages_upgraded=$packages_upgraded"\"current_version\":\"$i\","
|
||||
fi
|
||||
if [ "$(expr $linecount + 1)" -eq "$itemcount" ]; then
|
||||
packages_upgraded=$packages_upgraded"\"new_version\":\"$i\"}"
|
||||
itemcount=$(expr $itemcount + 4) # get ready for next item
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
REPO=$(echo "${LINE}" | grep -o '\[.*\]' | tr -d '[]')
|
||||
if [ -z "${REPO}" ]; then
|
||||
REPO=${UPSTREAM}
|
||||
fi
|
||||
|
||||
linecount=$(expr $linecount + 1)
|
||||
for i in $(echo "${LINE}" | tr '[' '(' | cut -d '(' -f1); do
|
||||
case ${MODE} in
|
||||
DOWNGRADED:)
|
||||
if [ "$(expr $linecount + 4)" -eq "$itemcount" ]; then
|
||||
if [ "${i%:*}" = "${i}" ]; then
|
||||
itemcount=0 # This is not a valid item so reset item count
|
||||
MODE=
|
||||
else
|
||||
i=$(echo $i | tr -d :)
|
||||
if [ -z "$packages_downgraded" ]; then
|
||||
packages_downgraded="{\"name\":\"$i\"," # If it is the first item then we do not want a separator
|
||||
else
|
||||
packages_downgraded=$packages_downgraded", {\"name\":\"$i\","
|
||||
fi
|
||||
packages_downgraded=$packages_downgraded"\"repository\":\"${REPO}\","
|
||||
fi
|
||||
fi
|
||||
if [ "$(expr $linecount + 3)" -eq "$itemcount" ]; then
|
||||
packages_downgraded=$packages_downgraded"\"current_version\":\"$i\","
|
||||
fi
|
||||
if [ "$(expr $linecount + 1)" -eq "$itemcount" ]; then
|
||||
packages_downgraded=$packages_downgraded"\"new_version\":\"$i\"}"
|
||||
itemcount=$(expr $itemcount + 4) # get ready for next item
|
||||
fi
|
||||
;;
|
||||
INSTALLED:)
|
||||
if [ "$(expr $linecount + 2)" -eq "$itemcount" ]; then
|
||||
if [ "${i%:*}" = "${i}" ]; then
|
||||
itemcount=0 # This is not a valid item so reset item count
|
||||
MODE=
|
||||
else
|
||||
i=$(echo $i | tr -d :)
|
||||
if [ -n "$packages_new" ]; then
|
||||
packages_new=$packages_new","
|
||||
fi
|
||||
packages_new=$packages_new"{\"name\":\"$i\",\"repository\":\"${REPO}\","
|
||||
fi
|
||||
fi
|
||||
if [ "$(expr $linecount + 1)" -eq "$itemcount" ]; then
|
||||
packages_new=$packages_new"\"version\":\"$i\"}"
|
||||
itemcount=$(expr $itemcount + 2) # get ready for next item
|
||||
fi
|
||||
;;
|
||||
REINSTALLED:)
|
||||
if [ "$(expr $linecount + 1)" -eq "$itemcount" ]; then
|
||||
if [ "${i%-*}" = "${i}" ]; then
|
||||
itemcount=0 # This is not a valid item so reset item count
|
||||
MODE=
|
||||
else
|
||||
name=${i%-*}
|
||||
version=${i##*-}
|
||||
itemcount="$(expr $itemcount + 1)" # get ready for next item
|
||||
if [ -n "$packages_reinstall" ]; then
|
||||
packages_reinstall=$packages_reinstall"," # separator for next item
|
||||
fi
|
||||
packages_reinstall=$packages_reinstall"{\"name\":\"$name\",\"version\":\"$version\",\"repository\":\"${REPO}\"}"
|
||||
fi
|
||||
fi
|
||||
;;
|
||||
REMOVED:)
|
||||
if [ "$(expr $linecount + 2)" -eq "$itemcount" ]; then
|
||||
if [ "${i%:*}" = "${i}" ]; then
|
||||
itemcount=0 # This is not a valid item so reset item count
|
||||
MODE=
|
||||
else
|
||||
i=$(echo $i | tr -d :)
|
||||
if [ -n "$packages_removed" ]; then
|
||||
packages_removed=$packages_removed","
|
||||
fi
|
||||
packages_removed=$packages_removed"{\"name\":\"$i\",\"repository\":\"$(pkg query %R ${i})\","
|
||||
fi
|
||||
fi
|
||||
if [ "$(expr $linecount + 1)" -eq "$itemcount" ]; then
|
||||
packages_removed=$packages_removed"\"version\":\"$i\"}"
|
||||
itemcount=$(expr $itemcount + 2) # get ready for next item
|
||||
fi
|
||||
;;
|
||||
UPGRADED:)
|
||||
if [ "$(expr $linecount + 4)" -eq "$itemcount" ]; then
|
||||
if [ "${i%:*}" = "${i}" ]; then
|
||||
itemcount=0 # This is not a valid item so reset item count
|
||||
MODE=
|
||||
else
|
||||
i=$(echo $i | tr -d :)
|
||||
if [ -z "$packages_upgraded" ]; then
|
||||
packages_upgraded="{\"name\":\"$i\"," # If it is the first item then we do not want a separator
|
||||
else
|
||||
packages_upgraded=$packages_upgraded", {\"name\":\"$i\","
|
||||
fi
|
||||
packages_upgraded=$packages_upgraded"\"repository\":\"${REPO}\","
|
||||
fi
|
||||
fi
|
||||
if [ "$(expr $linecount + 3)" -eq "$itemcount" ]; then
|
||||
packages_upgraded=$packages_upgraded"\"current_version\":\"$i\","
|
||||
fi
|
||||
if [ "$(expr $linecount + 1)" -eq "$itemcount" ]; then
|
||||
packages_upgraded=$packages_upgraded"\"new_version\":\"$i\"}"
|
||||
itemcount=$(expr $itemcount + 4) # get ready for next item
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
|
||||
case $i in
|
||||
INSTALLED:|REMOVED:)
|
||||
itemcount=$(expr $linecount + 2)
|
||||
MODE=$i
|
||||
;;
|
||||
REINSTALLED:)
|
||||
itemcount=$(expr $linecount + 1)
|
||||
MODE=$i
|
||||
;;
|
||||
DOWNGRADED:|UPGRADED:)
|
||||
itemcount=$(expr $linecount + 4)
|
||||
MODE=$i
|
||||
;;
|
||||
esac
|
||||
done
|
||||
linecount=$(expr $linecount + 1)
|
||||
|
||||
case $i in
|
||||
INSTALLED:|REMOVED:)
|
||||
itemcount=$(expr $linecount + 2)
|
||||
MODE=$i
|
||||
;;
|
||||
REINSTALLED:)
|
||||
itemcount=$(expr $linecount + 1)
|
||||
MODE=$i
|
||||
;;
|
||||
DOWNGRADED:|UPGRADED:)
|
||||
itemcount=$(expr $linecount + 4)
|
||||
MODE=$i
|
||||
;;
|
||||
esac
|
||||
done
|
||||
done < ${OUTFILE}
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ -z "$base_to_reboot" ]; then
|
||||
if opnsense-update -cbf; then
|
||||
base_to_reboot="$(opnsense-update -v)"
|
||||
fi
|
||||
if [ -z "$base_to_reboot" ]; then
|
||||
if opnsense-update -cbf; then
|
||||
base_to_reboot="$(opnsense-update -v)"
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ -n "$base_to_reboot" ]; then
|
||||
base_to_delete="$(opnsense-version -v base)"
|
||||
base_is_size="$(opnsense-update -bfSr $base_to_reboot)"
|
||||
if [ "$base_to_reboot" != "$base_to_delete" -a -n "$base_is_size" ]; then
|
||||
if [ -z "${packages_upgraded}" ]; then
|
||||
packages_upgraded="{\"name\":\"base\"," # If it is the first item then we do not want a separator
|
||||
if [ -n "$base_to_reboot" ]; then
|
||||
base_to_delete="$(opnsense-version -v base)"
|
||||
base_is_size="$(opnsense-update -bfSr $base_to_reboot)"
|
||||
if [ "$base_to_reboot" != "$base_to_delete" -a -n "$base_is_size" ]; then
|
||||
if [ -z "${packages_upgraded}" ]; then
|
||||
packages_upgraded="{\"name\":\"base\"," # If it is the first item then we do not want a separator
|
||||
else
|
||||
packages_upgraded=$packages_upgraded", {\"name\":\"base\","
|
||||
packages_upgraded=$packages_upgraded", {\"name\":\"base\","
|
||||
fi
|
||||
packages_upgraded=$packages_upgraded"\"size\":\"$base_is_size\","
|
||||
packages_upgraded=$packages_upgraded"\"repository\":\"${UPSTREAM}\","
|
||||
packages_upgraded=$packages_upgraded"\"current_version\":\"$base_to_delete\","
|
||||
packages_upgraded=$packages_upgraded"\"new_version\":\"$base_to_reboot\"}"
|
||||
upgrade_needs_reboot="1"
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ -z "$kernel_to_reboot" ]; then
|
||||
if opnsense-update -cfk; then
|
||||
kernel_to_reboot="$(opnsense-update -v)"
|
||||
fi
|
||||
if [ -z "$kernel_to_reboot" ]; then
|
||||
if opnsense-update -cfk; then
|
||||
kernel_to_reboot="$(opnsense-update -v)"
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ -n "$kernel_to_reboot" ]; then
|
||||
kernel_to_delete="$(opnsense-version -v kernel)"
|
||||
kernel_is_size="$(opnsense-update -fkSr $kernel_to_reboot)"
|
||||
if [ "$kernel_to_reboot" != "$kernel_to_delete" -a -n "$kernel_is_size" ]; then
|
||||
if [ -n "$kernel_to_reboot" ]; then
|
||||
kernel_to_delete="$(opnsense-version -v kernel)"
|
||||
kernel_is_size="$(opnsense-update -fkSr $kernel_to_reboot)"
|
||||
if [ "$kernel_to_reboot" != "$kernel_to_delete" -a -n "$kernel_is_size" ]; then
|
||||
if [ -z "${packages_upgraded}" ]; then
|
||||
packages_upgraded="{\"name\":\"kernel\"," # If it is the first item then we do not want a separator
|
||||
packages_upgraded="{\"name\":\"kernel\"," # If it is the first item then we do not want a separator
|
||||
else
|
||||
packages_upgraded=$packages_upgraded", {\"name\":\"kernel\","
|
||||
packages_upgraded=$packages_upgraded", {\"name\":\"kernel\","
|
||||
fi
|
||||
packages_upgraded=$packages_upgraded"\"size\":\"$kernel_is_size\","
|
||||
packages_upgraded=$packages_upgraded"\"repository\":\"${UPSTREAM}\","
|
||||
packages_upgraded=$packages_upgraded"\"current_version\":\"$kernel_to_delete\","
|
||||
packages_upgraded=$packages_upgraded"\"new_version\":\"$kernel_to_reboot\"}"
|
||||
upgrade_needs_reboot="1"
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
packages_is_size="$(opnsense-update -SRp)"
|
||||
if [ -n "${packages_is_size}" ]; then
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user