Sha256: bac25dd1079ccaf6e4cd7b7c34f23ffe7281b4d52042594146a50add3a0f3bdd
Contents?: true
Size: 1.83 KB
Versions: 2
Compression:
Stored size: 1.83 KB
Contents
require 'optparse' require 'yaml' require 'papertrail/cli_helpers' require 'papertrail/connection' module Papertrail class CliAddGroup include Papertrail::CliHelpers def run options = { :configfile => nil, :token => ENV['PAPERTRAIL_API_TOKEN'], } if configfile = find_configfile configfile_options = load_configfile(configfile) options.merge!(configfile_options) end OptionParser.new do |opts| opts.banner = "papertrail-add-group" opts.on("-h", "--help", "Show usage") do |v| puts opts exit end opts.on("-c", "--configfile PATH", "Path to config (~/.papertrail.yml)") do |v| options[:configfile] = File.expand_path(v) end opts.on("-g", "--group SYSTEM", "Name of group to add") do |v| options[:group] = v end opts.on("-w", "--system-wildcard WILDCARD", "Wildcard for system match") do |v| options[:wildcard] = v end opts.separator usage end.parse! if options[:configfile] configfile_options = load_configfile(options[:configfile]) options.merge!(configfile_options) end raise OptionParser::MissingArgument, 'group' if options[:group].nil? connection = Papertrail::Connection.new(options) # Bail if group already exists if connection.show_group(options[:group]) exit 0 end if connection.create_group(options[:group], options[:wildcard]) exit 0 end exit 1 rescue OptionParser::ParseError => e puts "Error: #{e}" puts usage exit 1 end def usage <<-EOF Usage: papertrail-add-group [-g group] [-w system-wildcard] [-c papertrail.yml] Example: papertrail-add-group -g mygroup -w mygroup-systems* EOF end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
papertrail-0.9.9 | lib/papertrail/cli_add_group.rb |
papertrail-0.9.8 | lib/papertrail/cli_add_group.rb |