Class: Roll::Environment
- Inherits:
-
Object
- Object
- Roll::Environment
- Defined in:
- lib/roll/environment.rb
Overview
An Environment represents a set of libraries.
Defined Under Namespace
Constant Summary collapse
- DEFAULT =
Default environment name.
'production'
- DIRS =
Location of environment files. – Perhaps combine all enrtries instead? ++
::Config.find_config('roll')
Instance Attribute Summary collapse
-
#name ⇒ Object
readonly
Environment name.
Class Method Summary collapse
-
.current ⇒ Object
Current environment name.
-
.list ⇒ Object
List of available environments.
Instance Method Summary collapse
- #each(&block) ⇒ Object
- #index ⇒ Object
-
#initialize(name = nil) ⇒ Environment
constructor
Instantiate environment.
- #lookup ⇒ Object
-
#save ⇒ Object
Save index.
- #size ⇒ Object
-
#sync ⇒ Object
Synchronize index to lookup table.
- #to_s ⇒ Object
Constructor Details
#initialize(name = nil) ⇒ Environment
Instantiate environment.
37 38 39 |
# File 'lib/roll/environment.rb', line 37 def initialize(name=nil) @name = name || Environment.current end |
Instance Attribute Details
#name ⇒ Object (readonly)
Environment name.
34 35 36 |
# File 'lib/roll/environment.rb', line 34 def name @name end |
Class Method Details
.current ⇒ Object
Current environment name.
22 23 24 |
# File 'lib/roll/environment.rb', line 22 def self.current ENV['RUBYENV'] || DEFAULT end |
.list ⇒ Object
List of available environments.
27 28 29 30 31 |
# File 'lib/roll/environment.rb', line 27 def self.list Dir[File.join(DIR, '*')].map do |file| File.basename(file) end end |
Instance Method Details
#each(&block) ⇒ Object
62 |
# File 'lib/roll/environment.rb', line 62 def each(&block) ; index.each(&block) ; end |
#index ⇒ Object
42 43 44 |
# File 'lib/roll/environment.rb', line 42 def index @index ||= Index.new(name) end |
#lookup ⇒ Object
47 48 49 |
# File 'lib/roll/environment.rb', line 47 def lookup @lookup ||= Lookup.new(name) end |
#save ⇒ Object
Save index.
57 58 59 |
# File 'lib/roll/environment.rb', line 57 def save index.save end |
#size ⇒ Object
65 |
# File 'lib/roll/environment.rb', line 65 def size ; index.size ; end |
#sync ⇒ Object
Synchronize index to lookup table.
52 53 54 |
# File 'lib/roll/environment.rb', line 52 def sync index.reset(lookup.index) end |
#to_s ⇒ Object
68 69 70 71 72 73 74 |
# File 'lib/roll/environment.rb', line 68 def to_s str = "" lookup.each do |(path, depth)| str << "#{path} #{depth}\n" end str end |