Hello,

> -----Original Message-----
> From: Himanshu Raina [mailto:raina_himan...@yahoo.com] 
> Sent: 29 July 2011 08:17
> To: users@subversion.apache.org
> Subject: Post Commit Hook Script !!
> 
> Hi,
> 
> The post-commit script isn't getting executed whenever code 
> is merged from trunk to tags. Whenever the code needs to be 
> deployed the code is copied from trunk to tags. The script 
> runs fine when executed on the server but doesn't get invoked 
> whenever a commit is done.

That sounds like a permissions issue ~ you say "the script runs fine
when executed on the server" but as which user? Remember that the server
almost certainly runs as a different user (depending on your setup) and,
usually, that user has restricted access and rights.

~ mark c

> svn co http://mydomain.com/svn/Project/Trunk/Code 
> http://mydomain.com/svn/Project/Tags/QA/Code_2424
> 
> I'm using capistrano for deploying code on my server. The 
> post commit hook is given below
> 
> #!/bin/sh
> ##############################################################
> ###############################
> REPOS="$1"
> 
> 
> DIR=`/usr/bin/svnlook changed  $REPOS | /usr/bin/head -n1 | 
> /bin/cut -d'/' -f2`
> 
> 
> Method=`/usr/bin/svnlook changed  $REPOS | /usr/bin/head -n1 
> | /bin/awk '{print $1}'`
> 
> 
> /bin/echo $REPOS $DIR $Method
> #################---Addition---#####################
> if [ "$Method" == "A" ] && [ "$DIR" == "QA" ]; then
> 
> 
> TID=`/usr/bin/svnlook changed  $REPOS | /usr/bin/head -n1 | 
> /bin/cut -d"/" -f3`
> 
> 
> echo "Do you wish to deploy the code on QA server"
> read input
> if [[ $input == '' ]]; then
> echo "Usage: $0 <Y/N>"
> elif [ $input == Y ]; then
> /usr/bin/ssh user@172.16.3.2 "cd /newdeploy/Project/config ; 
> /usr/bin/cap deploy:php tagid=$TID"
> elif [ $input == N ]; then
> exit
> fi
> ##############---Modification---################################
> elif [ "$Method" == "M" ] && [ "$DIR" == "QA" ]; then
> 
> 
> TID=`/usr/bin/svnlook changed  $REPOS | /usr/bin/head -n1 | 
> /bin/cut -d"/" -f3`
> 
> 
> echo "Do you wish to deploy the code on QA server"
> read input
> if [[ $input == '' ]]; then
> echo "Usage: $0 <Y/N>"
> elif [ $input == Y ]; then
> /usr/bin/ssh  user@172.16.3.2 "cd /newdeploy/Project/config ; 
> /usr/bin/cap deploy:php tagid=$TID"
> elif [ $input == N ]; then
> exit
> fi
> ################---Deletion##############################
> elif [ "$Method" == "D" ]; then
> 
> 
> exit
> 
> 
> fi
> ######################################################
> 
> 
> Regards,
> Himanshu
> 

Reply via email to