bin/larva in larva-0.9.2 vs bin/larva in larva-1.0.0

- old
+ new

@@ -1,75 +1,11 @@ #!/usr/bin/env ruby -require 'fileutils' -require 'active_support/core_ext' +require 'larva' -class DaemonCreator - def self.create(*args) - new(*args).create - end - - def initialize(pwd, daemon_name) - @pwd = pwd - @template_dir = File.expand_path('../../template', __FILE__) - @daemon_name = daemon_name - @daemon_dir = "#{pwd}/#{daemon_name}" - end - - def create - error_exit("Please provide a daemon name. e.g. larva spawn my_daemon_name") if @daemon_name.blank? - error_exit("Directory #{@daemon_dir} already exists. Please remove it before continuing.") if File.exists?(@daemon_dir) - - # Copy template directory - FileUtils.cp_r(@template_dir, @daemon_dir) - rename_directories - rename_files - rename_file_contents - git_it_up - $stdout.puts "Daemon '#{@daemon_name}' created succesfully :)" - end - - private - - def rename_directories - Dir.glob("#{@daemon_dir}/**/*/").each do |original_path| - new_path = original_path.gsub('larva_spawn', @daemon_name) - next if new_path == original_path - - FileUtils.mv(original_path, new_path) - rename_directories - return - end - end - - def rename_files - Dir.glob("#{@daemon_dir}/**/*").each do |original_path| - new_path = original_path.gsub('larva_spawn', @daemon_name) - FileUtils.mv(original_path, new_path) if new_path != original_path - end - end - - def rename_file_contents - Dir.glob("#{@daemon_dir}/**/*").each do |path| - next unless File.file?(path) - contents = File.read(path) - File.open(path, 'w+') do |file| - contents.gsub!("LarvaSpawn", @daemon_name.camelize) - contents.gsub!("larva_spawn", @daemon_name) - contents.gsub!("LARVA_SPAWN", @daemon_name.upcase) - file.write(contents) - end - end - end - - def git_it_up - `cd #{@daemon_name} && git init && git add . && git commit -am "Create basic daemon" && cd ..` - end -end - def error_exit(error) $stderr.puts "!! Error: #{error}" exit end error_exit("Please provide a valid command. Valid commands: spawn") unless ARGV[0] == "spawn" -DaemonCreator.create(ENV["PWD"], ARGV[1]) +Larva::DaemonCreator.create(ENV["PWD"], ARGV[1])