home *** CD-ROM | disk | FTP | other *** search
/ Chip 2005 May / CMCD0505.ISO / Software / Shareware / Programare / bugzero / WEB-INF / misc / upgrade / upgrade.sh < prev   
Encoding:
Linux/UNIX/POSIX Shell Script  |  2004-12-30  |  2.4 KB  |  92 lines

  1. #!/bin/sh
  2. # 1. copy configuration/template files and JDBC drivers.
  3. # 2. update the database schema.
  4.  
  5. if [ ! -f upgrade.jar ]; then 
  6. echo "Error: this program must be run in the directory misc/upgrade"
  7. exit 1
  8. fi
  9.  
  10. HOME_PRE=$@
  11. if [ "$HOME_PRE" = "" ] ; then
  12.    echo "Usage: upgrade path-to-the-installed-running-bugzero-home"
  13.    echo "   Ex: upgrade /usr/tomcat/webapps/bugzero"
  14. exit 1
  15. fi
  16.  
  17. CONF_PRE=$HOME_PRE/WEB-INF/classes/conf
  18. if [ ! -d "$CONF_PRE" ]; then
  19.    echo "Bugzero home is not entered correctly, no conf dir was found."
  20. exit 1
  21. fi
  22.  
  23. LIB_PRE=$HOME_PRE/WEB-INF/lib
  24. if [ ! -d "$LIB_PRE" ]; then
  25.    echo "Bugzero home is not entered correctly, no lib dir was found."
  26. exit 1
  27. fi
  28.  
  29. TEMPLATE_PRE=$HOME_PRE/WEB-INF/classes/template
  30. if [ ! -d "$TEMPLATE_PRE" ]; then
  31.    echo "Bugzero home is not entered correctly, no template dir was found."
  32. exit 1
  33. fi
  34.  
  35. CONF_DIR=../../classes/conf/.
  36. LIB_DIR=../../lib/.
  37. TEMPLATE_DIR=../../classes/template/.
  38.  
  39. cp -f "$CONF_PRE"/system.properties $CONF_DIR
  40. cp -f "$CONF_PRE"/db.properties $CONF_DIR
  41. cp -f "$CONF_PRE"/mail.properties $CONF_DIR
  42. cp -f "$TEMPLATE_PRE"/email_subject $TEMPLATE_DIR
  43. cp -f "$TEMPLATE_PRE"/email_body $TEMPLATE_DIR
  44.  
  45. if [ -f "$TEMPLATE_PRE"/reminder_subject ]; then
  46.   cp -f "$TEMPLATE_PRE"/reminder_subject $TEMPLATE_DIR
  47. fi
  48. if [ -f "$TEMPLATE_PRE"/reminder_body ]; then
  49.   cp -f "$TEMPLATE_PRE"/reminder_body $TEMPLATE_DIR
  50. fi
  51. if [ -f "$CONF_PRE"/schedule.properties ]; then
  52.   cp -f "$CONF_PRE"/schedule.properties $CONF_DIR
  53. fi
  54.  
  55. errorlevel=$?
  56. if [ $errorlevel = 0 ]; then
  57. for i in "$LIB_PRE"/*.*; do
  58. if [ "$i" != "$LIB_PRE/bugzero.jar" ]; then
  59. if [ "$i" != "$LIB_PRE/mail.jar" ]; then
  60. if [ "$i" != "$LIB_PRE/activation.jar" ]; then
  61. if [ "$i" != "$LIB_PRE/mysql.jar" ]; then
  62. if [ "$i" != "$LIB_PRE/mysql-connector-java-3.0.8-stable-bin.jar" ]; then
  63. if [ "$i" != "$LIB_PRE/mysql-connector-java-3.0.15-ga-bin.jar" ]; then
  64.    cp -f "$i" $LIB_DIR
  65. fi
  66. fi
  67. fi
  68. fi
  69. fi
  70. fi
  71. done
  72. errorlevel=$?
  73. fi
  74.  
  75. if [ $errorlevel != 0 ]; then
  76.   echo "////////////////////////////////////////////////////////////////////"
  77.   echo "Failed to copy required files, you may need do it manually"
  78.   echo "..................................... and then run checkdb"
  79. else 
  80. # remove the mail.jar and activation.jar if the original ones are not present.
  81.   if [ ! -f "$LIB_PRE/mail.jar" ]; then
  82.     rm -f "$LIB_DIR/mail.jar"
  83.   fi
  84.   if [ ! -f "$LIB_PRE/activation.jar" ]; then
  85.     rm -f "$LIB_DIR/activation.jar"
  86.   fi
  87.  
  88.   echo "Now updating the database schema ...."
  89.   sh checkdb.sh
  90. fi
  91.  
  92.