class Tennpipes::Cli::Base

Protected Class Methods

banner(task=nil, *args) click to toggle source

Public Instance Methods

console(*args) click to toggle source
# File lib/tennpipes-base/cli/base.rb, line 28
def console(*args)
  prepare :console
  require File.expand_path("../../version", __FILE__)
  ARGV.clear
  require 'irb'
  begin
    require "irb/completion"
  rescue LoadError
  end
  require File.expand_path('config/boot.rb')
  puts "=> Loading #{Tennpipes.env} console (Tennpipes v.#{Tennpipes.version})"
  require File.expand_path('../console', __FILE__)
  IRB.start
end
generate(*args) click to toggle source
# File lib/tennpipes-base/cli/base.rb, line 45
def generate(*args)
  begin
    # We try to load the vendored tennpipes-init if exist
    tennpipes_gen_path = File.expand_path('../../../../../tennpipes-init/lib', __FILE__)
    $:.unshift(tennpipes_gen_path) if File.directory?(tennpipes_gen_path) && !$:.include?(tennpipes_gen_path)
    require 'tennpipes-base/command'
    require 'tennpipes-init/command'
    ARGV.shift
    ARGV << 'help' if ARGV.empty?
    Tennpipes.bin_gen(*ARGV)
  rescue
    puts "<= You need tennpipes-init! Run: gem install tennpipes-init"
  end
end
rake(*args) click to toggle source
# File lib/tennpipes-base/cli/base.rb, line 10
def rake(*args)
  prepare :rake
  args << "-T" if options[:list]
  args << options[:list]  unless options[:list].nil? || options[:list].to_s == "list"
  args << "--trace" if options[:trace]
  args << "--verbose" if options[:verbose]
  ARGV.clear
  ARGV.concat(args)
  puts "=> Executing Rake #{ARGV.join(' ')} ..."
  load File.expand_path('../rake.rb', __FILE__)
  Rake.application.init
  Rake.application.instance_variable_set(:@rakefile, __FILE__)
  load File.expand_path('Rakefile')
  Rake.application.top_level
end
runner(*args) click to toggle source
# File lib/tennpipes-base/cli/base.rb, line 69
def runner(*args)
  prepare :runner

  code_or_file = args.shift
  abort "Please specify code or file" if code_or_file.nil?

  require File.expand_path('config/boot.rb')

  if File.exist?(code_or_file)
    eval(File.read(code_or_file), nil, code_or_file)
  else
    eval(code_or_file)
  end
end
version() click to toggle source
# File lib/tennpipes-base/cli/base.rb, line 62
def version
  require 'tennpipes-base/version'
  puts "Tennpipes v. #{Tennpipes.version}"
end

Protected Instance Methods

capture(stream) { || ... } click to toggle source
# File lib/tennpipes-base/cli/base.rb, line 90
def capture(stream)
  begin
    stream = stream.to_s
    eval "$#{stream} = StringIO.new"
    yield
    result = eval("$#{stream}").string
  ensure
    eval("$#{stream} = #{stream.upcase}")
  end

  result
end
Also aliased as: silence
silence(stream)
Alias for: capture