Sha256: 7d89a88ed208236e54fc34c5822af8c004714c71d9eac06d36aa29df94efc35e
Contents?: true
Size: 1.44 KB
Versions: 1
Compression:
Stored size: 1.44 KB
Contents
#!/usr/bin/env ruby #onering # list [options] field [key:value ..] # search [options] [key:value .. ] # provision [options] [key:value .. ] [pxe profile | ] require 'json' require 'rubygems' require 'subcommander' require 'onering' require 'yaml' include Subcommander def print_format(data) puts YAML.dump(data) end subcommander.version = Gem.loaded_specs['onering-client'].version.to_s subcommander.desc = Gem.loaded_specs['onering-client'].description #subcommander.opt :server, '-s', '--server', 'Specify the Onering server URL' subcommand :devices, "Operations related to Onering's assets database" do |devices| api = Onering::API::Devices api.connect # GET devices.subcommand :get, "Get a single node by ID" do |sc| sc.usage = "onering devices get ID" sc.exec do print_format api.get(sc[:args].first) end end # LIST devices.subcommand :list, "List field values" do |sc| sc.usage = "onering devices list [-f FILTER] FIELD" sc.opt :filter, '-f', '--filter FILTER', "A urlquery filter string" sc.exec do field = sc[:args].first filter = sc[:filter] print_format api.list(field, { :filter => filter }) end end # FIND devices.subcommand :find, "Finds all nodes that match a urlquery filter string" do |sc| sc.arity = 1 sc.usage = "onering devices find FILTER" sc.exec do print_format api.find(sc[:args].first) end end end subcommander.go!
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
onering-client-0.0.7 | bin/onering |