Subversion Repositories SmartDukaan

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
1594 rajveer 1
#!/bin/bash
1166 rajveer 2
 
1594 rajveer 3
# resolve links - $0 may be a softlink
4
PRG="$0"
939 rajveer 5
 
1594 rajveer 6
while [ -h "$PRG" ]; do
7
  ls=`ls -ld "$PRG"`
8
  link=`expr "$ls" : '.*-> \(.*\)$'`
9
  if expr "$link" : '/.*' > /dev/null; then
10
    PRG="$link"
11
  else
12
    PRG=`dirname "$PRG"`/"$link"
13
  fi
14
done
15
 
16
# Get standard environment variables
17
PRGDIR=`dirname $(readlink -f "$PRG")`
18
 
1601 chandransh 19
PROJECT_DIR="`dirname ${PRGDIR}`"
20
LOG_DIR="/var/log/content-generation"
21
DATE=`date +%Y-%b-%d-%Hh%Mm%Ss`
1613 chandransh 22
MYSQL_DUMP="${PRGDIR}/partial-catalog-${DATE}.sql"
1601 chandransh 23
CONTENT_LOG="${LOG_DIR}/content-generation-${DATE}.log"
1948 rajveer 24
COMPARISON_LOG="${LOG_DIR}/comparison-score-computation-${DATE}.log"
1708 chandransh 25
PRODUCT_LIST_LOG="${LOG_DIR}/product-list-${DATE}.log"
1601 chandransh 26
IR_LOG="${LOG_DIR}/irdata-generation-${DATE}.log"
1613 chandransh 27
SOLR_IRDATA=/var/lib/tomcat6/webapps/export/solr/irdata_solr
1594 rajveer 28
 
1601 chandransh 29
STAGING_SERVER="192.168.138.69"
30
STAGING_ENTITIES_EXPORT_PATH="entities-shop2020"
31
 
32
PROD_SERVER="192.168.141.43"
33
PROD_ENTITIES_EXPORT_PATH="entities-saholic"
34
 
1980 rajveer 35
STATIC_SERVER="173.230.151.179"
36
 
1619 rajveer 37
ENTITIES_DEST_PATH="/var/lib/tomcat6/webapps/export/html/entities.tgz"
38
 
1594 rajveer 39
MAVEN_REPO="${HOME}/.m2/repository"
40
M2_CLASSPATH="${MAVEN_REPO}/in/shop2020/ContentStore/1.0-SNAPSHOT/ContentStore-1.0-SNAPSHOT.jar:${MAVEN_REPO}/in/shop2020/ThriftConfig/1.0-SNAPSHOT/ThriftConfig-1.0-SNAPSHOT.jar:${MAVEN_REPO}/in/shop2020/Common/1.0-SNAPSHOT/Common-1.0-SNAPSHOT.jar:${MAVEN_REPO}/readonly/apache/velocity/1.6.3/velocity-1.6.3.jar:${MAVEN_REPO}/readonly/apache/commons-lang/2.4/commons-lang-2.4.jar:${MAVEN_REPO}/readonly/apache/commons-collections/3.2.1/commons-collections-3.2.1.jar:${MAVEN_REPO}/readonly/apache/thrift/0.2.0/thrift-0.2.0.jar:${MAVEN_REPO}/readonly/slf4j/slf4j-api/1.5.8/slf4j-api-1.5.8.jar:${MAVEN_REPO}/readonly/slf4j/slf4j-simple/1.5.8/slf4j-simple-1.5.8.jar:${MAVEN_REPO}/readonly/apache/commons-logging-api/1.1/commons-logging-api-1.1.jar:${MAVEN_REPO}/readonly/bdb/je/4.1.7/je-4.1.7.jar:${MAVEN_REPO}/readonly/jython/2.5.1/jython-2.5.1.jar"
41
 
1613 chandransh 42
echo "Stopping tomcat at `date +%c`"
43
echo "======================================================="
44
/etc/init.d/tomcat6 stop
45
 
1594 rajveer 46
echo "Generating the icons and thumbnails for all Entitites"
47
echo "======================================================="
1358 rajveer 48
cd /var/lib/tomcat6/webapps/db/media/
49
python2.6 ImageConverter.py default.jpg icon.jpg 120 120
50
python2.6 ImageConverter.py default.jpg thumbnail.jpg 60 60
1594 rajveer 51
echo "Icons and thumbnails generated"
52
echo "======================================================="
939 rajveer 53
 
1601 chandransh 54
 
1948 rajveer 55
echo "Computing comparison scores for all entities"
56
echo "======================================================="
57
cd ${PROJECT_DIR}/ContentStore
1951 rajveer 58
java -cp ${M2_CLASSPATH}  in.shop2020.util.CMP > ${COMPARISON_LOG} 
1948 rajveer 59
echo "======================================================="
60
echo "Comparison score computation completed"
61
 
1594 rajveer 62
echo "Generating content for new entities"
63
echo "======================================================="
64
cd ${PROJECT_DIR}/ContentStore
1980 rajveer 65
java -cp ${M2_CLASSPATH}  in.shop2020.ui.util.VUI entitiesall > ${CONTENT_LOG} 
1594 rajveer 66
echo "Content generation completed"
67
echo "======================================================="
939 rajveer 68
 
