Subversion Repositories SmartDukaan

Rev

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