Sha256: 8dba84cb84cfe56775e88e9679b5453f400e32afde2762fd13d6c6900c6e772b
Contents?: true
Size: 1.03 KB
Versions: 2
Compression:
Stored size: 1.03 KB
Contents
#!/usr/bin/env ruby # Creat list of inventory devices based on device model require 'trollop' require 'json' require 'logger' require 'syslog/logger' require 'bjn_inventory' parser = Trollop::Parser.new do version BjnInventory::VERSION banner <<-USAGE.gsub(/^\s{8}/,'') Usage: inventory-devices [options] USAGE opt :key, 'Specify the key of inventory hash', required: true, type: :string opt :manifest, 'Specify the manifest that defines this inventory', required: true, type: :string opt :debug, 'Enable debug output', :short => '-D' opt :syslog, 'Log to Syslog', :short => '-S' stop_on_unknown end opt = Trollop::with_standard_exception_handling parser do parser.parse(ARGV) end logger = opt[:syslog]? Syslog::Logger.new('inventory-devices') : Logger.new(STDERR) logger.level = opt[:debug]? Logger::DEBUG : Logger::WARN manifest = JSON.parse(File.read(opt[:manifest])) inventory = BjnInventory::Inventory.new(manifest.merge({logger: logger})) puts JSON.pretty_generate(inventory.by(opt[:key]))
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
bjn_inventory-1.3.1 | bin/inventory_model |
bjn_inventory-1.3.0 | bin/inventory_model |