class Owners::Tree

Traverses up the directory tree starting at a specified file and returns an array of all OWNERS files.

@api private

Public Class Methods

new(file) click to toggle source
  # File lib/owners/tree.rb
7 def initialize(file)
8   @file = file
9 end

Public Instance Methods

owner_files() click to toggle source
   # File lib/owners/tree.rb
11 def owner_files
12   parents.each_with_object([]) do |parent, files|
13     config = parent.join(Owners.file)
14     files << config if config.file?
15   end
16 end

Private Instance Methods

parents() click to toggle source
   # File lib/owners/tree.rb
20 def parents
21   parents = []
22   file = @file
23 
24   until file == file.dirname
25     file = file.dirname
26     parents << file
27   end
28 
29   parents
30 end