Sha256: 25e305424773aa5e407ca41ff364f4abe467c3c2f107729cabc50ffefbaa9576
Contents?: true
Size: 1.51 KB
Versions: 1
Compression:
Stored size: 1.51 KB
Contents
module GitlabJanitor class Fmt < ActiveSupport::Logger::SimpleFormatter def call(severity, timestamp, progname, msg) super end end class Util TERM_SIGNALS = %w[INT TERM].freeze class << self def exiting? $exiting end def exit! $exiting = true end def logger $logger end def setup STDOUT.sync = true STDERR.sync = true $logger = ActiveSupport::TaggedLogging.new(Logger.new(STDOUT)) $logger.level = ENV.fetch('LOG_LEVEL', Logger::INFO) formatter = Logger::Formatter.new formatter.extend ActiveSupport::TaggedLogging::Formatter $logger.formatter = formatter initialize_signal_handlers String.class_eval do def to_bool return true if self == true || self =~ (/(true|t|yes|y|1)$/i) return false if self == false || self.blank? || self =~ (/(false|f|no|n|0)$/i) raise ArgumentError.new("invalid value for Boolean: \"#{self}\"") end end end def initialize_signal_handlers TERM_SIGNALS.each do |sig| trap(sig) do |*_args| TERM_SIGNALS.each do |sig| trap(sig) do |*_args| STDERR.puts 'Forcing exit!' Kernel::exit!(1) end end STDOUT.puts "Caught signal[#{sig}]: exiting...." GitlabJanitor::Util.exit! end end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
gitlab-janitor-0.0.3 | lib/gitlab-janitor/utils.rb |