jaz303-repo-man 0.1.2 → 0.1.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (2) hide show
  1. data/bin/repo-man +13 -7
  2. metadata +1 -1
data/bin/repo-man CHANGED
@@ -9,7 +9,7 @@ module RepoMan
9
9
  end
10
10
 
11
11
  def roots
12
- RootDetector.new(@path).roots
12
+ @roots ||= RootDetector.new(@path).roots
13
13
  end
14
14
 
15
15
  def to_httpd_conf
@@ -20,8 +20,7 @@ module RepoMan
20
20
  out << " DAV svn\n"
21
21
  out << " SVNParentPath #{r}\n"
22
22
 
23
- access_file = File.join(r, 'access')
24
- if File.exists?(access_file)
23
+ if access_file = find_access_file(r)
25
24
  out << " AuthzSVNAccessFile #{access_file}\n"
26
25
  end
27
26
 
@@ -39,6 +38,15 @@ module RepoMan
39
38
  def normalize_location(r)
40
39
  r.gsub(/^#{Regexp.quote(@path)}/, '') + '/'
41
40
  end
41
+
42
+ def find_access_file(root)
43
+ while true
44
+ access_file = File.join(root, 'svn_access')
45
+ return access_file if File.exists?(access_file)
46
+ return nil if root.length <= @path.length
47
+ root = File.dirname(root)
48
+ end
49
+ end
42
50
 
43
51
  end
44
52
 
@@ -50,10 +58,8 @@ module RepoMan
50
58
  end
51
59
 
52
60
  def roots
53
- unless @roots
54
- @roots = []
55
- find_roots(@path)
56
- end
61
+ @roots = []
62
+ find_roots(@path)
57
63
  @roots
58
64
  end
59
65
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jaz303-repo-man
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.1.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jason Frame