class Inesita::CLI
Public Class Methods
source_root()
click to toggle source
# File lib/inesita/cli/new.rb, line 25 def self.source_root File.dirname(__FILE__) end
Public Instance Methods
assets_server()
click to toggle source
# File lib/inesita/cli/build.rb, line 52 def assets_server Inesita::Server.new({ dist: true, static_dir: options[:static_dir], app_dir: options[:source_dir], app_dist_dir: options[:app_dist_dir] }).assets_app end
build()
click to toggle source
# File lib/inesita/cli/build.rb, line 41 def build assets = assets_server empty_directory options[:destination_dir], force: options[:force] copy_static create_asset(assets, 'index.html', ->(s) { Inesita::Minify.html(s) }) create_asset(assets, 'application.js', ->(s) { Inesita::Minify.js(s) }) create_asset(assets, 'stylesheet.css', ->(s) { Inesita::Minify.css(s) }) end
copy_static()
click to toggle source
# File lib/inesita/cli/build.rb, line 61 def copy_static destination_dir = options[:destination_dir] force = options[:force] static_dir = options[:static_dir] Dir.glob("./#{static_dir}/**/*").each do |file| if File.directory?(file) empty_directory File.join(destination_dir, file), force: force else copy_file File.absolute_path(file), File.join(destination_dir, file.gsub(static_dir, 'static')), force: force end end end
create_asset(assets, name, minify_proc)
click to toggle source
# File lib/inesita/cli/build.rb, line 75 def create_asset(assets, name, minify_proc) create_file File.join(options[:destination_dir], name), minify_proc.call(assets[name].source), force: options[:force] end
new(project_dir)
click to toggle source
# File lib/inesita/cli/new.rb, line 17 def new(project_dir) directory('template', project_dir, project_name: project_dir, build_dir: Inesita::Config::BUILD_DIR) inside project_dir do run 'bundle install' end end
safe_build()
click to toggle source
# File lib/inesita/cli/watch.rb, line 54 def safe_build begin build rescue => e puts 'build error:' puts e end end
server()
click to toggle source
# File lib/inesita/cli/server.rb, line 20 def server Rack::Server.start config: 'config.ru', Port: options['port'], Host: options['host'] end
watch()
click to toggle source
# File lib/inesita/cli/watch.rb, line 41 def watch puts 'building...' safe_build puts 'done.' Listen.to(options[:source_dir]) do |_modified, _added, _removed| puts "rebuilding..." safe_build puts "done." end.start loop { sleep 1000 } end