class Catscope::CLI

Public Class Methods

new() click to toggle source
# File lib/catscope/cli.rb, line 9
def initialize()
  @pwd = Dir.pwd
  setup_parser()
end

Public Instance Methods

run(argv) click to toggle source
# File lib/catscope/cli.rb, line 38
def run(argv)
  @parser.parse!(argv)

  App.set :environment, @environment
  App.set :bind, @bind
  App.set :port, @port

  App.run!
  true
end
setup_parser() click to toggle source
# File lib/catscope/cli.rb, line 14
def setup_parser()
  @parser = OptionParser.new

  @bind = '127.0.0.1'
  @parser.on('-o', '--bind ADDRESS', "IP address to bind (default: #{@bind})") do |addr|
    @bind = addr
  end

  @port = 4567
  @parser.on('-p', '--port PORT', "Port to listen on (default: #{@port})") do |port|
    @port = Integer(port)
  end

  @environment = "production"
  @parser.on('-e', '--env ENV', "Rack environment (default: #{@environment})") do |env|
    @environment = env
  end

  @parser.on('-v', '--version') do
    puts "Catscope version #{Catscope::VERSION}"
    exit(true)
  end
end