Subversion Repositories SmartDukaan

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
2084 rajveer 1
#!/bin/bash
2
 
3
if [ $# -ne 1 ]
4
then
5
    echo "Error - Invalid Arguments. Please enter entity id of 7 digits"
6
    exit
7
fi
8
ENTITY_ID=$1
9
echo $ENTITY_ID
10
# resolve links - $0 may be a softlink
11
PRG="$0"
12
 
13
while [ -h "$PRG" ]; do
14
  ls=`ls -ld "$PRG"`
15
  link=`expr "$ls" : '.*-> \(.*\)$'`
16
  if expr "$link" : '/.*' > /dev/null; then
17
    PRG="$link"
18
  else
19
    PRG=`dirname "$PRG"`/"$link"
20
  fi
21
done
22
 
23
# Get standard environment variables
24
PRGDIR=`dirname $(readlink -f "$PRG")`
25
 
26
PROJECT_DIR="`dirname ${PRGDIR}`"
27
LOG_DIR="/var/log/content-generation"
28
DATE=`date +%Y-%b-%d-%Hh%Mm%Ss`
29
MYSQL_DUMP="${PRGDIR}/partial-catalog-${DATE}.sql"
30
CONTENT_LOG="${LOG_DIR}/content-generation-${DATE}.log"
31
SOLR_IRDATA=/var/lib/tomcat6/webapps/export/solr/irdata_solr
32
#ENTITY_DATA_DIR="${PRGDIR}/${ENTITY_ID}"
33
#`mkdir $ENTITY_DATA_DIR`
34
 
35
STAGING_SERVER="192.168.138.69"
36
STAGING_ENTITIES_EXPORT_PATH="entities-shop2020"
37
 
38
PROD_SERVER="192.168.141.43"
39
PROD_ENTITIES_EXPORT_PATH="entities-saholic"
40
 
41
STATIC_SERVER="173.230.151.179"
42
 
43
ENTITIES_DEST_PATH="/var/lib/tomcat6/webapps/export/html/entities.tgz"
44
 
45
MAVEN_REPO="${HOME}/.m2/repository"
46
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:${MAVEN_REPO}/commons-cli/commons-cli/1.2/commons-cli-1.2.jar"
47
 
48
echo "Stopping tomcat at `date +%c`"
49
echo "======================================================="
50
/etc/init.d/tomcat6 stop
51
 
52
echo "Generating the icons and thumbnails for all Entitites"
53
echo "======================================================="
2474 rajveer 54
#cd /var/lib/tomcat6/webapps/db/media/
55
#python2.6 ImageConverter.py default.jpg icon.jpg 120 120
56
#python2.6 ImageConverter.py default.jpg thumbnail.jpg 60 60
2084 rajveer 57
echo "Icons and thumbnails generated"
58
echo "======================================================="
59
 
60
 
61
echo "Generating content for one entities ${PROJECT_DIR}"
62
echo "======================================================="
63
cd ${PROJECT_DIR}/ContentStore
2175 rajveer 64
java -cp ${M2_CLASSPATH}  in.shop2020.util.ContentGenerationUtility -t ONE -e ${ENTITY_ID} > ${CONTENT_LOG} 
2084 rajveer 65
echo "======================================================="
66
echo "Content generation completed"
67
 
68
/etc/init.d/tomcat6 start
69
/etc/init.d/apache2 restart
70
echo "Tomcat restarted at `date +%c`"
71
 
72
echo "Dumping item, vendoritemmapping and vendoritempricing tables to be imported on staging and production servers"
73
echo "======================================================="
74
cd ${PRGDIR}
2474 rajveer 75
#mysql -uroot -pshop2020 catalog -e "SELECT CONCAT('UPDATE item SET id=',id,',product_group=',product_group,',brand=',brand,',model_number=',model_number,',model_name=',model_name,',color=',color,',category=',category,',comments=',comments,',catalog_item_id=',catalog_item_id,',feature_id=',feature_id,',feature_description=',feature_description,',mrp=',mrp,',mop=',mop,',sellingPrice=',sellingPrice,',dealerPrice=',dealerPrice,',transfer_price=',transfer_price,',weight=',weight,',addedOn=',addedOn,',updatedOn=',updatedOn,',startDate=',startDate,',retireDate=',retireDate,',status=',status,',status_description=',status_description,',bestDealText=',bestDealText,',bestDealValue=',bestDealValue,',bestSellingRank=',bestSellingRank,',hotspotCategory=',hotspotCategory,',defaultForEntity=',defaultForEntity,',preferredWarehouse=',preferredWarehouse,' WHERE ID=', id) FROM item WHERE catalog_item_id = ${ENTITY_ID}" | tail -n+2 > ${MYSQL_DUMP}
2175 rajveer 76
cat ${MYSQL_DUMP}
77
#mysqldump -uroot -pshop2020 catalog --tables item vendoritemmapping vendoritempricing > ${MYSQL_DUMP}
78
#TODO Read data of only this catalog id and prepare some UPDATE statements. These statements should be executed on production  server
2084 rajveer 79
 
80
echo "Copying generated content to staging and production servers"
81
echo "======================================================="
82
#Update media content on both staging and production
83
cd /var/lib/tomcat6/webapps/export
2474 rajveer 84
#rm -f media.tgz
85
#mkdir media-${DATE}
86
#cp -r media/${ENTITY_ID} media-${DATE}/; tar -zcf media.tgz media-${DATE}; rm -rf media-${DATE}
87
#scp media.tgz ${STAGING_SERVER}:/var/lib/tomcat6/webapps/export/
88
#scp media.tgz ${PROD_SERVER}:/var/lib/tomcat6/webapps/export/
89
#scp media.tgz ${STATIC_SERVER}:/var/www/
2084 rajveer 90
 
91
#Update entities on staging using the entities-shop2020 direcotry
92
#Update entities on production using the entities-saholic directory
2474 rajveer 93
#cd /var/lib/tomcat6/webapps/export/html
94
#mkdir entities-${DATE}
95
#rm -f ${STAGING_ENTITIES_EXPORT_PATH}.tgz ${PROD_ENTITIES_EXPORT_PATH}.tgz
96
#cp -r ${STAGING_ENTITIES_EXPORT_PATH}/${ENTITY_ID} entities-${DATE}/
97
#tar -zcf ${STAGING_ENTITIES_EXPORT_PATH}.tgz entities-${DATE}
98
#rm -rf entities-${DATE} 
2084 rajveer 99
 
2474 rajveer 100
#mkdir entities-${DATE}
101
#cp -r ${PROD_ENTITIES_EXPORT_PATH}/${ENTITY_ID} entities-${DATE}
102
#tar -zcf ${PROD_ENTITIES_EXPORT_PATH}.tgz entities-${DATE}
103
#rm -rf entities-${DATE} 
2084 rajveer 104
 
2474 rajveer 105
#scp ${STAGING_ENTITIES_EXPORT_PATH}.tgz ${STAGING_SERVER}:${ENTITIES_DEST_PATH}
106
#scp ${PROD_ENTITIES_EXPORT_PATH}.tgz ${PROD_SERVER}:${ENTITIES_DEST_PATH}
2084 rajveer 107
 
108
#Update solr data on staging and production servers
2474 rajveer 109
#scp ${SOLR_IRDATA}.xml ${STAGING_SERVER}:${SOLR_IRDATA}-${DATE}.xml
110
#scp ${SOLR_IRDATA}.xml ${PROD_SERVER}:${SOLR_IRDATA}-${DATE}.xml
2084 rajveer 111
 
112
#Put mysql dump on staging and production servers
2474 rajveer 113
#scp ${MYSQL_DUMP} ${STAGING_SERVER}:/catalog-dumps
114
#scp ${MYSQL_DUMP} ${PROD_SERVER}:/catalog-dumps
2084 rajveer 115
 
2474 rajveer 116
#ssh ${STAGING_SERVER} "echo ${DATE}>/catalog-dumps/latest.timestamp"
117
#ssh ${PROD_SERVER} "echo ${DATE}>/catalog-dumps/latest.timestamp"
118
#ssh ${STATIC_SERVER} "echo ${DATE}>/catalog-dumps/latest.timestamp"
2084 rajveer 119
 
120
echo "Done copying content to staging and production servers"
121
echo "======================================================="