| 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"
|
| 1708 |
chandransh |
24 |
PRODUCT_LIST_LOG="${LOG_DIR}/product-list-${DATE}.log"
|
| 1601 |
chandransh |
25 |
IR_LOG="${LOG_DIR}/irdata-generation-${DATE}.log"
|
| 1613 |
chandransh |
26 |
SOLR_IRDATA=/var/lib/tomcat6/webapps/export/solr/irdata_solr
|
| 1594 |
rajveer |
27 |
|
| 1601 |
chandransh |
28 |
STAGING_SERVER="192.168.138.69"
|
|
|
29 |
STAGING_ENTITIES_EXPORT_PATH="entities-shop2020"
|
|
|
30 |
|
|
|
31 |
PROD_SERVER="192.168.141.43"
|
|
|
32 |
PROD_ENTITIES_EXPORT_PATH="entities-saholic"
|
|
|
33 |
|
| 1619 |
rajveer |
34 |
ENTITIES_DEST_PATH="/var/lib/tomcat6/webapps/export/html/entities.tgz"
|
|
|
35 |
|
| 1594 |
rajveer |
36 |
MAVEN_REPO="${HOME}/.m2/repository"
|
|
|
37 |
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"
|
|
|
38 |
|
| 1613 |
chandransh |
39 |
echo "Stopping tomcat at `date +%c`"
|
|
|
40 |
echo "======================================================="
|
|
|
41 |
/etc/init.d/tomcat6 stop
|
|
|
42 |
|
|
|
43 |
echo "Dumping item, vendoritemmapping and vendoritempricing tables to be imported on staging and production servers"
|
|
|
44 |
echo "======================================================="
|
|
|
45 |
cd ${PRGDIR}
|
|
|
46 |
mysqldump -uroot -pshop2020 catalog --tables item vendoritemmapping vendoritempricing > ${MYSQL_DUMP}
|
|
|
47 |
|
| 1594 |
rajveer |
48 |
echo "Generating the icons and thumbnails for all Entitites"
|
|
|
49 |
echo "======================================================="
|
| 1358 |
rajveer |
50 |
cd /var/lib/tomcat6/webapps/db/media/
|
|
|
51 |
python2.6 ImageConverter.py default.jpg icon.jpg 120 120
|
|
|
52 |
python2.6 ImageConverter.py default.jpg thumbnail.jpg 60 60
|
| 1594 |
rajveer |
53 |
echo "Icons and thumbnails generated"
|
|
|
54 |
echo "======================================================="
|
| 939 |
rajveer |
55 |
|
| 1601 |
chandransh |
56 |
|
| 1594 |
rajveer |
57 |
echo "Generating content for new entities"
|
|
|
58 |
echo "======================================================="
|
|
|
59 |
cd ${PROJECT_DIR}/ContentStore
|
|
|
60 |
java -cp ${M2_CLASSPATH} in.shop2020.ui.util.VUI entities > ${CONTENT_LOG}
|
|
|
61 |
echo "Content generation completed"
|
|
|
62 |
echo "======================================================="
|
| 939 |
rajveer |
63 |
|
| 1708 |
chandransh |
64 |
echo "Generating content for partners"
|
|
|
65 |
echo "======================================================="
|
|
|
66 |
cd ${PROJECT_DIR}/ContentStore
|
|
|
67 |
java -cp ${M2_CLASSPATH} in.shop2020.util.ProductListGenerator > ${PRODUCT_LIST_LOG}
|
|
|
68 |
echo "Content generation for partners completed"
|
|
|
69 |
echo "======================================================="
|
| 939 |
rajveer |
70 |
|
| 1594 |
rajveer |
71 |
echo "Generating Solr data for all entities"
|
|
|
72 |
echo "======================================================="
|
|
|
73 |
java -cp ${M2_CLASSPATH} in.shop2020.util.IR > ${IR_LOG}
|
|
|
74 |
echo "Solr data generated"
|
|
|
75 |
echo "======================================================="
|
| 1358 |
rajveer |
76 |
|
| 1601 |
chandransh |
77 |
/etc/init.d/tomcat6 start
|
|
|
78 |
/etc/init.d/apache2 restart
|
| 1609 |
chandransh |
79 |
echo "Tomcat restarted at `date +%c`"
|
| 1601 |
chandransh |
80 |
|
|
|
81 |
echo "Copying generated content to staging and production servers"
|
| 1594 |
rajveer |
82 |
echo "======================================================="
|
| 1613 |
chandransh |
83 |
#Update media content on both staging and production
|
| 1601 |
chandransh |
84 |
cd /var/lib/tomcat6/webapps/export
|
|
|
85 |
rm -f media.tgz
|
|
|
86 |
mv media media-${DATE}; tar -zcf media.tgz media-${DATE}; mv media-${DATE} media
|
|
|
87 |
scp media.tgz ${STAGING_SERVER}:/var/lib/tomcat6/webapps/export/
|
|
|
88 |
scp media.tgz ${PROD_SERVER}:/var/lib/tomcat6/webapps/export/
|
|
|
89 |
|
| 1613 |
chandransh |
90 |
#Update entities on staging using the entities-shop2020 direcotry
|
|
|
91 |
#Update entities on production using the entities-saholic directory
|
| 1601 |
chandransh |
92 |
cd /var/lib/tomcat6/webapps/export/html
|
|
|
93 |
rm -f ${STAGING_ENTITIES_EXPORT_PATH}.tgz ${PROD_ENTITIES_EXPORT_PATH}.tgz
|
| 1619 |
rajveer |
94 |
mv ${STAGING_ENTITIES_EXPORT_PATH} entities-${DATE}
|
|
|
95 |
tar -zcf ${STAGING_ENTITIES_EXPORT_PATH}.tgz entities-${DATE}
|
|
|
96 |
mv entities-${DATE} ${STAGING_ENTITIES_EXPORT_PATH}
|
| 1613 |
chandransh |
97 |
|
| 1619 |
rajveer |
98 |
mv ${PROD_ENTITIES_EXPORT_PATH} entities-${DATE}
|
|
|
99 |
tar -zcf ${PROD_ENTITIES_EXPORT_PATH}.tgz entities-${DATE}
|
|
|
100 |
mv entities-${DATE} ${PROD_ENTITIES_EXPORT_PATH}
|
|
|
101 |
|
|
|
102 |
scp ${STAGING_ENTITIES_EXPORT_PATH}.tgz ${STAGING_SERVER}:${ENTITIES_DEST_PATH}
|
|
|
103 |
scp ${PROD_ENTITIES_EXPORT_PATH}.tgz ${PROD_SERVER}:${ENTITIES_DEST_PATH}
|
|
|
104 |
|
| 1708 |
chandransh |
105 |
#Update product list data on staging and production servers
|
|
|
106 |
cd /var/lib/tomcat6/webapps/export
|
|
|
107 |
rm -f partners.tgz
|
|
|
108 |
mv partners partners-${DATE}; tar -zcf partners.tgz partners-${DATE}; mv partners-${DATE} partners
|
|
|
109 |
scp partners.tgz ${STAGING_SERVER}:/var/lib/tomcat6/webapps/export/
|
|
|
110 |
scp partners.tgz ${PROD_SERVER}:/var/lib/tomcat6/webapps/export/
|
|
|
111 |
|
| 1613 |
chandransh |
112 |
#Update solr data on staging and production servers
|
|
|
113 |
scp ${SOLR_IRDATA}.xml ${STAGING_SERVER}:${SOLR_IRDATA}-${DATE}.xml
|
|
|
114 |
scp ${SOLR_IRDATA}.xml ${PROD_SERVER}:${SOLR_IRDATA}-${DATE}.xml
|
|
|
115 |
|
|
|
116 |
#Put mysql dump on staging and production servers
|
| 1704 |
chandransh |
117 |
scp ${MYSQL_DUMP} ${STAGING_SERVER}:/catalog-dumps
|
|
|
118 |
scp ${MYSQL_DUMP} ${PROD_SERVER}:/catalog-dumps
|
| 1613 |
chandransh |
119 |
|
| 1616 |
rajveer |
120 |
ssh ${STAGING_SERVER} "echo ${DATE}>/catalog-dumps/latest.timestamp"
|
|
|
121 |
ssh ${PROD_SERVER} "echo ${DATE}>/catalog-dumps/latest.timestamp"
|
|
|
122 |
|
| 1601 |
chandransh |
123 |
echo "Done copying content to staging and production servers"
|
| 1594 |
rajveer |
124 |
echo "======================================================="
|