Sha256: f8f81891742be1d47a23b688c4fa085d24e71bd748a2c7b9c092c477d8fab2af
Contents?: true
Size: 1.01 KB
Versions: 4
Compression:
Stored size: 1.01 KB
Contents
require 'slog' require 'thor' # Thor's hammer! Like Thor with better logging class Mjolnir < Thor # Common options for Thor commands COMMON_OPTIONS = { log: { type: :string, aliases: %w[ -L ], desc: 'Log to file instead of STDOUT', default: ENV['BENDER_LOG'] || nil }, debug: { type: :boolean, aliases: %w[ -V ], desc: 'Enable DEBUG-level logging', default: ENV['BENDER_DEBUG'] || false } } # Decorate Thor commands with the options above def self.include_common_options COMMON_OPTIONS.each do |name, spec| option name, spec end end no_commands do # Construct a Logger given the command-line options def log return @logger if defined? @logger level = :info level = :debug if options.debug? device = options.log || $stderr pretty = device.tty? rescue false @logger = Slog.new \ out: device, level: level, colorize: pretty, prettify: pretty end end end
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
bender-bot-0.6.3 | lib/bender/mjolnir.rb |
bender-bot-0.6.2 | lib/bender/mjolnir.rb |
bender-bot-0.6.1 | lib/bender/mjolnir.rb |
bender-bot-0.6.0 | lib/bender/mjolnir.rb |