1708 chandransh 69
echo "Generating content for partners"
70
echo "======================================================="
71
cd ${PROJECT_DIR}/ContentStore
72
java -cp ${M2_CLASSPATH}  in.shop2020.util.ProductListGenerator > ${PRODUCT_LIST_LOG}
73
echo "Content generation for partners completed"
74
echo "======================================================="
939 rajveer 75
 
1594 rajveer 76
echo "Generating Solr data for all entities"
77
echo "======================================================="
78
java -cp ${M2_CLASSPATH} in.shop2020.util.IR > ${IR_LOG}
79
echo "Solr data generated"
80
echo "======================================================="
1358 rajveer 81
 
1601 chandransh 82
/etc/init.d/tomcat6 start
83
/etc/init.d/apache2 restart
1609 chandransh 84
echo "Tomcat restarted at `date +%c`"
1601 chandransh 85
 
1980 rajveer 86
echo "Dumping item, vendoritemmapping and vendoritempricing tables to be imported on staging and production servers"
87
echo "======================================================="
88
cd ${PRGDIR}
89
mysqldump -uroot -pshop2020 catalog --tables item vendoritemmapping vendoritempricing > ${MYSQL_DUMP}
90
 
1601 chandransh 91
echo "Copying generated content to staging and production servers"
1594 rajveer 92
echo "======================================================="
1613 chandransh 93
#Update media content on both staging and production
1601 chandransh 94
cd /var/lib/tomcat6/webapps/export
95
rm -f media.tgz
96
mv media media-${DATE}; tar -zcf media.tgz media-${DATE}; mv media-${DATE} media
97
scp media.tgz ${STAGING_SERVER}:/var/lib/tomcat6/webapps/export/
98
scp media.tgz ${PROD_SERVER}:/var/lib/tomcat6/webapps/export/
1980 rajveer 99
scp media.tgz ${STATIC_SERVER}:/var/www/
1601 chandransh 100
 
1613 chandransh 101
#Update entities on staging using the entities-shop2020 direcotry
102
#Update entities on production using the entities-saholic directory
1601 chandransh 103
cd /var/lib/tomcat6/webapps/export/html
104
rm -f ${STAGING_ENTITIES_EXPORT_PATH}.tgz ${PROD_ENTITIES_EXPORT_PATH}.tgz
1619 rajveer 105
mv ${STAGING_ENTITIES_EXPORT_PATH} entities-${DATE}
106
tar -zcf ${STAGING_ENTITIES_EXPORT_PATH}.tgz entities-${DATE}
107
mv entities-${DATE} ${STAGING_ENTITIES_EXPORT_PATH}
1613 chandransh 108
 
1619 rajveer 109
mv ${PROD_ENTITIES_EXPORT_PATH} entities-${DATE}
110
tar -zcf ${PROD_ENTITIES_EXPORT_PATH}.tgz entities-${DATE}
111
mv entities-${DATE} ${PROD_ENTITIES_EXPORT_PATH}
112
 
113
scp ${STAGING_ENTITIES_EXPORT_PATH}.tgz ${STAGING_SERVER}:${ENTITIES_DEST_PATH}
114
scp ${PROD_ENTITIES_EXPORT_PATH}.tgz ${PROD_SERVER}:${ENTITIES_DEST_PATH}
115
 
1708 chandransh 116
#Update product list data on staging and production servers
117
cd /var/lib/tomcat6/webapps/export
118
rm -f partners.tgz
119
mv partners partners-${DATE}; tar -zcf partners.tgz partners-${DATE}; mv partners-${DATE} partners
120
scp partners.tgz ${STAGING_SERVER}:/var/lib/tomcat6/webapps/export/
121
scp partners.tgz ${PROD_SERVER}:/var/lib/tomcat6/webapps/export/
1980 rajveer 122
scp partners.tgz ${STATIC_SERVER}:/var/www
1708 chandransh 123
 
2229 rajveer 124
rm -f javascripts.tgz
125
mv javascripts javascripts-${DATE}; tar -zcf javascripts.tgz partners-${DATE}; mv javascripts-${DATE} javascripts
126
scp javascripts.tgz ${STAGING_SERVER}:/var/lib/tomcat6/webapps/export/
127
scp javascripts.tgz ${PROD_SERVER}:/var/lib/tomcat6/webapps/export/
128
scp javascripts.tgz ${STATIC_SERVER}:/var/www
129
 
1613 chandransh 130
#Update solr data on staging and production servers
131
scp ${SOLR_IRDATA}.xml ${STAGING_SERVER}:${SOLR_IRDATA}-${DATE}.xml
132
scp ${SOLR_IRDATA}.xml ${PROD_SERVER}:${SOLR_IRDATA}-${DATE}.xml
133
 
134
#Put mysql dump on staging and production servers
1704 chandransh 135
scp ${MYSQL_DUMP} ${STAGING_SERVER}:/catalog-dumps
136
scp ${MYSQL_DUMP} ${PROD_SERVER}:/catalog-dumps
1613 chandransh 137
 
1616 rajveer 138
ssh ${STAGING_SERVER} "echo ${DATE}>/catalog-dumps/latest.timestamp"
139
ssh ${PROD_SERVER} "echo ${DATE}>/catalog-dumps/latest.timestamp"
1980 rajveer 140
ssh ${STATIC_SERVER} "echo ${DATE}>/catalog-dumps/latest.timestamp"
1616 rajveer 141
 
1601 chandransh 142
echo "Done copying content to staging and production servers"
1594 rajveer 143
echo "======================================================="