You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@subversion.apache.org by "Sharma, Gaurav" <Ga...@Safenet-inc.com> on 2011/08/10 07:25:33 UTC

Help Needed regarding svn master-slave configuration--resending i think its not delivered

Hi All,

I have a task in hand to setup a master-slave svn repository configuration so that master will synchronize its repositories with slave. I searched a lot on web and found many links telling about how to set it up. Following those links I started using "svnsync" for this purpose. But some how after spending many days I am not able it to work as desired. Both master and slave are on ubuntu 10.xx. I am trying to set it up using HTTPS

I have two objectives for this setup-

1-       End user should be able to perform both check-out and check-in to the slave repository.
2-       Master should synchronize all its repository with slave

>From the very start I have not able to perform commit on the slave. I got different errors time to time and I am really got tired of these errors.
If I commit on the master then master itself synchronizes with the slave but sometime even this part doesn't work.

Different configuration files are as follows:

On Master

/etc/apache2/mods-available/dav_svn.conf

<Location /svn>
  DAV svn
  SVNParentPath /home/svn
  AuthType Basic
  AuthName "Subversion Repository"
  AuthUserFile /etc/apache2/dav_svn.passwd
  Require valid-user
</Location>

post-commit
/usr/bin/svnsync sync --username mirrorsync --password 123 --non-interactive http://slave-ip/svn-proxy-sync/mirror-repo

post-revprop-change
/usr/bin/svnsync copy-revprops --username mirrorsync --password 123 http://slave-ip/svn-proxy-sync/mirror-repo $REV

On Slave

/etc/apache2/mods-available/dav_svn.conf

<Location /svn>
  DAV svn
  SVNParentPath /home/svn
  SVNMasterURI http://master-ip/svn/master-repo
  AuthType Basic
  AuthName "Subversion Repository"
  AuthUserFile /etc/apache2/dav_svn.passwd
  Require valid-user
</Location>

<Location /svn-proxy-sync>
  DAV svn
  SVNParentPath /home/svn
  AuthType Basic
  AuthName "Subversion Repository"
  AuthUserFile /etc/apache2/dav_svn.passwd
  Require valid-user
</Location>

start-commit

if [ "$USER" = "mirrorsync" ];
  then exit 0;
fi
echo "Only the mirrorsync user may commit new revisions" >&2 exit 1

pre-revprop-change

if [ "$USER" = "mirrorsync" ];
  then exit 0;
fi
echo "Only the mirrorsync user may change revision properties" >&2 exit 1

All kind of module (mod_dav, mod_dav_svn, proxy, proxy_http, ssl) are loaded. I don't have any past experience of working with svn or apache.

I WOULD REALLY APPRICIATE IF SOMEONE CAN HELP ME and tell me what the exact steps are to setup this configuration

Thanks
Gaurav

The information contained in this electronic mail transmission 
may be privileged and confidential, and therefore, protected 
from disclosure. If you have received this communication in 
error, please notify us immediately by replying to this 
message and deleting it from your computer without copying 
or disclosing it.