| 4851 |
rajveer |
1 |
#!/bin/bash
|
|
|
2 |
|
|
|
3 |
if [ $# -ne 1 ]
|
|
|
4 |
then
|
|
|
5 |
echo "Usage: $0 <UPDATE|ROLLBACK>"
|
|
|
6 |
exit 1
|
|
|
7 |
fi
|
|
|
8 |
|
|
|
9 |
ACTION=$1
|
|
|
10 |
if [ $ACTION != "UPDATE" -a $ACTION != "ROLLBACK" ]
|
|
|
11 |
then
|
|
|
12 |
echo "Wrong input"
|
|
|
13 |
echo "Usage: $0 <UPDATE|ROLLBACK>"
|
|
|
14 |
exit 1
|
|
|
15 |
fi
|
|
|
16 |
|
| 5103 |
mandeep.dh |
17 |
PROD_SERVERS="prod1 prod3 prod2"
|
| 5480 |
amit.gupta |
18 |
MAVEN_REPO="${HOME}/.m2/repository"
|
|
|
19 |
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}/org/apache/thrift/libthrift/0.7.0/libthrift-0.7.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:${MAVEN_REPO}/readonly/apache/commons-io/1.3.2/commons-io-1.3.2.jar:${MAVEN_REPO}/org/json/json/20090211/json-20090211.jar:${MAVEN_REPO}/org/apache/velocity/velocity-tools/2.0/velocity-tools-2.0.jar:${MAVEN_REPO}/com/google/code/gson/gson/1.6/gson-1.6.jar:${MAVEN_REPO}/javax/mail/mail/1.4/mail-1.4.jar:${MAVEN_REPO}/readonly/apache/poi-3.6/20091214/poi-3.6-20091214.jar:${MAVEN_REPO}/readonly/apache/poi-scratchpad-3.6/20091214/poi-scratchpad-3.6-20091214.jar:${MAVEN_REPO}/commons-net/commons-net/3.0.1/commons-net-3.0.1.jar:${MAVEN_REPO}/junit/junit/4.8.2/junit-4.8.2.jar"
|
|
|
20 |
LOG_DIR="/var/log/content-generation"
|
|
|
21 |
PRICES_AND_AVAILABILITY_LOG="${LOG_DIR}/prices-and-availability.log"
|
| 4851 |
rajveer |
22 |
STATIC_SERVERS="static0 static1"
|
|
|
23 |
DB_SERVER="192.168.190.114"
|
| 5273 |
amar.kumar |
24 |
TEST_SERVER="192.168.141.43"
|
| 4908 |
rajveer |
25 |
STATUS=0
|
| 4851 |
rajveer |
26 |
for PROD_SERVER in ${PROD_SERVERS}
|
|
|
27 |
do
|
|
|
28 |
echo "Updating content on : ${PROD_SERVER}\n"
|
|
|
29 |
echo "Stopping apache on server"
|
|
|
30 |
ssh ${PROD_SERVER} "/etc/init.d/apache2 stop"
|
|
|
31 |
echo "Stopped apache on server"
|
|
|
32 |
|
| 5103 |
mandeep.dh |
33 |
echo "Executing command below on server"
|
| 4851 |
rajveer |
34 |
#echo ssh ${PROD_SERVER} "/root/code/trunk/runutils/update-content-and-catalog.sh $ACTION $DB_SERVER"
|
|
|
35 |
ssh ${PROD_SERVER} "/root/code/trunk/runutils/update-content-and-catalog.sh $ACTION $DB_SERVER"
|
| 4908 |
rajveer |
36 |
STATUS=$(($STATUS+$?))
|
| 5103 |
mandeep.dh |
37 |
echo "Status for ${PROD_SERVER} is ${STATUS}"
|
| 4851 |
rajveer |
38 |
DB_SERVER=""
|
|
|
39 |
echo "Content updated on production server ${PROD_SERVER}"
|
|
|
40 |
|
|
|
41 |
echo "Starting apache on server"
|
|
|
42 |
ssh ${PROD_SERVER} "/etc/init.d/apache2 start"
|
|
|
43 |
echo "Starting apache on server"
|
|
|
44 |
done
|
|
|
45 |
|
|
|
46 |
|
|
|
47 |
for STATIC_SERVER in ${STATIC_SERVERS}
|
|
|
48 |
do
|
|
|
49 |
echo "Updating content on : ${STATIC_SERVER}\n"
|
|
|
50 |
ssh ${STATIC_SERVER} "/root/code/trunk/runutils/update-static-content.sh $ACTION"
|
|
|
51 |
echo "Content updated on static server ${STATIC_SERVER}"
|
|
|
52 |
done
|
| 4908 |
rajveer |
53 |
|
|
|
54 |
if [ $ACTION = "UPDATE" -a $STATUS -ne 0 ]
|
|
|
55 |
then
|
| 5104 |
mandeep.dh |
56 |
echo "Update failed.\n"
|
|
|
57 |
# /code/trunk/runutils/ContentUpdationManager.sh ROLLBACK
|
| 5480 |
amit.gupta |
58 |
else
|
|
|
59 |
echo "====================="
|
|
|
60 |
echo "Generating and Junglee Prices and Availability Uploading to FTP site."
|
|
|
61 |
java -cp ${M2_CLASSPATH} in.shop2020.util.AmazonSCDataGenerator > ${PRICES_AND_AVAILABILITY_LOG}
|
|
|
62 |
echo "====================="
|
| 4908 |
rajveer |
63 |
fi
|
| 5273 |
amar.kumar |
64 |
|
|
|
65 |
echo "Starting test on Production Servers"
|
|
|
66 |
echo "========================="
|
|
|
67 |
ssh ${TEST_SERVER} "/opt/seleniumTests/seleniumTest.sh prodDeploy"
|