summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAn-Cheng Huang <ancheng@vyatta.com>2009-11-02 15:46:37 -0800
committerAn-Cheng Huang <ancheng@vyatta.com>2009-11-02 15:46:37 -0800
commitd07ddbc5b98f739bebc8fd7ecdf2a6a6fe5d8375 (patch)
treee0e346dfe0d50e4214cf5bbd51a85bdb7cd8b085
parent56339a193bb7e94667e12e97f98937e4544e4158 (diff)
downloadvyatta-cfg-quagga-d07ddbc5b98f739bebc8fd7ecdf2a6a6fe5d8375.tar.gz
vyatta-cfg-quagga-d07ddbc5b98f739bebc8fd7ecdf2a6a6fe5d8375.zip
use top-level pid for progress indicator
-rwxr-xr-xscripts/install/install-functions14
-rwxr-xr-xscripts/install/install-image24
2 files changed, 30 insertions, 8 deletions
diff --git a/scripts/install/install-functions b/scripts/install/install-functions
index 3bdc1fde..29707dff 100755
--- a/scripts/install/install-functions
+++ b/scripts/install/install-functions
@@ -43,18 +43,20 @@ VYATTA_CFG_DIR=${vyatta_sysconfdir}/config
# the floppy config dir
FD_CFG_DIR=/media/floppy/config
-# Process ID for progress_indicator
-SPID=$$
-
+# PROGRESS_PID can be exported by top-level script
progress_indicator () {
+ local spid=$PROGRESS_PID
+ if [ -z "$spid" ]; then
+ spid=$$
+ fi
case "$1" in
start)
- $vyatta_bindir/progress-indicator $SPID &
+ $vyatta_bindir/progress-indicator $spid &
;;
*)
- if ! rm /tmp/pi.$SPID 2>/dev/null; then
+ if ! rm /tmp/pi.$spid 2>/dev/null; then
sleep 1
- rm /tmp/pi.$SPID 2>/dev/null
+ rm /tmp/pi.$spid 2>/dev/null
fi
sleep 1
echo -n -e "\b"
diff --git a/scripts/install/install-image b/scripts/install/install-image
index 0bf31a00..6ed0f732 100755
--- a/scripts/install/install-image
+++ b/scripts/install/install-image
@@ -5,6 +5,8 @@ source /opt/vyatta/sbin/install-functions
# export INSTALL_LOG for the scripts invoked
export INSTALL_LOG=/tmp/install-$$.log
+# export PROGRESS_PID for the scripts invoked
+export PROGRESS_PID=$$
# file for get-partition output
PART_FILE=''
@@ -114,12 +116,30 @@ fi
trap sig_handler INT KILL
trap exit_handler EXIT
+cat <<EOF
+Welcome to the Vyatta install program. This script
+will walk you through the process of installing the
+Vyatta image to a local hard drive.
+EOF
+
+response=''
+while [ -z $response ]
+do
+ echo -n "Would you like to continue? (Yes/No) [Yes]: "
+ response=$(get_response "Yes" "Yes No Y N")
+ if [ "$response" == "no" ] || [ "$response" == "n" ]; then
+ fail_exit 'Ok then.'
+ fi
+done
+
if is_live_cd_boot; then
if [ -n "$NEW_ISO" ]; then
- fail_exit 'Do not specify an image when installing from a live CD.'
+ echo 'You are trying to install from a live CD boot. The live CD image'
+ fail_exit 'will be used. Do not specify an ISO image file.'
fi
elif [ -z "$NEW_ISO" ]; then
- fail_exit 'Must specify an image to install.'
+ echo 'You are trying to install from an already installed system. An ISO'
+ fail_exit 'image file to install must be specified.'
else
# installing on an installed system. set up the new image.
set_up_new_iso