[evolvis-commits] r15326: Improved to support upgrading
mirabilos at evolvis.org
mirabilos at evolvis.org
Mon Feb 28 23:55:41 CET 2011
Author: mirabilos
Date: 2011-02-28 23:55:41 +0100 (Mon, 28 Feb 2011)
New Revision: 15326
Modified:
trunk/gforge_base/evolvisforge-5.1/gforge/fusionforge.spec
Log:
Improved to support upgrading
Modified: trunk/gforge_base/evolvisforge-5.1/gforge/fusionforge.spec
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/gforge/fusionforge.spec 2011-02-28 22:55:37 UTC (rev 15325)
+++ trunk/gforge_base/evolvisforge-5.1/gforge/fusionforge.spec 2011-02-28 22:55:41 UTC (rev 15326)
@@ -300,7 +300,7 @@
mantisbt plugin for FusionForge.
%prep
-%setup
+%setup -q
#%patch0 -p1
#%patch1 -p1
#%patch2 -p1
@@ -341,7 +341,7 @@
}
# we need to fix up the fusionforge-install-3-db.php script to ref %{GFORGE_DIR}
-search_and_replace "/opt/gforge" "/usr/share/gforge"
+search_and_replace "/opt/gforge" "%{GFORGE_DIR}"
# installing gforge
%{__cp} -a * $RPM_BUILD_ROOT/%{GFORGE_DIR}/
@@ -403,7 +403,7 @@
%{__rm} -fr $RPM_BUILD_ROOT/%{GFORGE_DIR}/plugins/viewcvs
### Plugin setup ###
-%{__cp} $RPM_BUILD_ROOT%{GFORGE_DIR}/plugins/*/etc/*.ini $RPM_BUILD_ROOT%{GFORGE_CONF_DIR}/config.ini.d
+%{__cp} $RPM_BUILD_ROOT%{GFORGE_DIR}/plugins/*/etc/*.ini $RPM_BUILD_ROOT%{GFORGE_CONF_DIR}/config.ini.d/
%{__cp} $RPM_BUILD_ROOT%{GFORGE_DIR}/plugins/*/etc/cron.d/* $RPM_BUILD_ROOT%{_sysconfdir}/cron.d/
# plugin: aselectextauth
@@ -523,65 +523,71 @@
fi
%post
-# check to see if the database already exists. if not, we proceed to create it.
-# if so, we print a warning message.
-echo "\q" | su - postgres -c "/usr/bin/psql %{dbname}" 1>/dev/null 2>&1
-ret=$?
-if [ $ret -ne 0 ] ; then
- FFORGE_DB=%{dbname}
- FFORGE_USER=%{dbuser}
- FFORGE_ADMIN_USER=%{fforge_admin}
- FFORGE_ADMIN_PASSWORD=%{fforge_passwd}
- export FFORGE_DB FFORGE_USER FFORGE_ADMIN_USER FFORGE_ADMIN_PASSWORD
- /usr/bin/php %{GFORGE_DIR}/fusionforge-install-3-db.php >>/var/log/%{name}-install.log 2>&1
-else
- echo "Database %{dbname} already exists. Will not proceed with database setup."
- echo "Please see %{GFORGE_DIR}/fusionforge-install-3-db.php and run it manually"
- echo "if deemed necessary."
-fi
+if [ "$1" -eq "1" ]; then
+ # check to see if the database already exists. if not, we proceed to create it.
+ # if so, we print a warning message.
+ echo "\q" | su - postgres -c "/usr/bin/psql %{dbname}" 1>/dev/null 2>&1
+ ret=$?
+ if [ $ret -ne 0 ] ; then
+ FFORGE_DB=%{dbname}
+ FFORGE_USER=%{dbuser}
+ FFORGE_ADMIN_USER=%{fforge_admin}
+ FFORGE_ADMIN_PASSWORD=%{fforge_passwd}
+ export FFORGE_DB FFORGE_USER FFORGE_ADMIN_USER FFORGE_ADMIN_PASSWORD
+ /usr/bin/php %{GFORGE_DIR}/fusionforge-install-3-db.php >>/var/log/%{name}-install.log 2>&1
+ else
+ echo "Database %{dbname} already exists. Will not proceed with database setup." >>/var/log/%{name}-install.log 2>&1
+ echo "Please see %{GFORGE_DIR}/fusionforge-install-3-db.php and run it manually" >>/var/log/%{name}-install.log 2>&1
+ echo "if deemed necessary." >>/var/log/%{name}-install.log 2>&1
+ fi
-/usr/bin/php %{GFORGE_DIR}/db/upgrade-db.php >>/var/log/%{name}-install.log 2>&1
+ /usr/bin/php %{GFORGE_DIR}/db/upgrade-db.php >>/var/log/%{name}-install.log 2>&1
-HOSTNAME=`hostname -f`
-%{__sed} -i -e "s!gforge.company.com!$HOSTNAME!g" %{GFORGE_CONF_DIR}/local.inc
-%{__sed} -i -e "s!gforge.company.com!$HOSTNAME!g" /etc/httpd/conf.d/gforge.conf
+ HOSTNAME=`hostname -f`
+ %{__sed} -i -e "s!gforge.company.com!$HOSTNAME!g" %{GFORGE_CONF_DIR}/local.inc
+ %{__sed} -i -e "s!gforge.company.com!$HOSTNAME!g" /etc/httpd/conf.d/gforge.conf
-/etc/init.d/httpd restart >/dev/null 2>&1
+ /etc/init.d/httpd restart >/dev/null 2>&1
-# generate random hash for session_key
-HASH=$(/bin/dd if=/dev/urandom bs=1024 count=100 2>/dev/null | /usr/bin/sha1sum | cut -c1-40)
-%{__sed} -i -e "s/sys_session_key = 'foobar'/sys_session_key = '$HASH'/g" %{GFORGE_CONF_DIR}/local.inc
+ # generate random hash for session_key
+ HASH=$(/bin/dd if=/dev/urandom bs=1024 count=100 2>/dev/null | /usr/bin/sha1sum | cut -c1-40)
+ %{__sed} -i -e "s/sys_session_key = 'foobar'/sys_session_key = '$HASH'/g" %{GFORGE_CONF_DIR}/local.inc
-# add noreply mail alias
-echo "noreply: /dev/null" >> /etc/aliases
-/usr/bin/newaliases >/dev/null 2>&1
+ # add noreply mail alias
+ echo "noreply: /dev/null" >> /etc/aliases
+ /usr/bin/newaliases >/dev/null 2>&1
-# display message about default admin account
-echo ""
-echo "You can now connect to your FusionForge installation using:"
-echo ""
-echo " http://$HOSTNAME/"
-echo ""
-echo "The default fusionforge administrator account and password is:"
-echo ""
-echo "Account Name = %{fforge_admin}"
-echo "Password = %{fforge_passwd}"
-#echo "Please change it to something appropriate upon initial login."
-# give user a few seconds to read the message
-sleep 10
+ # display message about default admin account
+ echo ""
+ echo "You can now connect to your FusionForge installation using:"
+ echo ""
+ echo " http://$HOSTNAME/"
+ echo ""
+ echo "The default fusionforge administrator account and password is:"
+ echo ""
+ echo "Account Name = %{fforge_admin}"
+ echo "Password = %{fforge_passwd}"
+ #echo "Please change it to something appropriate upon initial login."
+ # give user a few seconds to read the message
+ sleep 10
+else
+ /usr/bin/php %{GFORGE_DIR}/db/upgrade-db.php >>/var/log/%{name}-upgrade.log 2>&1
+fi
%preun
%postun
-# Remove user/group
-if [ `/usr/bin/getent passwd | /bin/cut -d: -f1 | /bin/grep -c %{gfuser}` -ne 0 ] ; then
- echo "Removing fusionforge user..."
- /usr/sbin/userdel %{gfuser}
-fi
+if [ "$1" -eq "0" ]; then
+ # Remove user/group
+ if [ `/usr/bin/getent passwd | /bin/cut -d: -f1 | /bin/grep -c %{gfuser}` -ne 0 ] ; then
+ echo "Removing fusionforge user..."
+ /usr/sbin/userdel %{gfuser}
+ fi
-if [ `/usr/bin/getent group | /bin/cut -d: -f1 | /bin/grep -c %{gfuser}` -ne 0 ] ; then
- echo "Removing fusionforge group..."
- /usr/sbin/groupdel %{gfgroup}
+ if [ `/usr/bin/getent group | /bin/cut -d: -f1 | /bin/grep -c %{gfuser}` -ne 0 ] ; then
+ echo "Removing fusionforge group..."
+ /usr/sbin/groupdel %{gfgroup}
+ fi
fi
%post aselectextauth
More information about the evolvis-commits
mailing list