Subversion Repositories SmartDukaan

Rev

Rev 18369 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
1652 rajveer 1
#!/bin/bash
4850 rajveer 2
if [ $# -lt 1 ]
3
then
4
        echo "Usage: $0 <DEPLOY|ROLLBACK> <STATIC-IP>"
5
        exit 1
6
fi
1652 rajveer 7
 
4853 rajveer 8
ACTION=$1
9
if [ $ACTION != "DEPLOY" -a $ACTION != "ROLLBACK" ]
10
then
11
        echo "Wrong input"
12
        echo "Usage: $0 <DEPLOY|ROLLBACK>"
13
        exit 1
14
fi
15
 
1652 rajveer 16
# resolve links - $0 may be a softlink
17
PRG="$0"
18
 
19
while [ -h "$PRG" ]; do
20
  ls=`ls -ld "$PRG"`
21
  link=`expr "$ls" : '.*-> \(.*\)$'`
22
  if expr "$link" : '/.*' > /dev/null; then
23
    PRG="$link"
24
  else
25
    PRG=`dirname "$PRG"`/"$link"
26
  fi
27
done
28
 
29
# Get standard environment variables
30
PRGDIR=`dirname $(readlink -f "$PRG")`
31
 
32
LOGDIR=${PRGDIR}
19047 kshitij.so 33
TOMCAT_HOME="/var/lib/tomcat7"
1652 rajveer 34
PROJECT_DIR="`dirname ${PRGDIR}`"
35
COMMON_DIR="${PROJECT_DIR}/Common"
36
MAVEN_REPO="${HOME}/.m2/repository"
37
 
38
DATE=`date +%Y-%b-%d_%Hh%Mm`
39
LOGERR=error-${DATE}.log
40
 
4850 rajveer 41
STATIC_SERVER=$2
2863 chandransh 42
 
4850 rajveer 43
DEPLOYED_BUILD=`cat /catalog-dumps/current.build`
44
if [ $ACTION = "DEPLOY" ]
45
then
46
        LATEST_BUILD=`cat /catalog-dumps/latest.build`
47
        LATEST_TIMESTAMP=`cat /catalog-dumps/current.timestamp`
48
        if [ "$DEPLOYED_BUILD" = "$LATEST_BUILD" ]
49
        then
50
                echo "Already latest version is deployed"
51
                exit 1
52
        fi
53
else
54
        LATEST_BUILD=`cat /catalog-dumps/previous.build`
55
        LATEST_TIMESTAMP=`cat /catalog-dumps/current.timestamp`
56
        if [ "INVALID" = "$LATEST_INVALID" ]
57
        then
58
                echo "Nothing to roll back"
59
                exit 1
60
        fi
61
fi
62
 
63
 
1652 rajveer 64
touch ${LOGERR}
65
exec 7>&2           # Link file descriptor #7 with stderr.
66
                    # Saves stderr.
67
exec 2> ${LOGERR}     # stderr replaced with file ${LOGERR}.
68
 
4850 rajveer 69
 
2862 chandransh 70
echo "Doing svn up on the version " 
71
echo "======================================================================="
2979 chandransh 72
svn up ${PROJECT_DIR} -r `cat /catalog-dumps/svn.revision`
2862 chandransh 73
echo "======================================================================="
74
 
4727 rajveer 75
echo "Starting thrift services"
1652 rajveer 76
echo "======================================================================="
77
 
19047 kshitij.so 78
easy_install /catalog-dumps/${LATEST_BUILD}/PyProj-0.1-py2.7.egg
1652 rajveer 79
 
19047 kshitij.so 80
chmod -R 777 /usr/local/lib/python2.7/dist-packages/PyProj-0.1-py2.7.egg/
5339 anupam.sin 81
 
19047 kshitij.so 82
/usr/bin/python2.7 -u /usr/local/lib/python2.7/dist-packages/PyProj-0.1-py2.7.egg/shop2020/config/script/ConfigPropertiesReloader.py
83
 
4850 rajveer 84
/etc/init.d/catalog-server restart
5952 mandeep.dh 85
/etc/init.d/inventory-server restart
4850 rajveer 86
/etc/init.d/user-server restart
87
/etc/init.d/order-server restart
88
/etc/init.d/logistics-server restart
89
/etc/init.d/helper-server restart
90
/etc/init.d/promotion-server restart
91
/etc/init.d/payment-server restart
2863 chandransh 92
 
4727 rajveer 93
echo "Started thrift services"
1652 rajveer 94
echo "======================================================================="
95
 
4850 rajveer 96
echo "Deploying wars"
1652 rajveer 97
echo "======================================================================="
98
# deploy war and start tomcat
4850 rajveer 99
 
19047 kshitij.so 100
rm -rf /var/lib/tomcat7/webapps/ROOT*
4850 rajveer 101
cp /catalog-dumps/${LATEST_BUILD}/Website-1.0-SNAPSHOT.war ${TOMCAT_HOME}/webapps/ROOT.war
19047 kshitij.so 102
rm -rf /var/lib/tomcat7/webapps/mobileapi*
11035 amit.gupta 103
cp /catalog-dumps/${LATEST_BUILD}/MobileWebsiteApi-1.0-SNAPSHOT.war ${TOMCAT_HOME}/webapps/mobileapi.war
18368 kshitij.so 104
/etc/init.d/tomcat7 restart
18369 kshitij.so 105
sleep 15
4850 rajveer 106
echo "Deployed wars"
1652 rajveer 107
echo "======================================================================="
108
 
3942 rajveer 109
 
2863 chandransh 110
if [ ${STATIC_SERVER} ]
111
then
112
	echo "======================================================================="
113
	echo "Copying js and css to static server"
19047 kshitij.so 114
	scp -r /var/lib/tomcat7/webapps/ROOT/css/* root@${STATIC_SERVER}:/var/www/static.saholic.com/css/
115
	scp -r /var/lib/tomcat7/webapps/ROOT/js/* root@${STATIC_SERVER}:/var/www/static.saholic.com/js/
116
	scp -r /var/lib/tomcat7/webapps/ROOT/images/* root@${STATIC_SERVER}:/var/www/static.saholic.com/images/
117
	scp -r /var/lib/tomcat7/webapps/mobileapi/images/* root@${STATIC_SERVER}:/var/www/static.saholic.com/images/mobileapi
2863 chandransh 118
	echo "======================================================================="
119
	echo "Done copying css and js to static server."
120
fi
2862 chandransh 121
 
19047 kshitij.so 122
ln -s /var/lib/tomcat7/webapps/export/media/website/ /var/lib/tomcat7/webapps/ROOT/images/website
123
ln -s /var/lib/tomcat7/webapps/export/banners/ /var/lib/tomcat7/webapps/ROOT/images/banners
124
ln -s /var/lib/tomcat7/webapps/export/campaignImages/ /var/lib/tomcat7/webapps/ROOT/images/campaignImages
125
cp -r /var/lib/tomcat7/webapps/export/helpdocs-${LATEST_TIMESTAMP} /var/lib/tomcat7/webapps/ROOT/helpdocs
126
cp -r /var/lib/tomcat7/webapps/export/javascripts/* /var/lib/tomcat7/webapps/ROOT/js/
4850 rajveer 127
 
128
if [ $ACTION = "DEPLOY" ]
129
then
130
    cat /catalog-dumps/current.build > /catalog-dumps/previous.build
131
    echo ${LATEST_BUILD} > /catalog-dumps/current.build
132
else
133
    echo ${LATEST_BUILD} > /catalog-dumps/current.build
134
    echo "INVALID" > /catalog-dumps/previous.build
135
fi
136
 
1652 rajveer 137
#Clean up IO redirection
138
exec 2>&7 7>&-      # Restore stdout and close file descriptor #7.