Angevine, Mark W
2014-09-11 21:37:22 UTC
I am setting up a master-slave repository pair to store files managed by an application I am writing.
Both master and slave svn instances are running as Apache webserver modules under Windows 7. I used the RedBook instructions to configure the slave for write-thru proxy and this is working properly. Writes to the slave show up as new versions committed in the master.
I executed svnsync init in a cmd shell window to establish the sync relationship and set username/password.
I have written a simple post-commit.bat that executes svnsync to send new commits to the slave:
@ECHO OFF
ECHO "This is before..." > C:\Temp\post-commit.log
svnsync sync "http://147.20.86.109/CM/" --non-interactive --password foo
ECHO "This is after." >> C:\Temp\post-commit.log
exit 0
If I execute the post-commit.bat as a stand-alone batch file in a windows cmd shell, it works, and the new commits are copied to the slave. However, the same post-commit.bat is not working as a hook script. When I do a commit on the master, the script fails the svnsync step, although other commands can be executed successfully as part of the batch file ("svnsyn help > C:/Temp/some.log" works, writing the svnsync help text into a file). I have also tried putting "ping <slave ip_address> > C:\Temp\some.log" in the post-commit.bat and it will execute properly, writing the ping output to the file named.
Has anyone set up a simple master-slave "mirroring" system using the Apache webservice installation? Were you able to get svnsync in a posr-commit.bat hook script? Can you see anything wrong with what I am doing?
Both master and slave svn instances are running as Apache webserver modules under Windows 7. I used the RedBook instructions to configure the slave for write-thru proxy and this is working properly. Writes to the slave show up as new versions committed in the master.
I executed svnsync init in a cmd shell window to establish the sync relationship and set username/password.
I have written a simple post-commit.bat that executes svnsync to send new commits to the slave:
@ECHO OFF
ECHO "This is before..." > C:\Temp\post-commit.log
svnsync sync "http://147.20.86.109/CM/" --non-interactive --password foo
ECHO "This is after." >> C:\Temp\post-commit.log
exit 0
If I execute the post-commit.bat as a stand-alone batch file in a windows cmd shell, it works, and the new commits are copied to the slave. However, the same post-commit.bat is not working as a hook script. When I do a commit on the master, the script fails the svnsync step, although other commands can be executed successfully as part of the batch file ("svnsyn help > C:/Temp/some.log" works, writing the svnsync help text into a file). I have also tried putting "ping <slave ip_address> > C:\Temp\some.log" in the post-commit.bat and it will execute properly, writing the ping output to the file named.
Has anyone set up a simple master-slave "mirroring" system using the Apache webservice installation? Were you able to get svnsync in a posr-commit.bat hook script? Can you see anything wrong with what I am doing?