Sha256: 2c287c13f68a6d31f9c58c73339449b0a877543ef81cd0e3d60348081b2c85b9
Contents?: true
Size: 1.02 KB
Versions: 3
Compression:
Stored size: 1.02 KB
Contents
module Lono class New attr_reader :options def initialize(options) @options = options @project_root = options[:project_root] || '.' @format = options[:format] || 'json' end def run puts "Setting up lono project" unless options[:quiet] source_root = File.expand_path("../../starter_project_#{@format}", __FILE__) paths = Dir.glob("#{source_root}/**/*"). select {|p| File.file?(p) } paths.each do |src| regexp = Regexp.new(".*starter_project_#{@format}/") dest = src.gsub(regexp,'') dest = "#{@project_root}/#{dest}" if File.exist?(dest) and !options[:force] puts "already exists: #{dest}" unless options[:quiet] else puts "creating: #{dest}" unless options[:quiet] dirname = File.dirname(dest) FileUtils.mkdir_p(dirname) unless File.exist?(dirname) FileUtils.cp(src, dest) end end puts "Starter lono project created" unless options[:quiet] end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
lono-1.1.3 | lib/lono/new.rb |
lono-1.1.2 | lib/lono/new.rb |
lono-1.1.1 | lib/lono/new.rb |