class SetUpDevelopment::Engine
Constants
- DEFAULT_CONFIG
Attributes
config[RW]
dependencies[RW]
registry[RW]
Public Class Methods
new(config = nil)
click to toggle source
# File lib/set_up_development/engine.rb, line 13 def initialize(config = nil) ENV.delete("RUBYOPT") self.config = YAML::load_file(config || DEFAULT_CONFIG) || {} define_dependencies! rescue Errno::ENOENT => load_error raise "No config file found. Try running `touch set-up-development`" end
Public Instance Methods
missing_dependencies()
click to toggle source
# File lib/set_up_development/engine.rb, line 21 def missing_dependencies dependencies.select do |dependency| !dependency.installed? end end
Private Instance Methods
define_dependencies!()
click to toggle source
# File lib/set_up_development/engine.rb, line 29 def define_dependencies! self.dependencies = config.inject([]) do |dependencies, (installer_name, dependency_names)| installer = Registry.installers[installer_name] raise "No installer found for '#{installer_name}'" unless installer dependency_names.each do |dependency_name| dependencies << Dependency.new(installer, dependency_name) end dependencies end end