class Lono::Configset::Preparer

Public Class Methods

new(options={}) click to toggle source
Calls superclass method Lono::AbstractBase::new
# File lib/lono/configset/preparer.rb, line 3
def initialize(options={})
  super
  @blueprint = Register::Blueprint.new(options)
  @project   = Register::Project.new(options)
  @meta      = Meta.new(options)
  @resolver  = Resolver.new
end

Public Instance Methods

materialize() click to toggle source
# File lib/lono/configset/preparer.rb, line 34
def materialize
  jades = Lono::Jade::Registry.downloaded_configsets
  Lono::Jade::Materializer::Final.new.build(jades)
end
register() click to toggle source

Stores configsets registry items

# File lib/lono/configset/preparer.rb, line 20
def register
  @project.register   # IE: evaluates configs/BLUEPRINT/configsets/base.rb
  @blueprint.register # IE: evaluates BLUEPRINT/config/configsets.rb
end
register_dependencies() click to toggle source
# File lib/lono/configset/preparer.rb, line 30
def register_dependencies
  @resolver.register
end
resolve_dependencies() click to toggle source
# File lib/lono/configset/preparer.rb, line 25
def resolve_dependencies
  jades = Lono::Jade::Registry.tracked_configsets  # at this point only top-level
  @resolver.resolve(jades) # also calls jade.materialize
end
run() click to toggle source
# File lib/lono/configset/preparer.rb, line 11
def run
  register
  resolve_dependencies # also calls jade.materialize
  register_dependencies
  materialize
  validate_all! # run after final materializer
end
validate_all!() click to toggle source
# File lib/lono/configset/preparer.rb, line 39
def validate_all!
  @blueprint.validate!
  @project.validate!
end