class Maprename::Cli

Public Class Methods

new() click to toggle source
# File lib/maprename/cli.rb, line 12
def initialize
  @options = {}
  parse_options!
end

Public Instance Methods

config_file() click to toggle source
# File lib/maprename/cli.rb, line 43
def config_file
  @options[:config] || "maprename.yml"
end
parse_options!() click to toggle source
# File lib/maprename/cli.rb, line 17
def parse_options!
  @raw_options = OptionParser.new do |opts|
    opts.banner = "Usage: maprename [options]"

    opts.on("-c", "--config CONFIG_FILE", "Specify config file, default to maprename.yml in current directory, see specification: https://github.com/lululau/maprename/blob/master/README.md") do |config|
      @options[:config] = config
    end

    opts.on("-d", "--dry", "dry run") do
      @options[:dry] = true
    end

    opts.on("-D", "--debug", "debug") do
      @options[:debug] = true
      $debug = true
    end

    opts.on("-h", "--help", "Prints this help") do
      puts opts
      exit
    end
  end

  @raw_options.parse!
end
run!() click to toggle source
# File lib/maprename/cli.rb, line 47
def run!
  config = config_file
  unless File.exists?(config)
    puts @raw_options
    exit 1
  end
  debug "CLI Options: #{@options}"
  Maprename::App.new(config_file).run!(@options)
end