summaryrefslogtreecommitdiff
path: root/package/base-files
diff options
context:
space:
mode:
authorjow <jow@3c298f89-4303-0410-b956-a3cf2f4a3e73>2013-07-30 16:42:05 +0000
committerjow <jow@3c298f89-4303-0410-b956-a3cf2f4a3e73>2013-07-30 16:42:05 +0000
commit949bb5b843236432a9401046502ad3065080ae6f (patch)
treeeeeb123f8130938f2821b5ee90719d073b3cc943 /package/base-files
parent80108568420c8cd6c74d94fa734a40bdea0189cb (diff)
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
Diffstat (limited to 'package/base-files')
-rw-r--r--package/base-files/Makefile2
-rwxr-xr-xpackage/base-files/files/sbin/sysupgrade10
2 files changed, 10 insertions, 2 deletions
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