[Dbconfig-common-devel] dbconfig-common/dpkg postinst,1.15,1.16

xerakko-guest at haydn.debian.org xerakko-guest at haydn.debian.org
Sun Jul 31 10:26:41 UTC 2005


Update of /cvsroot/dbconfig-common/dbconfig-common/dpkg
In directory haydn:/tmp/cvs-serv12163/dbconfig-common/dpkg

Modified Files:
	postinst 
Log Message:
changed populating order in internal/pgsql (1.scripts, 2.admin 3.user) and add support for an "upgrade-dbadmin" data directory.



Index: postinst
===================================================================
RCS file: /cvsroot/dbconfig-common/dbconfig-common/dpkg/postinst,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -d -r1.15 -r1.16
--- postinst	11 Jul 2005 04:23:01 -0000	1.15
+++ postinst	31 Jul 2005 10:26:39 -0000	1.16
@@ -74,17 +74,6 @@
 		dbc_sqlfile=$dbc_share/data/$dbc_package/install/$dbc_dbtype
 		dbc_sqlfile_adm=$dbc_share/data/$dbc_package/install-dbadmin/$dbc_dbtype
 		dbc_scriptfile=$dbc_share/scripts/$dbc_package/install/$dbc_dbtype
-		if [ -f "$dbc_sqlfile" ]; then
-			_dbc_asuser="yes"
-			$dbc_sqlfile_cmd $dbc_sqlfile || dbc_install_error "populating database"
-			_dbc_asuser=""
-			[ "$dbc_tried_again" ] && return 0
-		fi
-		if [ -f "$dbc_sqlfile_adm" ]; then
-			$dbc_sqlfile_cmd $dbc_sqlfile_adm || dbc_install_error "populating database with administrative sql"
-			[ "$dbc_tried_again" ] && return 0
-		fi
-
 		if [ -f "$dbc_scriptfile" ]; then
 			if ! sh -c "$dbc_scriptfile $*"; then
 				dbc_error="$dbc_scriptfile exited with non-zero status"
@@ -92,6 +81,19 @@
 				[ "$dbc_tried_again" ] && return 0
 			fi
 		fi
+		
+		if [ -f "$dbc_sqlfile_adm" ]; then
+			$dbc_sqlfile_cmd $dbc_sqlfile_adm || dbc_install_error "populating database with administrative sql"
+			[ "$dbc_tried_again" ] && return 0
+		fi
+		
+		if [ -f "$dbc_sqlfile" ]; then
+			_dbc_asuser="yes"
+			$dbc_sqlfile_cmd $dbc_sqlfile || dbc_install_error "populating database"
+			_dbc_asuser=""
+			[ "$dbc_tried_again" ] && return 0
+		fi
+
 
 	# end install/reconfigure section
 
@@ -106,27 +108,41 @@
 		if [ "$dbc_oldversion" ]; then
 			# check for new upgrades in these two locations
 			_dbc_upgradedir=$dbc_share/data/$dbc_package/upgrade/$dbc_dbtype
+			_dbc_upgradedir_adm=$dbc_share/data/$dbc_package/upgrade-dbadmin/$dbc_dbtype
 			_dbc_scriptupgradedir=$dbc_share/scripts/$dbc_package/upgrade/$dbc_dbtype
 
-			if [ -d $_dbc_upgradedir ]; then
+			if [ -d $_dbc_scriptupgradedir ]; then
+				for _dbc_f in `find $_dbc_scriptupgradedir -type f`; do
+					_dbc_newvers=`basename $_dbc_f`
+					if dpkg --compare-versions $dbc_oldversion lt $_dbc_newvers; then
+						_dbc_scriptupgrades_pending="$_dbc_scriptupgrades_pending $_dbc_f"
+					fi
+				done
+			fi
+			
+			if [ -d $_dbc_upgradedir_adm ]; then
+				_dbc_asuser=""
 				for _dbc_f in `find $_dbc_upgradedir -type f`; do
 					_dbc_newvers=`basename $_dbc_f`
 					if dpkg --compare-versions $dbc_oldversion lt $_dbc_newvers; then
-						_dbc_upgrades_pending="$_upgrades_pending $_dbc_f"
+						_dbc_upgrades_pending_adm="$_upgrades_pending_adm $_dbc_f"
 					fi
 				done
 			fi
-			if [ -d $_dbc_scriptupgradedir ]; then
-				for _dbc_f in `find $_dbc_scriptupgradedir -type f`; do
+			
+			if [ -d $_dbc_upgradedir ]; then
+				_dbc_asuser="yes"
+				for _dbc_f in `find $_dbc_upgradedir -type f`; do
 					_dbc_newvers=`basename $_dbc_f`
 					if dpkg --compare-versions $dbc_oldversion lt $_dbc_newvers; then
-						_dbc_scriptupgrades_pending="$_dbc_scriptupgrades_pending $_dbc_f"
+						_dbc_upgrades_pending="$_upgrades_pending $_dbc_f"
 					fi
 				done
+				_dbc_asuser=""
 			fi
 
 			# if there are any upgrades to be applied
-			if [ "$_dbc_upgrades_pending" -o "$_dbc_scriptupgrades_pending" ]; then
+			if [ "$_dbc_upgrades_pending" -o "$_dbc_scriptupgrades_pending" -o "$_dbc_upgrades_pending_adm" ]; then
 
 				# ask if they want our help in the process at all
 				db_set $dbc_package/dbconfig-upgrade "$dbc_upgrade"
@@ -150,18 +166,11 @@
 				_dbc_dbfile=/var/cache/dbconfig-common/backups/${dbc_package}_${dbc_oldversion}.$dbc_dbtype	
 				echo dbconfig-common: creating database backup in $_dbc_dbfile >&2
 				# backup before we upgrade
+				_dbc_asuser=""
 				$dbc_dump_cmd > $_dbc_dbfile
 			fi
 
-			# now go through the pending sql upgrades, one by one
-			for _dbc_f in $_dbc_upgrades_pending; do
-				# execute the script
-				echo dbconfig-common: upgrading with $_dbc_f >&2
-				$dbc_sqlfile_cmd $_dbc_f || dbc_upgrade_error "processing $_dbc_f"
-				[ "$dbc_tried_again" ] && return 0
-			done
-
-			# likewise for any scripts
+			# now go through script updates
 			for _dbc_f in $_dbc_scriptupgrades_pending; do
 				_dbc_newvers=`basename $_dbc_f`
 				# execute the script
@@ -172,6 +181,26 @@
 					[ "$dbc_tried_again" ] && return 0
 				fi
 			done
+			
+			# now go through the pending admin sql upgrades, one by one
+			for _dbc_f in $_dbc_upgrades_pending_adm; do
+				_dbc_asuser=""
+				# execute the script
+				echo dbconfig-common: upgrading with $_dbc_f >&2
+				$dbc_sqlfile_cmd $_dbc_f || dbc_upgrade_error "processing $_dbc_f"
+				[ "$dbc_tried_again" ] && return 0
+			done
+			
+			# now go through the pending sql upgrades, one by one
+			for _dbc_f in $_dbc_upgrades_pending; do
+				# execute the script
+				_dbc_asuser="yes"
+				echo dbconfig-common: upgrading with $_dbc_f >&2
+				$dbc_sqlfile_cmd $_dbc_f || dbc_upgrade_error "processing $_dbc_f"
+				[ "$dbc_tried_again" ] && return 0
+				_dbc_asuser=""
+			done
+
 		fi
 	# end upgrade section
 	fi




More information about the Dbconfig-common-devel mailing list