Sha256: a8fc690c2131aa733bbb8fa126b9cd4a21b7951022546c748e80b154530d2fa4

Contents?: true

Size: 1.14 KB

Versions: 22

Compression:

Stored size: 1.14 KB

Contents

class Lono::Configset
  class Preparer < Lono::AbstractBase
    def initialize(options={})
      super
      @blueprint = Register::Blueprint.new(options)
      @project   = Register::Project.new(options)
      @meta      = Meta.new(options)
      @resolver  = Resolver.new
    end

    def run
      register
      resolve_dependencies # also calls jade.materialize
      register_dependencies
      materialize
      validate_all! # run after final materializer
    end

    # Stores configsets registry items
    def register
      @project.register   # IE: evaluates configs/BLUEPRINT/configsets/base.rb
      @blueprint.register # IE: evaluates BLUEPRINT/config/configsets.rb
    end

    def resolve_dependencies
      jades = Lono::Jade::Registry.tracked_configsets  # at this point only top-level
      @resolver.resolve(jades) # also calls jade.materialize
    end

    def register_dependencies
      @resolver.register
    end

    def materialize
      jades = Lono::Jade::Registry.downloaded_configsets
      Lono::Jade::Materializer::Final.new.build(jades)
    end

    def validate_all!
      @blueprint.validate!
      @project.validate!
    end
  end
end

Version data entries

22 entries across 22 versions & 1 rubygems

Version Path
lono-7.5.2 lib/lono/configset/preparer.rb
lono-7.5.1 lib/lono/configset/preparer.rb
lono-7.5.0 lib/lono/configset/preparer.rb
lono-7.4.11 lib/lono/configset/preparer.rb
lono-7.4.10 lib/lono/configset/preparer.rb
lono-7.4.9 lib/lono/configset/preparer.rb
lono-7.4.8 lib/lono/configset/preparer.rb
lono-7.4.7 lib/lono/configset/preparer.rb
lono-7.4.6 lib/lono/configset/preparer.rb
lono-7.4.5 lib/lono/configset/preparer.rb
lono-7.4.4 lib/lono/configset/preparer.rb
lono-7.4.3 lib/lono/configset/preparer.rb
lono-7.4.2 lib/lono/configset/preparer.rb
lono-7.4.1 lib/lono/configset/preparer.rb
lono-7.4.0 lib/lono/configset/preparer.rb
lono-7.3.2 lib/lono/configset/preparer.rb
lono-7.3.1 lib/lono/configset/preparer.rb
lono-7.3.0 lib/lono/configset/preparer.rb
lono-7.2.3 lib/lono/configset/preparer.rb
lono-7.2.2 lib/lono/configset/preparer.rb