Rev 33: (jelmer) Add support for apache2-svn, an Apache server with Subversion DAV support in http://bazaar.launchpad.net/%7Evila/bzr/local-test-server

Vincent Ladeuil v.ladeuil+lp at free.fr
Sat Jun 14 09:33:08 BST 2008


At http://bazaar.launchpad.net/%7Evila/bzr/local-test-server

------------------------------------------------------------
revno: 33
revision-id: v.ladeuil+lp at free.fr-20080614083305-9xgjnf1j883gfcpk
parent: v.ladeuil+lp at free.fr-20080608223958-idas8o43j1ti0rtg
parent: jelmer at samba.org-20080613151045-o5vheuh6w3bjxr22
committer: Vincent Ladeuil <v.ladeuil+lp at free.fr>
branch nick: local_test_server
timestamp: Sat 2008-06-14 10:33:05 +0200
message:
  (jelmer) Add support for apache2-svn, an Apache server with Subversion DAV support
added:
  .bzrignore                     bzrignore-20080613150921-btah044kf8qu434k-1
  configs/apache2-svn.conf       apache2svn.conf-20080613143012-cf693bo3ev1cah0f-1
modified:
  config.py                      __init__.py-20080523170713-0c8mnxio9r41iyhk-1
  server.py                      server.py-20080524160639-rqhbexqatjqbwypw-1
    ------------------------------------------------------------
    revno: 32.1.2
    revision-id: jelmer at samba.org-20080613151045-o5vheuh6w3bjxr22
    parent: jelmer at samba.org-20080613150934-vsi6qw85m1y4j0uf
    committer: Jelmer Vernooij <jelmer at samba.org>
    branch nick: trunk
    timestamp: Fri 2008-06-13 17:10:45 +0200
    message:
      Support starting a Subversion apache server.
    added:
      configs/apache2-svn.conf       apache2svn.conf-20080613143012-cf693bo3ev1cah0f-1
    modified:
      config.py                      __init__.py-20080523170713-0c8mnxio9r41iyhk-1
      server.py                      server.py-20080524160639-rqhbexqatjqbwypw-1
    ------------------------------------------------------------
    revno: 32.1.1
    revision-id: jelmer at samba.org-20080613150934-vsi6qw85m1y4j0uf
    parent: v.ladeuil+lp at free.fr-20080608223958-idas8o43j1ti0rtg
    committer: Jelmer Vernooij <jelmer at samba.org>
    branch nick: trunk
    timestamp: Fri 2008-06-13 17:09:34 +0200
    message:
      Ignore work directory.
    added:
      .bzrignore                     bzrignore-20080613150921-btah044kf8qu434k-1
-------------- next part --------------
=== added file '.bzrignore'
--- a/.bzrignore	1970-01-01 00:00:00 +0000
+++ b/.bzrignore	2008-06-13 15:09:34 +0000
@@ -0,0 +1,1 @@
+work

=== modified file 'config.py'
--- a/config.py	2008-06-07 13:51:50 +0000
+++ b/config.py	2008-06-13 15:10:45 +0000
@@ -119,6 +119,16 @@
                         _base_dir=_base_dir)
 
 
+class Apache2SVN(Apache2):
+
+    def __init__(self, _base_dir=None):
+        # FIXME: jumping over Apache2 >-/
+        Config.__init__(self, 'apache2-svn',
+                        required_dirs=self._required_dirs,
+                        _base_dir=_base_dir)
+        self.values['svn_dir'] = self.abspath('svn')
+
+
 class Cherokee(Config):
 
     def __init__(self, _base_dir=None):

=== added file 'configs/apache2-svn.conf'
--- a/configs/apache2-svn.conf	1970-01-01 00:00:00 +0000
+++ b/configs/apache2-svn.conf	2008-06-13 15:10:45 +0000
@@ -0,0 +1,53 @@
+#
+# Based on /etc/apache2/apache2.conf in Ubuntu Gusty
+#
+
+# This file will be interpolated by python see plugin source for
+# details.
+
+# Note that most of the directories below are usually owned by
+# root. We want directories writable by the user running the
+# tests.
+
+ServerRoot "%(base_dir)s"
+
+LockFile "%(var_lock_dir)s/accept.lock
+
+PidFile %(pid_file)s
+
+ErrorLog %(log_file)s
+LogFormat "%%h %%l %%u %%t \"%%r\" %%>s %%b \"%%{Referer}i\" \"%%{User-Agent}i\"" combined
+CustomLog %(var_log_dir)s/access.log combined
+LogLevel debug
+
+ServerName %(host)s
+Listen %(port)s
+
+# The following directives seems to activate the smallest apache2
+# server possible. If you know better, comments are very welcome.
+# More info at
+# http://localhost/doc/apache2-doc/manual/mod/worker.html
+StartServers         1
+MaxClients           5
+ThreadsPerChild      5
+
+# Tests will create symlinks in that directory to point to the
+# appropriate location
+DocumentRoot %(www_dir)s
+
+# required for
+#bzrlib.tests.test_transport_implementations.TransportTests.test_has_root_works
+LoadModule dir_module /usr/lib/apache2/modules/mod_dir.so
+LoadModule autoindex_module /usr/lib/apache2/modules/mod_autoindex.so
+
+# the following may help for debug
+ServerSignature On
+
+LoadModule auth_basic_module /usr/lib/apache2/modules/mod_auth_basic.so
+LoadModule dav_module /usr/lib/apache2/modules/mod_dav.so
+LoadModule dav_svn_module /usr/lib/apache2/modules/mod_dav_svn.so
+
+<Directory %(www_dir)s>
+	DAV svn
+	SVNPath %(svn_dir)s
+</Directory>

=== modified file 'server.py'
--- a/server.py	2008-06-07 13:51:50 +0000
+++ b/server.py	2008-06-13 15:10:45 +0000
@@ -361,6 +361,15 @@
         self.output_config_path = self.config.abspath('etc/apache2-dav.conf')
 
 
+class Apache2SVN(Apache2):
+
+    def __init__(self, port, _conf=None):
+        if _conf is None:
+            _conf = config.Apache2SVN()
+        super(Apache2SVN, self).__init__(port, _conf=_conf)
+        self.output_config_path = self.config.abspath('etc/apache2-svn.conf')
+
+
 class Cherokee(Server):
 
     def __init__(self, port, _conf=None):
@@ -481,6 +490,7 @@
                 )
 _servers['apache2-dav']=Apache2DAV(37003)
 _servers['lighttpd-dav']=LighttpdDAV(37004)
+_servers['apache2-svn']=Apache2SVN(37005)
 
 def get_server(name):
     return _servers.get(name, None)



More information about the bazaar-commits mailing list