Class: Dir
- Inherits:
-
Object
- Object
- Dir
- Defined in:
- lib/raykit/dir.rb
Class Method Summary collapse
- .get_data_dir ⇒ Object
- .get_git_directories(dir) ⇒ Object
- .get_git_urls(dir) ⇒ Object
- .get_text(dir, relative_name) ⇒ Object
- .set_text(dir, relative_name, text) ⇒ Object
Class Method Details
.get_data_dir ⇒ Object
39 40 41 42 43 44 45 46 47 48 |
# File 'lib/raykit/dir.rb', line 39 def self.get_data_dir unless ENV["DATA_DIR"].nil? data_dir = ENV["DATA_DIR"] return data_dir if Dir.exist?(data_dir) end home_dir = Raykit::Environment.home_dir return home_dir if Dir.exist?(home_dir) Dir.tmpdir end |
.get_git_directories(dir) ⇒ Object
15 16 17 18 19 20 21 22 23 24 |
# File 'lib/raykit/dir.rb', line 15 def self.get_git_directories(dir) git_dirs = [] Dir.chdir(dir) do Dir.glob("**/.git/index") do |f| git_dir = File.dirname(File.dirname(f)) git_dirs << git_dir end end git_dirs end |
.get_git_urls(dir) ⇒ Object
26 27 28 29 30 31 32 33 34 35 36 37 |
# File 'lib/raykit/dir.rb', line 26 def self.get_git_urls(dir) urls = Set.new Dir.chdir(dir) do get_git_directories(dir).each do |git_dir| Dir.chdir(git_dir) do url = `git config --get remote.origin.url`.strip urls.add(url) end end end urls end |
.get_text(dir, relative_name) ⇒ Object
7 8 9 |
# File 'lib/raykit/dir.rb', line 7 def self.get_text(dir, relative_name) File.read("#{dir}/#{relative_name}") end |
.set_text(dir, relative_name, text) ⇒ Object
11 12 13 |
# File 'lib/raykit/dir.rb', line 11 def self.set_text(dir, relative_name, text) File.open("#{dir}/#{relative_name}", "w") { |f| f.write text } end |