Module: ChefFixie::Console

Extended by:
Console
Included in:
Console
Defined in:
lib/chef_fixie_shahid/console.rb

Instance Method Summary collapse

Instance Method Details

#configureObject



40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
# 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_pryObject



67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
# 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

#startObject



32
33
34
35
36
37
38
# 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?Boolean

Returns:

  • (Boolean)


91
92
93
# File 'lib/chef_fixie_shahid/console.rb', line 91

def started_from_command_line?
  @@started_from_command_line == true
end