Sha256: f4cc68f2e9f45b87e63988f152f98fa2b2b3ce9eed75f0b29cf4c6e6ebcb3567

Contents?: true

Size: 1.7 KB

Versions: 9

Compression:

Stored size: 1.7 KB

Contents

#!/usr/bin/env ruby
if File.exist?("config/boot.rb") && File.exist?("config/environment.rb")
  require "./config/environment"
else
  path = File.expand_path("../lib", File.dirname(__FILE__))
  $LOAD_PATH.unshift(path) unless $LOAD_PATH.include?(path)
  require "vanity"
end

require "optparse"

playground = Vanity.playground
options = Struct.new(:output).new
parser = OptionParser.new("", 24, "  ") do |opts|
  opts.banner = "Usage: #{File.basename($0)} [options] command\n"
  opts.banner << "Commands:\n"
  opts.banner << "  list    List all experiments and metrics\n"
  opts.banner << "  report  Report on all running experiments/metrics\n"

  opts.separator ""
  opts.separator "Reporting options:"
  opts.on "--output FILE", "Write report to this file (default: stdout)" do |report_path|
    options.output = report_path
  end

  opts.separator ""
  opts.separator "Common options:"
  opts.on "--load_path PATH", "Path to experiments directory (default: #{playground.load_path})" do |load_path|
    playground.load_path = load_path
  end
  opts.on "-d", "--database url", "Database connection URL (e.g. redis://localhost:6379)" do |conn|
    playground.establish_connection(conn)
  end
  opts.on_tail "-h", "--help", "Show this message" do
    puts opts.to_s.gsub(/^.*DEPRECATED.*$/s, '')
    exit
  end
  opts.on_tail "-v", "--version", "Show version"  do
    puts "Vanity #{Vanity::Version::STRING}"
    exit
  end
end

parser.parse!(ARGV)
if ARGV.empty?
  puts parser.banner
  exit
end

ARGV.each do |cmd|
  case cmd
  when "report"
    require "vanity/commands/report"
    Vanity::Commands.report options.output
  when "list"
    require "vanity/commands/list"
    Vanity::Commands.list
  else puts "No such command: #{cmd}"
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
vanity-3.1.0 bin/vanity
vanity-3.0.2 bin/vanity
vanity-3.0.1 bin/vanity
vanity-3.0.0 bin/vanity
vanity-2.2.10 bin/vanity
vanity-2.2.9 bin/vanity
vanity-2.2.8 bin/vanity
vanity-2.2.7 bin/vanity
vanity-2.2.6 bin/vanity