| 
     
      
      
      From: <bl...@us...> - 2003-10-21 20:39:15
      
     
   | 
Update of /cvsroot/devil-linux/build/scripts/scripts
In directory sc8-pr-cvs1:/tmp/cvs-serv17902/build/scripts/scripts
Modified Files:
	pre_init upgrade-config 
Log Message:
Keep log of upgrade changes, plus saved config files.
Index: pre_init
===================================================================
RCS file: /cvsroot/devil-linux/build/scripts/scripts/pre_init,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -d -r1.8 -r1.9
--- pre_init	17 Oct 2003 21:00:51 -0000	1.8
+++ pre_init	21 Oct 2003 18:19:29 -0000	1.9
@@ -94,6 +94,9 @@
 				echo
 				$NORMAL
 				echo 'Your old etc directory will be saved until reboot at:  /shm/etc-old'
+				echo "Your old config file has been saved as:  /etc/sysconfig/config.old"
+				echo "A log of all changes is available at:  /etc/sysconfig/upgrade.log"
+
 				echo
 				read -n 1 -t 300 -p 'Press any key to continue ... (timeout in 5 minutes)'
 				echo
Index: upgrade-config
===================================================================
RCS file: /cvsroot/devil-linux/build/scripts/scripts/upgrade-config,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -d -r1.3 -r1.4
--- upgrade-config	21 Oct 2003 17:09:38 -0000	1.3
+++ upgrade-config	21 Oct 2003 18:19:29 -0000	1.4
@@ -5,6 +5,7 @@
 TMPF=/shm/var/tmp/upd-tmp.$$
 RESULT=/shm/var/tmp/upd-res.$$
 RAMDISKDIR="/shm"
+LOGF="newconfig/etc/sysconfig/upgrade.log"
 
 #DIALOG="dialog --clear --aspect 76 --no-shadow"
 DIALOG="dialog --clear --no-shadow"
@@ -24,6 +25,16 @@
 
 # Modify values in a system configuration file
 mod_config() {
+    if [ $(grep -c "^${2}=" ${1}) -eq 1 ]; then
+	eval bs=$(grep "^${2}=" ${1} | sed "s/^${2}=//")
+	if [ "$bs" = "$3" ]; then
+#	    printf '%-30s no changed needed\n' "$2"
+	    return
+	fi
+    else
+	printf '%-30s not found in new config\n' "$2" | tee -a $LOGF
+	return
+    fi
     rm -f $TMPC
     cp -f $1 $TMPC
     if [ "$3" = "yes" -o "$3" = "no" ]; then
@@ -32,6 +43,7 @@
 	sed "s^${2}=.*$${2}=\"${3}\"" $TMPC > $1
     fi
     rm -f $TMPC
+    printf '%-30s changed to:  "%s"\n' "$2" "$3" | tee -a $LOGF
 }
 
 pause() {
@@ -139,13 +151,20 @@
 	    done
 	else
 	# OK button pressed
+	    echo >> $LOGF
+	    echo "************************************************************" >> $LOGF
+	    date >> $LOGF
+	    echo >> $LOGF
+	    echo "Files saved from old config:" >> $LOGF
+	    echo "----------------------------" >> $LOGF
+	    echo >> $LOGF
 	    for f in $(cat $RESULT)
 	    do
 		eval p=$f
 		d="$(dirname newconfig/$p)"
 		[ ! -d $d ] && mkdir -p $d
 		# echo cp -af $p newconfig/$p
-		echo "keeping file:  $p"
+		echo "keeping file:  $p" | tee -a $LOGF
 		cp -af $p newconfig/$p
 	    done
 	    break
@@ -156,17 +175,23 @@
     fi
 done
 
+echo
 if askyesno "/etc/sysconfig/config migration" "Do you want to migrate old values to your new /etc/sysconfig/config ?" yes
 then
-    ls -l etc/sysconfig/config newconfig/etc/sysconfig/config
+    echo >> $LOGF
+    echo >> $LOGF
+    echo "/etc/sysconfig/config migration:" >> $LOGF
+    echo "--------------------------------" >> $LOGF
+    echo >> $LOGF
+    cp -f etc/sysconfig/config newconfig/etc/sysconfig/config.old
+    cp -f newconfig/etc/sysconfig/config newconfig/etc/sysconfig/config.default
     . etc/sysconfig/config
-    echo -n "Migrating /etc/sysconfig/config values "
+    echo "Migrating /etc/sysconfig/config values "
+    echo
     for bs in $(grep -v -e '^ *#' -e '^ *$' etc/sysconfig/config|cut -f1 -d'=')
     do
-	echo -n "."
 	eval mod_config newconfig/etc/sysconfig/config ${bs} \"\$${bs}\"
     done
-    echo
 fi
 
 rm -fr $TMPD $RESULT
 |