Sha256: c727b2b7218ef7b99f741cd5a92c5382eb7c9741fc072f9ea8c81a67163b518c
Contents?: true
Size: 1.13 KB
Versions: 3
Compression:
Stored size: 1.13 KB
Contents
require "yaml" module Lono::Builder class Template < Lono::CLI::Base extend Memoist def run check_blueprint_exist! data = dsl.run # The generator strategy classes write templates to disk write_output(data) end private def check_blueprint_exist! return if @blueprint.exist? logger.error "ERROR: Blueprint #{@blueprint.name} not found.".color(:red) logger.error <<~EOL Searched: app/blueprints vendor/blueprints Are you sure it exists? To check, you can run: lono list EOL exit 1 end def write_output(data) path = @blueprint.output_path ensure_parent_dir(path) text = YAML.dump(data) IO.write(path, text) Lono::Yamler::Validator.new(path).validate! unless @options[:quiet] pretty_path = path.sub("#{Lono.root}/",'') logger.info " #{pretty_path}" end end def ensure_parent_dir(path) dir = File.dirname(path) FileUtils.mkdir_p(dir) unless File.exist?(dir) end def dsl Dsl.new(@options) end memoize :dsl end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
lono-8.0.0.pre.rc3 | lib/lono/builder/template.rb |
lono-8.0.0.pre.rc2 | lib/lono/builder/template.rb |
lono-8.0.0.pre.rc1 | lib/lono/builder/template.rb |