module ChefFixie::Console

Public Instance Methods

configure() click to toggle source
# File lib/chef_fixie_shahid/console.rb, line 40
def configure
  config_file = nil
  if ARGV.first && ARGV[0].chars.first != "-" && config_file = ARGV.shift
    config_file = File.expand_path(config_file)
  end
  ChefFixie.load_config(config_file)

  options = {}
  OptionParser.new do |opt|
    opt.banner = "Usage: fixie [config] [options]"
    opt.on("--authz_uri AUTH_URI", "The URI of the opscode authz service") { |v| options[:authz_uri] = v }
    opt.on("--sql_database DATABASE", "The URI of the opscode_chef database") { |v| options[:sql_database] = v }
    opt.on_tail("-h", "--help", "Show this message") do
      puts opt
      puts "\nExample configuration file:\n\n"
      puts ChefFixie::Config.instance.example_config
      puts "\n"
      exit(1)
    end
    opt.parse!(ARGV)
  end
  pp :cli_opts => options if ENV["DEBUG"]

  ChefFixie::Config.instance.merge_opts(options)
  puts ChefFixie::Config.instance.to_text
end
configure_pry() click to toggle source
# File lib/chef_fixie_shahid/console.rb, line 67
    def configure_pry
      Pry.config.history.file = "~/.fixie_history"
      Pry.config.prompt_name = "fixie"
      Pry::Commands.block_command("fixie-help", "Show fixie's help") do
        output.puts(<<-HALP)
** ORGS **
* access with ORGS or ORGS
* access a specific org: ORGS['orgname']

** USERS **
* users.find('clownco-org-admin')
* users.grep :clownco
* users.usernames

** RAW SQL ACCESS**
* sql[:users].select(:column, :column).where(:column => "condition").all

** irb Help **
irb_help

HALP
      end
    end
start() click to toggle source
# File lib/chef_fixie_shahid/console.rb, line 32
def start
  @@started_from_command_line = true
  configure
  ChefFixie.setup
  configure_pry
  Pry.start
end
started_from_command_line?() click to toggle source
# File lib/chef_fixie_shahid/console.rb, line 91
def started_from_command_line?
  @@started_from_command_line == true
end