diff options
author | Bob Gilligan <gilligan@vyatta.com> | 2010-03-08 17:36:22 -0800 |
---|---|---|
committer | Bob Gilligan <gilligan@vyatta.com> | 2010-03-08 17:36:22 -0800 |
commit | 81df5c53d7dd6e7d3869ce96b3febc172e21611b (patch) | |
tree | c8b3a3d8e29a3952148ebf1a562d70da32d28512 | |
parent | fb87a7ac196538f6e3eab6794f92bfe8be66b054 (diff) | |
download | vyatta-cfg-quagga-81df5c53d7dd6e7d3869ce96b3febc172e21611b.tar.gz vyatta-cfg-quagga-81df5c53d7dd6e7d3869ce96b3febc172e21611b.zip |
Use more reliable method for determining system version.
-rwxr-xr-x | scripts/install/install-functions | 7 | ||||
-rwxr-xr-x | scripts/install/install-image | 8 | ||||
-rwxr-xr-x | scripts/install/install-image-existing | 2 |
3 files changed, 11 insertions, 6 deletions
diff --git a/scripts/install/install-functions b/scripts/install/install-functions index 3f85e75b..d88df618 100755 --- a/scripts/install/install-functions +++ b/scripts/install/install-functions @@ -281,7 +281,7 @@ is_union_install () # outputs the version string of the current running version. get_cur_version () { - ver=`dpkg -l | grep "^ii vyatta-version" | awk '{print $3}'` + ver=`dpkg-query --showformat='${Version}' --show vyatta-version` if [ -z "$ver" ]; then echo "UNKNOWN" else @@ -299,14 +299,15 @@ get_new_version () # CD_SQUASH_ROOT is set up => we are installing with a specified ISO # image file. use the version string from there. dpkg -l --root=${CD_SQUASH_ROOT} | \ - grep "^ii vyatta-version" | awk '{print $3}' + grep "^.. vyatta-version " | awk '{print $3}' return fi ver_file=${ver_path} if is_live_cd_boot && [ -f "$ver_file" ]; then # we are installing from a live CD boot - dpkg -l | grep "^ii vyatta-version" | awk '{print $3}' + ver=`dpkg-query --showformat='${Version}' --show vyatta-version` + echo $ver return fi diff --git a/scripts/install/install-image b/scripts/install/install-image index fd306aec..f717588b 100755 --- a/scripts/install/install-image +++ b/scripts/install/install-image @@ -211,9 +211,13 @@ else CURVER=$(get_cur_version) fi NEWVER=$(get_new_version) -if [ -z "$CURVER" ] || [ -z "$NEWVER" ]; then - fail_exit 'Cannot find release version.' +if [ -z "$CURVER" ] ; then + fail_exit 'Cannot find current release version.' fi +if [ -z "$NEWVER" ] ; then + fail_exit 'Cannot find new release version.' +fi + if [ "$CURVER" == "$NEWVER" ]; then fail_exit "Version \"$NEWVER\" is already installed." fi diff --git a/scripts/install/install-image-existing b/scripts/install/install-image-existing index 1514d0a1..86a27f3e 100755 --- a/scripts/install/install-image-existing +++ b/scripts/install/install-image-existing @@ -32,7 +32,7 @@ if [ -z "$CURVER" ]; then fi # get new version string. this is from the squashfs image. -NEWVER=`dpkg -l --root=${CD_SQUASH_ROOT} | grep "^ii vyatta-version" | awk '{print $3}'` +NEWVER=`dpkg -l --root=${CD_SQUASH_ROOT} | grep "^.. vyatta-version " | awk '{print $3}'` if [ -z "$NEWVER" ]; then failure_exit 'Cannot find new release version.' |