Module: A2::Parser

Defined in:
lib/a2/parser.rb

Instance Method Summary collapse

Instance Method Details

#parse!Object



3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# File 'lib/a2/parser.rb', line 3

def parse!
  parser = CmdParse::CommandParser.new(handle_exceptions: true)
  parser.main_options.version = A2::VERSION
  parser.add_command(CmdParse::HelpCommand.new)
  parser.add_command(CmdParse::VersionCommand.new)
  parser.add_command(A2::Command::Compliance.new)
  parser.add_command(A2::Command::IAM.new)
  parser.add_command(A2::Command::Infra.new)
  parser.add_command(A2::Command::NodeMgmt.new)
  parser.global_options do |opt|
    opt.on("-u", "--automate-url [url]", "The Chef Automate URL") do |url|
      parser.data[:automate_url] = url
    end
    opt.on("-t", "--automate-token [token]", "The Chef Automate API token") do |token|
      parser.data[:automate_token] = token
    end
    opt.on("-N", "--ssl-no-verify", "Disable SSL verification") do
      parser.data[:ssl_no_verify] = true
    end
  end
  parser.parse
end