Sha256: 35ccf4ecf91855f45b8bf289eac2eb118a5cd505720396c13bc5a030505a8727

Contents?: true

Size: 1.67 KB

Versions: 2

Compression:

Stored size: 1.67 KB

Contents

#! /usr/bin/env ruby
require 'rubygems' #its poison, i know.

if `which rackup`.empty?
  abort "** Can't find `rackup` in PATH."
end

if ARGV.include?('-h') || ARGV.include?('--help')
  puts <<-USAGE_INFO
Usage: dm-cutie-ui [cutie-options] [ruby-options] [rack-options]

Starts the dm-cutie front end

DmCutieUI Options:
==================================================
  --extras= # A comma seperated list of extras for dm-cutie to look for 
    (should match what you had in your app)
    Examples: 
      dm-cutie-ui --extras=sqlite3_execution_plan
      dm-cutie-ui --extras=mysql_execution_plan,mysql_warning

Rack Options:
==================================================
  -s, --server SERVER      serve using SERVER (webrick/mongrel)
  -o, --host HOST          listen on HOST (default: 0.0.0.0)
  -p, --port PORT          use PORT (default: 9292)
  -E, --env ENVIRONMENT    use ENVIRONMENT for defaults (default: development)
  -D, --daemonize          run daemonized in the background
  -P, --pid FILE           file to store PID (default: rack.pid)
  
USAGE_INFO

else
  __DIR__ = File.expand_path( File.join(File.dirname(__FILE__), '..') )
  
  # Simple ARGV Parser, @note include-hooks is a TODO
  #   Remove cutie's argv from ARGV and let Sinatra have it.
  cutie_flags = [:extras, :'include-hooks']
  cutie_argv = ARGV.select{|arg| arg =~ /(\-\-(#{cutie_flags.join('|')}))/}
  ARGV.delete_if{|arg| cutie_argv.member?(arg)}

  args = ARGV
  ENV['RUBYLIB'] = ENV['RUBYLIB'].to_s + ':' + File.join(__DIR__,'lib')
  args.unshift '-e', %Q{require "dm-cutie-ui"; CUTIE_ARGV=%w{#{cutie_argv.join(' ')}}}
  args.push File.expand_path(
    File.join(__DIR__, "config.ru")
  )

  exec "rackup", *args
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
dm-cutie-ui-0.4.0 bin/dm-cutie-ui
dm-cutie-ui-0.0.2 bin/dm-cutie-ui