From e99cd67232cf8d763424845e59212b3bd1399b0a Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Sun, 8 Jan 2012 15:30:37 +0000 Subject: [package] base-files: implement a --force option for sysupgrade to override image checks, useful to upgrade old ar71xx installations to current trunk ones git-svn-id: svn://svn.openwrt.org/openwrt/trunk@29688 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- package/base-files/files/sbin/sysupgrade | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) (limited to 'package/base-files/files/sbin/sysupgrade') diff --git a/package/base-files/files/sbin/sysupgrade b/package/base-files/files/sbin/sysupgrade index fcf01b02d0..be11c5bf3f 100755 --- a/package/base-files/files/sbin/sysupgrade +++ b/package/base-files/files/sbin/sysupgrade @@ -12,6 +12,7 @@ export DELAY= export CONF_IMAGE= export CONF_BACKUP= export HELP=0 +export FORCE=0 # parse options while [ -n "$1" ]; do @@ -24,6 +25,7 @@ while [ -n "$1" ]; do -c) export SAVE_OVERLAY=1;; -b|--create-backup) export CONF_BACKUP="$2"; shift;; -f) export CONF_IMAGE="$2"; shift;; + -F|--force) export FORCE=1; shift;; -h|--help) export HELP=1; break;; -*) echo "Invalid option: $1" @@ -54,6 +56,8 @@ Options: then exit. Does not flash an image. If file is '-', i.e. stdout, verbosity is set to 0 (i.e. quiet). -n do not save configuration over reflash + -F / --force + Flash image even if image checks fail, this is dangerous! -q less verbose -v more verbose -h / --help display this help @@ -129,8 +133,13 @@ type platform_check_image >/dev/null 2>/dev/null || { for check in $sysupgrade_image_check; do ( eval "$check \"\$ARGV\"" ) || { - echo "Image check '$check' failed." - exit 1 + if [ $FORCE -eq 1 ]; then + echo "Image check '$check' failed but --force given - will update anyway!" + break + else + echo "Image check '$check' failed." + exit 1 + fi } done -- cgit v1.2.3