Sha256: ea3090015ea165e6d1fade9891316029c1e87ed9936ea34b42ae6192e63f9ee7
Contents?: true
Size: 1.1 KB
Versions: 1
Compression:
Stored size: 1.1 KB
Contents
require 'thor' require 'thin' module Firehose class CLI < Thor desc "server", "starts the firehose server" method_option :port, :type => :numeric, :default => Firehose::Default::URI.port, :required => true, :aliases => '-p' method_option :host, :type => :string, :default => '0.0.0.0', :required => true, :aliases => '-h' def server broker = Firehose::Broker.new server = Thin::Server.new(options[:host], options[:port]) do # TODO move this into a socket... this is really janky, but I need to to troubleshoot # connection reference issues. I'd like to have this ancillary stuff accessiable via # a different port or even a socket. map '/_firehose/stats' do run Proc.new { [200, {'Content-Type' => 'text/plain'}, [broker.stats.inspect]] } end map '/' do run Firehose::Rack::App.new(broker) end end begin server.start! rescue AMQP::TCPConnectionFailed => e Firehose.logger.error "Unable to connect to AMQP, are you sure it's running?" end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
firehose-0.0.16 | lib/firehose/cli.rb |