Print a warning when in dry run mode

This commit is contained in:
Thibault Jouan
2014-07-01 18:15:55 +00:00
parent aac5f603e3
commit 1188b2008f
7 changed files with 52 additions and 7 deletions

View File

@@ -27,14 +27,14 @@ module Producer
def logger
@logger ||= begin
logger = Logger.new(output)
logger.level = verbose? ? Logger::INFO : Logger::ERROR
logger.level = verbose? ? Logger::INFO : Logger::WARN
logger.formatter = LoggerFormatter.new
logger
end
end
def log(message)
logger.info message
def log(message, severity = :info)
logger.send severity, message
end
def verbose?

View File

@@ -2,7 +2,14 @@ module Producer
module Core
class LoggerFormatter < Logger::Formatter
def call(severity, datetime, progname, message)
message + "\n"
prefix(severity) + message + "\n"
end
private
def prefix(severity)
severity == 'WARN' ? 'Warning: ' : ''
end
end
end

View File

@@ -1,6 +1,9 @@
module Producer
module Core
class Worker
DRY_RUN_WARNING =
'running in dry run mode, actions will NOT be applied'.freeze
attr_accessor :env
def initialize(env)
@@ -8,6 +11,8 @@ module Producer
end
def process(tasks)
env.log DRY_RUN_WARNING, :warn if env.dry_run?
tasks.each { |t| process_task t }
end