Class: Raykit::Environment

Inherits:
Object
  • Object
show all
Defined in:
lib/raykit/environment.rb

Overview

Provides functionality related to the development environment

Class Method Summary collapse

Class Method Details

.get_dev_dir(name) ⇒ Object

Get, and create if it does not exist, a specific development directory



29
30
31
32
33
# File 'lib/raykit/environment.rb', line 29

def self.get_dev_dir(name)
    dir = Pathname.new("#{Environment::root_dir}/#{name}")
    dir.mkpath
    dir.to_s
end

.get_dir_size(dir) ⇒ Object

Get the size of a directory and its contents



36
37
38
39
40
# File 'lib/raykit/environment.rb', line 36

def self.get_dir_size(dir)
    Dir.glob(File.join(dir, '**', '*'))
        .map{ |f| File.size(f) }
        .inject(:+)
end

.home_dirObject

The user home directory



23
24
25
26
# File 'lib/raykit/environment.rb', line 23

def self.home_dir
    return normalize_path(ENV["USERPROFILE"]) if(ENV.include?("USERPROFILE"))
    normalize_path(ENV['HOME'])
end

.normalize_path(name) ⇒ Object

Normalize a directory or filename to use forward slashes



7
8
9
# File 'lib/raykit/environment.rb', line 7

def self.normalize_path(name)
    name.gsub('\\','/')
end

.root_dirObject

The root directory for the development environment. May be set using the environment variable DEV_ROOT, otherwise defaults to the user home directory



14
15
16
17
18
19
20
# File 'lib/raykit/environment.rb', line 14

def self.root_dir
    if(ENV['DEV_ROOT'].nil?)
        Environment::home_dir
    else
        normalize_path(ENV['DEV_ROOT'])
    end
end