[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

[PATCH] Make it easier to run tests in a ramdisk.

From: <kfogel_at_collab.net>
Date: 2005-05-24 03:55:04 CEST

Any objections to my committing this?

If you have Location blocks for Subversion testing in your httpd.conf,
they would need adjustment. It's a pretty simple tweak: just put
"svn-test-work/" in front of "repositories" and "local_tmp" (there
should be two instances of each).

[[[
Make it easier to run the tests in a ramdisk, by having tests put all
temporary data under one subtree, that is, under one mountable point.

* subversion/tests/clients/cmdline/svntest/main.py
  (work_dir): New intermediate variable.
  (general_repo_dir, general_wc_dir, local_tmp): Put in work_dir.

* INSTALL:
* tools/test-scripts/svntest/README:
* subversion/tests/clients/cmdline/README: Update instructions.

* Makefile.in
  (check-clean): Clean up the new work directory.

* subversion/tests/clients/cmdline/davautocheck.sh
  (HTTPD_CFG): Adjust httpd.conf template.

* build/win32/vc6-build.bat.in:
* packages/rpm/rhel-3/httpd.davcheck.conf:
* packages/rpm/rhel-4/httpd.davcheck.conf:
* packages/rpm/redhat-8+/httpd.davcheck.conf:
* packages/rpm/redhat-7.x/httpd.davcheck.conf: Same.

* subversion/bindings/java/javahl/src/org/tigris/subversion/javahl/\
  tests/SVNTests.java
  (SVNTests): Add comments about the paths, but don't change them.
]]]

Index: Makefile.in
===================================================================
--- Makefile.in (revision 14823)
+++ Makefile.in (working copy)
@@ -390,9 +390,7 @@
         @$(MAKE) check FS_TYPE=fsfs
 
 check-clean:
- rm -rf subversion/tests/clients/cmdline/repositories \
- subversion/tests/clients/cmdline/working_copies \
- subversion/tests/clients/cmdline/local_tmp \
+ rm -rf subversion/tests/clients/cmdline/svn-test-work \
                subversion/tests/libsvn_fs_base/test-repo-* \
                subversion/tests/libsvn_repos/test-repo-* \
                subversion/tests/libsvn_subr/z \
Index: build/win32/vc6-build.bat.in
===================================================================
--- build/win32/vc6-build.bat.in (revision 14823)
+++ build/win32/vc6-build.bat.in (working copy)
@@ -132,13 +132,13 @@
 echo LoadModule dav_svn_module modules/mod_dav_svn.so
 echo LoadModule authz_svn_module modules/mod_authz_svn.so
 echo And further down the file add:
-echo ^<Location /repositories^>
+echo ^<Location /svn-test-work/repositories^>
 echo DAV svn
-echo SVNParentPath %DRIVE%:/SVN/src-%DIR%/Release/subversion/tests/clients/cmdline/repositories
+echo SVNParentPath %DRIVE%:/SVN/src-%DIR%/Release/subversion/tests/clients/cmdline/svn-test-work/repositories
 echo ^</Location^>
-echo ^<Location /local_tmp/repos^>
+echo ^<Location /svn-test-work/local_tmp/repos^>
 echo DAV svn
-echo SVNPath %DRIVE%:/SVN/src-%DIR%/Release/subversion/tests/clients/cmdline/local_tmp/repos
+echo SVNPath %DRIVE%:/SVN/src-%DIR%/Release/subversion/tests/clients/cmdline/svn-test-work/local_tmp/repos
 echo ^</Location^>
 echo Then restart Apache.
 
Index: subversion/bindings/java/javahl/src/org/tigris/subversion/javahl/tests/SVNTests.java
===================================================================
--- subversion/bindings/java/javahl/src/org/tigris/subversion/javahl/tests/SVNTests.java (revision 14823)
+++ subversion/bindings/java/javahl/src/org/tigris/subversion/javahl/tests/SVNTests.java (working copy)
@@ -69,8 +69,9 @@
      */
     protected WC greekWC;
     /**
- * the directory "local_tmp" in the rootDir. This will be used for the
- * sample repository and its dumpfile and for the config directory
+ * the directory "svn-test-work/local_tmp" in the rootDir. This
+ * will be used for the sample repository and its dumpfile and for
+ * the config directory
      */
     protected File localTmp;
     /**
@@ -198,6 +199,9 @@
 
         // create a clean directory for the config files and the sample
         // repository
+ //
+ // ### The path is now "svn-test-work/local_tmp", however, I'm
+ // ### not sure how to update this code for that.
         localTmp = new File(rootDir, "local_tmp");
         if(localTmp.exists())
             removeDirectoryWithContent(localTmp);
@@ -229,6 +233,10 @@
                 new IgnoreOutputer(), null, null, false);
 
         // create the directory for the repositories and the working copies
+ //
+ // ### The paths are now "svn-test-work/repositories" and
+ // ### "svn-test-work/repositories". However, I'm not sure
+ // ### ahow to update this code for that.
         repositories = new File(rootDir, "repositories");
         repositories.mkdirs();
         workingCopies = new File(rootDir, "working_copies");
Index: subversion/tests/clients/cmdline/README
===================================================================
--- subversion/tests/clients/cmdline/README (revision 14823)
+++ subversion/tests/clients/cmdline/README (working copy)
@@ -48,18 +48,18 @@
 two Location directives to /usr/local/apache2/conf/httpd.conf, with
 paths adjusted appropriately:
 
- <Location /repositories>
+ <Location /svn-test-work/repositories>
      DAV svn
- SVNParentPath /home/yourusernamehere/projects/svn/subversion/tests/clients/cmdline/repositories
+ SVNParentPath /home/yourusernamehere/projects/svn/subversion/tests/clients/cmdline/svn-test-work/repositories
      AuthType Basic
      AuthName "Subversion Repository"
      AuthUserFile /usr/local/apache2/conf/users
      Require valid-user
    </Location>
      
- <Location /local_tmp/repos>
+ <Location /svn-test-work/local_tmp/repos>
      DAV svn
- SVNPath /home/yourusernamehere/projects/svn/subversion/tests/clients/cmdline/local_tmp/repos
+ SVNPath /home/yourusernamehere/projects/svn/subversion/tests/clients/cmdline/svn-test-work/local_tmp/repos
      AuthType Basic
      AuthName "Subversion Repository"
      AuthUserFile /usr/local/apache2/conf/users
Index: subversion/tests/clients/cmdline/svntest/main.py
===================================================================
--- subversion/tests/clients/cmdline/svntest/main.py (revision 14823)
+++ subversion/tests/clients/cmdline/svntest/main.py (working copy)
@@ -121,10 +121,14 @@
 # Global variable indicating the FS type for repository creations.
 fs_type = None
 
+# All temporary repositories and working copies are created underneath
+# this dir, so there's one point at which to mount, e.g., a ramdisk.
+work_dir = "svn-test-work"
+
 # Where we want all the repositories and working copies to live.
 # Each test will have its own!
-general_repo_dir = "repositories"
-general_wc_dir = "working_copies"
+general_repo_dir = os.path.join(work_dir, "repositories")
+general_wc_dir = os.path.join(work_dir, "working_copies")
 
 # A relative path that will always point to latest repository
 current_repo_dir = None
@@ -133,7 +137,7 @@
 # temp directory in which we will create our 'pristine' local
 # repository and other scratch data. This should be removed when we
 # quit and when we startup.
-temp_dir = 'local_tmp'
+temp_dir = os.path.join(work_dir, 'local_tmp')
 
 # (derivatives of the tmp dir.)
 pristine_dir = os.path.join(temp_dir, "repos")
Index: subversion/tests/clients/cmdline/davautocheck.sh
===================================================================
--- subversion/tests/clients/cmdline/davautocheck.sh (revision 14823)
+++ subversion/tests/clients/cmdline/davautocheck.sh (working copy)
@@ -223,17 +223,17 @@
   AllowOverride none
 </Directory>
 
-<Location /repositories>
+<Location /svn-test-work/repositories>
   DAV svn
- SVNParentPath "$ABS_BUILDDIR/subversion/tests/clients/cmdline/repositories"
+ SVNParentPath "$ABS_BUILDDIR/subversion/tests/clients/cmdline/svn-test-work/repositories"
   AuthType Basic
   AuthName "Subversion Repository"
   AuthUserFile $HTTPD_USERS
   Require valid-user
 </Location>
-<Location /local_tmp/repos>
+<Location /svn-test-work/local_tmp/repos>
   DAV svn
- SVNPath "$ABS_BUILDDIR/subversion/tests/clients/cmdline/local_tmp/repos"
+ SVNPath "$ABS_BUILDDIR/subversion/tests/clients/cmdline/svn-test-work/local_tmp/repos"
   AuthType Basic
   AuthName "Subversion Repository"
   AuthUserFile $HTTPD_USERS
Index: tools/test-scripts/svntest/README
===================================================================
--- tools/test-scripts/svntest/README (revision 14823)
+++ tools/test-scripts/svntest/README (working copy)
@@ -108,17 +108,17 @@
     </IfModule>
            
    vii) mod_dav_svn_shared.conf for shared builds:
- <Location /repositories>
+ <Location /svn-test-work/repositories>
         DAV svn
- SVNParentPath /home/brane/svn/obj-sh/subversion/tests/clients/cmdline/repositories
+ SVNParentPath /home/brane/svn/obj-sh/subversion/tests/clients/cmdline/svn-test-work/repositories
         AuthType Basic
         AuthName "SVN repos"
         AuthUserFile /usr/local/apache2/conf/passwd
         Require valid-user
     </Location>
- <Location /local_tmp/repos>
+ <Location /svn-test-work/local_tmp/repos>
         DAV svn
- SVNPath /home/brane/svn/obj-sh/subversion/tests/clients/cmdline/local_tmp/repos
+ SVNPath /home/brane/svn/obj-sh/subversion/tests/clients/cmdline/svn-test-work/local_tmp/repos
         AuthType Basic
         AuthName "SVN repos"
         AuthUserFile /usr/local/apache2/conf/passwd
Index: INSTALL
===================================================================
--- INSTALL (revision 14823)
+++ INSTALL (working copy)
@@ -895,16 +895,16 @@
     test repositories. Change the paths to the SVN directory you created
     (paths should be on one line even if wrapped here):
 
- <Location /repositories>
+ <Location /svn-test-work/repositories>
        DAV svn
        SVNParentPath C:/SVN/src-trunk/Release/subversion/tests/clients/cmdline/
- repositories
+ svn-test-work/repositories
       </Location>
 
- <Location /local_tmp/repos>
+ <Location /svn-test-work/local_tmp/repos>
        DAV svn
        SVNPath c:/SVN/src-trunk/Release/subversion/tests/clients/cmdline/
- local_tmp/repos
+ svn-test-work/local_tmp/repos
       </Location>
 
     Then restart Apache and run the tests:
Index: packages/rpm/redhat-7.x/httpd.davcheck.conf
===================================================================
--- packages/rpm/redhat-7.x/httpd.davcheck.conf (revision 14823)
+++ packages/rpm/redhat-7.x/httpd.davcheck.conf (working copy)
@@ -375,18 +375,18 @@
 #
 ForceLanguagePriority Prefer Fallback
 
-<Location /repositories>
+<Location /svn-test-work/repositories>
    DAV svn
- SVNParentPath @SVNDIR@/subversion/tests/clients/cmdline/repositories
+ SVNParentPath @SVNDIR@/subversion/tests/clients/cmdline/svn-test-work/repositories
    AuthType Basic
    AuthName "Subversion Repository"
    AuthUserFile @SVNDIR@/passwd
    Require valid-user
 </Location>
 
-<Location /local_tmp/repos>
+<Location /svn-test-work/local_tmp/repos>
    DAV svn
- SVNPath @SVNDIR@/subversion/tests/clients/cmdline/local_tmp/repos
+ SVNPath @SVNDIR@/subversion/tests/clients/cmdline/svn-test-work/local_tmp/repos
    AuthType Basic
    AuthName "Subversion Repository"
    AuthUserFile @SVNDIR@/passwd
Index: packages/rpm/redhat-8+/httpd.davcheck.conf
===================================================================
--- packages/rpm/redhat-8+/httpd.davcheck.conf (revision 14823)
+++ packages/rpm/redhat-8+/httpd.davcheck.conf (working copy)
@@ -375,18 +375,18 @@
 #
 ForceLanguagePriority Prefer Fallback
 
-<Location /repositories>
+<Location /svn-test-work/repositories>
    DAV svn
- SVNParentPath @SVNDIR@/subversion/tests/clients/cmdline/repositories
+ SVNParentPath @SVNDIR@/subversion/tests/clients/cmdline/svn-test-work/repositories
    AuthType Basic
    AuthName "Subversion Repository"
    AuthUserFile @SVNDIR@/passwd
    Require valid-user
 </Location>
 
-<Location /local_tmp/repos>
+<Location /svn-test-work/local_tmp/repos>
    DAV svn
- SVNPath @SVNDIR@/subversion/tests/clients/cmdline/local_tmp/repos
+ SVNPath @SVNDIR@/subversion/tests/clients/cmdline/svn-test-work/local_tmp/repos
    AuthType Basic
    AuthName "Subversion Repository"
    AuthUserFile @SVNDIR@/passwd
Index: packages/rpm/rhel-3/httpd.davcheck.conf
===================================================================
--- packages/rpm/rhel-3/httpd.davcheck.conf (revision 14823)
+++ packages/rpm/rhel-3/httpd.davcheck.conf (working copy)
@@ -375,18 +375,18 @@
 #
 ForceLanguagePriority Prefer Fallback
 
-<Location /repositories>
+<Location /svn-test-work/repositories>
    DAV svn
- SVNParentPath @SVNDIR@/subversion/tests/clients/cmdline/repositories
+ SVNParentPath @SVNDIR@/subversion/tests/clients/cmdline/svn-test-work/repositories
    AuthType Basic
    AuthName "Subversion Repository"
    AuthUserFile @SVNDIR@/passwd
    Require valid-user
 </Location>
 
-<Location /local_tmp/repos>
+<Location /svn-test-work/local_tmp/repos>
    DAV svn
- SVNPath @SVNDIR@/subversion/tests/clients/cmdline/local_tmp/repos
+ SVNPath @SVNDIR@/subversion/tests/clients/cmdline/svn-test-work/local_tmp/repos
    AuthType Basic
    AuthName "Subversion Repository"
    AuthUserFile @SVNDIR@/passwd
Index: packages/rpm/rhel-4/httpd.davcheck.conf
===================================================================
--- packages/rpm/rhel-4/httpd.davcheck.conf (revision 14823)
+++ packages/rpm/rhel-4/httpd.davcheck.conf (working copy)
@@ -375,18 +375,18 @@
 #
 ForceLanguagePriority Prefer Fallback
 
-<Location /repositories>
+<Location /svn-test-work/repositories>
    DAV svn
- SVNParentPath @SVNDIR@/subversion/tests/clients/cmdline/repositories
+ SVNParentPath @SVNDIR@/subversion/tests/clients/cmdline/svn-test-work/repositories
    AuthType Basic
    AuthName "Subversion Repository"
    AuthUserFile @SVNDIR@/passwd
    Require valid-user
 </Location>
 
-<Location /local_tmp/repos>
+<Location /svn-test-work/local_tmp/repos>
    DAV svn
- SVNPath @SVNDIR@/subversion/tests/clients/cmdline/local_tmp/repos
+ SVNPath @SVNDIR@/subversion/tests/clients/cmdline/svn-test-work/local_tmp/repos
    AuthType Basic
    AuthName "Subversion Repository"
    AuthUserFile @SVNDIR@/passwd

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Tue May 24 04:32:37 2005

This is an archived mail posted to the Subversion Dev mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.