Parent

Methods

OptionsParser

Public Class Methods

parse(args) click to toggle source

Return a structure describing the options.

# File ods-kaspcheck, line 39
def self.parse(args)
  # The options specified on the command line will be collected in *options*.
  # We set default values here.
  path = "/etc/opendnssec"
  options = OpenStruct.new
  options.rng_path = "/usr/share/opendnssec"
  options.xmllint = "/usr/bin/xmllint"
  options.default_conf_file = path + "/conf.xml"

  opts = OptionParser.new do |opts|
    opts.banner = "Usage: ods-kaspcheck [options]"

    opts.separator ""
    opts.separator "Specific options:"

    # conf.xml
    opts.on("-c", "--conf [PATH_TO_CONF_FILE]",
            "Path to OpenDNSSEC configuration file",
            "  (defaults to " + options.default_conf_file + ")") do |ext|
      options.conf_file = ext
    end

    # kasp.xml
    opts.on("-k", "--kasp [PATH_TO_KASP_FILE]",
            "Path to KASP policy file",
            "  (defaults to the path given in the configuration file)") do |ext|
      options.kasp_file = ext
    end

    opts.on("-v", "--version", # Override default
           "Display version information") do |x|
       print "1.3.16\n"
       exit
    end


    opts.separator ""
    opts.separator "Common options:"

    # No argument, shows at tail.  This will print an options summary.
    # Try it and see!
    opts.on_tail("-h", "-?", "--help", "Show this message") do
      puts opts
      exit
    end

  end

  begin
    opts.parse!(args)
  rescue OptionParser::InvalidOption => e
    print "#{e}\n"
    puts opts
    exit(1)
  end
  options
end

[Validate]

Generated with the Darkfish Rdoc Generator 2.