Rev 4732 | Rev 4883 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed
#!/bin/bashif [ $# -lt 1 ]thenecho "Usage: $0 <UPDATE|ROLLBACK> <DB_SERVER>"exit 1fi# resolve links - $0 may be a softlinkPRG="$0"while [ -h "$PRG" ]; dols=`ls -ld "$PRG"`link=`expr "$ls" : '.*-> \(.*\)$'`if expr "$link" : '/.*' > /dev/null; thenPRG="$link"elsePRG=`dirname "$PRG"`/"$link"fidone# Get standard environment variablesPRGDIR=`dirname $(readlink -f "$PRG")`SOLR_DIR=/root/solr/example/exampledocsSOLR_SCHEMA_DIR=/root/solr/example/solr/confMEDIA_EXPORT_PATH="/var/lib/tomcat6/webapps/export/"WEBSITE_ROOT_PATH="/var/lib/tomcat6/webapps/ROOT/"WEBSITE_IMAGES_PATH="/var/lib/tomcat6/webapps/ROOT/images/"WEBSITE_JAVASCRIPT_PATH="/var/lib/tomcat6/webapps/ROOT/js/"CONTENT_EXPORT_PATH="/var/lib/tomcat6/webapps/export/html/"SOLR_IRDATA="/var/lib/tomcat6/webapps/export/solr/*irdata_solr.xml"DB_SERVER="$2"ACTION="$1"DEPLOYED_TIMESTAMP=`cat /catalog-dumps/current.timestamp`if [ $ACTION = "UPDATE" ]thenLATEST_TIMESTAMP=`cat /catalog-dumps/latest.timestamp`if [ "$DEPLOYED_TIMESTAMP" = "$LATEST_TIMESTAMP" ]thenecho "Already latest version is deployed"exit 1fielseLATEST_TIMESTAMP=`cat /catalog-dumps/previous.timestamp`if [ "INVALID" = "$LATEST_TIMESTAMP" ]thenecho "Nothing to roll back"exit 1fifiif [ "$DB_SERVER" != "" ]thenecho "Updating mysql database"echo "======================================================="MYSQL_DUMP="/catalog-dumps/partial-catalog-${LATEST_TIMESTAMP}.sql"mysql -uroot -pshop2020 -h ${DB_SERVER} catalog < ${MYSQL_DUMP}fiecho "Updating media files"echo "======================================================="cd ${MEDIA_EXPORT_PATH}if [ $ACTION == "UPDATE" ]thenrsync -az --delete media/ media-previousrsync -az --delete media-offline/ mediaelsersync -az --delete media-previous/ mediafiecho "Updating product list for partners"echo "======================================================="cd ${MEDIA_EXPORT_PATH}tar -zxf partners.tgzunlink partnersln -s partners-${LATEST_TIMESTAMP} partnersecho "Updating javascripts for product comparison"echo "======================================================="tar -zxf javascripts.tgzunlink javascriptsln -s javascripts-${LATEST_TIMESTAMP} javascriptscp -r javascripts/* ${WEBSITE_JAVASCRIPT_PATH}echo "Updating content snippets"echo "======================================================="cd ${CONTENT_EXPORT_PATH}tar -zxf entities.tgzunlink entitiesln -s entities-${LATEST_TIMESTAMP} entitiesecho "Updating helpdoc content"echo "======================================================="cd ${MEDIA_EXPORT_PATH}tar -zxf helpdocs.tgzunlink ${WEBSITE_ROOT_PATH}/helpdocsln -s helpdocs-${LATEST_TIMESTAMP} ${WEBSITE_ROOT_PATH}/helpdocsecho "Updating solr schema"echo "======================================================="cd ${MEDIA_EXPORT_PATH}tar -zxf solr.tgzunlink solrln -s solr-${LATEST_TIMESTAMP} solrcd ${SOLR_SCHEMA_DIR}cat part1.xml > new_schema.xmlcat /var/lib/tomcat6/webapps/export/solr/irmetadata_solrschema.xml | sed -e 's/<?xml version="1.0" encoding="UTF-8"?>//' >> new_schema.xmlcat part2.xml >> new_schema.xmlcat /var/lib/tomcat6/webapps/export/solr/irmetadata_catchall.xml | sed -e 's/<?xml version="1.0" encoding="UTF-8"?>//' >> new_schema.xmlcat part3.xml >> new_schema.xmlDIFF=`diff -q schema.xml new_schema.xml`if [ ! -z "$DIFF" ]thencp new_schema.xml schema.xml/etc/init.d/solr-server stop/etc/init.d/solr-server startsleep 15fiecho "Posting data to solr"echo "======================================================="cd ${SOLR_DIR}./deleteAll.shls ${SOLR_IRDATA} | xargs java -jar post.jarecho "Done posting data to solr"echo "======================================================="if [ $ACTION = "UPDATE" ]thencat /catalog-dumps/current.timestamp > /catalog-dumps/previous.timestampecho ${LATEST_TIMESTAMP} > /catalog-dumps/current.timestampelseecho ${LATEST_TIMESTAMP} > /catalog-dumps/current.timestampecho "INVALID" > /catalog-dumps/previous.timestampfiecho "Restarting the tomcat to clear the cache"echo "======================================================="/etc/init.d/tomcat6 restartecho "======================================================="echo "Restarted the tomcat to clear the cache"