Sha256: c16cc8ba02a100aadea78c49d7a1b7a9e3c35a45ec06b2ed5d450e0414ebebc4

Contents?: true

Size: 726 Bytes

Versions: 1

Compression:

Stored size: 726 Bytes

Contents

require 'optparse'

module Jackhammer
  class CLI
    attr_reader :logger, :opts

    def initialize
      @logger = Logger.new STDERR
      @opts = { require: './config/application' }
    end

    def parse(argv = ARGV)
      @parser = OptionParser.new do |o|
        o.on "-r", "--require PATH", "Location of application" do |arg|
          opts[:require] = arg
        end
      end
      @parser.banner = "jackhammer [options]"
      @parser.on_tail "-h", "--help", "Show help" do
        logger.info @parser
        exit
      end
      @parser.parse!(argv)
    end

    def run
      require opts[:require]
      Log.info "Booting up Jackhammer v#{VERSION}"
      Jackhammer.configuration.server.start
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
jackhammer-0.1.0 lib/jackhammer/cli.rb