From 949bb5b843236432a9401046502ad3065080ae6f Mon Sep 17 00:00:00 2001 From: jow Date: Tue, 30 Jul 2013 16:42:05 +0000 Subject: base-files: implement -T (--test) sysupgrade parameter to verify image without actually flashing it git-svn-id: svn://svn.openwrt.org/openwrt/trunk@37620 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- package/base-files/Makefile | 2 +- package/base-files/files/sbin/sysupgrade | 10 +++++++++- 2 files changed, 10 insertions(+), 2 deletions(-) (limited to 'package') diff --git a/package/base-files/Makefile b/package/base-files/Makefile index 9c226c40af..dcae920f9a 100644 --- a/package/base-files/Makefile +++ b/package/base-files/Makefile @@ -11,7 +11,7 @@ include $(INCLUDE_DIR)/kernel.mk include $(INCLUDE_DIR)/version.mk PKG_NAME:=base-files -PKG_RELEASE:=143 +PKG_RELEASE:=144 PKG_FILE_DEPENDS:=$(PLATFORM_DIR)/ $(GENERIC_PLATFORM_DIR)/base-files/ PKG_BUILD_DEPENDS:=opkg/host diff --git a/package/base-files/files/sbin/sysupgrade b/package/base-files/files/sbin/sysupgrade index c507c3bfdf..49c34b8073 100755 --- a/package/base-files/files/sbin/sysupgrade +++ b/package/base-files/files/sbin/sysupgrade @@ -15,6 +15,7 @@ export CONF_RESTORE= export NEED_IMAGE= export HELP=0 export FORCE=0 +export TEST=0 # parse options while [ -n "$1" ]; do @@ -29,6 +30,7 @@ while [ -n "$1" ]; do -r|--restore-backup) export CONF_RESTORE="$2" NEED_IMAGE=1; shift;; -f) export CONF_IMAGE="$2"; shift;; -F|--force) export FORCE=1;; + -T|--test) export TEST=1;; -h|--help) export HELP=1; break;; -*) echo "Invalid option: $1" @@ -56,6 +58,8 @@ upgrade-option: -i interactive mode -c attempt to preserve all changed files in /etc/ -n do not save configuration over reflash + -T | --test + Verify image and config .tar.gz but do not actually flash. -F | --force Flash image even if image checks fail, this is dangerous! -q less verbose @@ -171,12 +175,16 @@ if [ -n "$CONF_IMAGE" ]; then get_image "$CONF_IMAGE" "cat" > "$CONF_TAR" export SAVE_CONFIG=1 elif ask_bool $SAVE_CONFIG "Keep config files over reflash"; then - do_save_conffiles + [ $TEST -eq 1 ] || do_save_conffiles export SAVE_CONFIG=1 else export SAVE_CONFIG=0 fi +if [ $TEST -eq 1 ]; then + exit 0 +fi + run_hooks "" $sysupgrade_pre_upgrade ubus call system upgrade -- cgit v1.2.3