# class Shell::Options

### Public Class Methods

print_help() click to toggle source

    # File lib/chef/shell.rb, line 260
    def self.print_help
      instance = new
      instance.parse_options([])
      puts instance.opt_parser
      puts
      puts footer
      puts
      exit 1
    end

setup!() click to toggle source

    # File lib/chef/shell.rb, line 270
    def self.setup!
      self.new.parse_opts
    end

### Public Instance Methods

parse_opts() click to toggle source

    # File lib/chef/shell.rb, line 274
    def parse_opts
      remainder = parse_options
      environment = remainder.first
      # We have to nuke ARGV to make sure irb's option parser never sees it.
      # otherwise, IRB complains about command line switches it doesn't recognize.
      ARGV.clear
      config[:config_file] = config_file_for_shell_mode(environment)
      config_msg = config[:config_file] || "none (standalone session)"
      puts "loading configuration: #{config_msg}"
      Chef::Config.from_file(config[:config_file]) if !config[:config_file].nil? && File.exists?(config[:config_file]) && File.readable?(config[:config_file])
      Chef::Config.merge!(config)
    end