itamae 1.5.0 → 1.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 5824e615aa71ac1b33b444d24ef09a784ce481fe
4
- data.tar.gz: 18ded54560fa8f2c95d94bdee351d33edfc53b06
3
+ metadata.gz: 527c1c2c9aac7484eb00454e1d66d91d57e07f45
4
+ data.tar.gz: 557aa8fead8d4aeb0cfc289050548231e0b3fa33
5
5
  SHA512:
6
- metadata.gz: f04064f58c4b1ed7130dee98dd8d640562140e49b49de8f4cf098181fe628fd1eafa9ff6350ed3e3213d52f9b1a160133e6169c973a34a556b095bd3a29a540a
7
- data.tar.gz: 7180ffdc7d22da2ba174d6c9985e8bf596ba458943e3483a4391af88a84da75ff6535e2627aebdcce58fb60b4b72305b8ff7f4fb8ff389f94400fa5e31b07697
6
+ metadata.gz: 9f66b1c4369c7a72f4cad09cda136e8f83667ed83fe70e0dc46f1347ac7412c7d24114ae46414cbe5103fc02edc8bbf962d7c07118cb77191e92258d805fab43
7
+ data.tar.gz: e0d54f47e26b8765299a61c573b82204cbada17b1a541e85223e56da717cc9cccd71975c93d07f21480ed4924e0ed37627a9ae501789bc2bab7d7a3ab264060e
data/CHANGELOG.md CHANGED
@@ -1,3 +1,9 @@
1
+ ## v1.5.1
2
+
3
+ Improvements
4
+
5
+ - [Logger can be injected one which doesn't have `color` method.](https://github.com/itamae-kitchen/itamae/commit/7c50f376f69029836047f26ab0a46b41b928c0d3)
6
+
1
7
  ## v1.5.0
2
8
 
3
9
  Improvements
data/lib/itamae/logger.rb CHANGED
@@ -4,7 +4,7 @@ require 'ansi/code'
4
4
 
5
5
  module Itamae
6
6
  module Logger
7
- module IndentHelper
7
+ module Helper
8
8
  def with_indent
9
9
  indent
10
10
  yield
@@ -37,6 +37,14 @@ module Itamae
37
37
  @indent_depth = val
38
38
  end
39
39
 
40
+ def color(code, &block)
41
+ if self.formatter.respond_to?(:color)
42
+ self.formatter.color(code, &block)
43
+ else
44
+ block.call
45
+ end
46
+ end
47
+
40
48
  %w!debug info warn error fatal unknown!.each do |level|
41
49
  module_eval(<<-EOC, __FILE__, __LINE__ + 1)
42
50
  def #{level}(msg)
@@ -48,7 +56,6 @@ module Itamae
48
56
 
49
57
  class Formatter
50
58
  attr_accessor :colored
51
- attr_accessor :color
52
59
 
53
60
  def call(severity, datetime, progname, msg)
54
61
  log = "%s : %s\n" % ["%5s" % severity, msg2str(msg)]
@@ -68,6 +75,7 @@ module Itamae
68
75
  end
69
76
 
70
77
  private
78
+
71
79
  def msg2str(msg)
72
80
  case msg
73
81
  when ::String
@@ -102,7 +110,7 @@ module Itamae
102
110
 
103
111
  @logger = ::Logger.new($stdout).tap do |l|
104
112
  l.formatter = Itamae::Logger::Formatter.new
105
- end.extend(Itamae::Logger::IndentHelper)
113
+ end.extend(Itamae::Logger::Helper)
106
114
 
107
115
  class << self
108
116
  def logger
@@ -110,7 +118,7 @@ module Itamae
110
118
  end
111
119
 
112
120
  def logger=(l)
113
- @logger = l.extend(Itamae::Logger::IndentHelper)
121
+ @logger = l.extend(Itamae::Logger::Helper)
114
122
  end
115
123
  end
116
124
  end
@@ -228,13 +228,13 @@ module Itamae
228
228
  if current_value.nil? && value.nil?
229
229
  # ignore
230
230
  elsif current_value.nil? && !value.nil?
231
- Itamae.logger.formatter.color :green do
231
+ Itamae.logger.color :green do
232
232
  Itamae.logger.info "#{resource_type}[#{resource_name}] #{key} will be '#{value}'"
233
233
  end
234
234
  elsif current_value == value || value.nil?
235
235
  Itamae.logger.debug "#{resource_type}[#{resource_name}] #{key} will not change (current value is '#{current_value}')"
236
236
  else
237
- Itamae.logger.formatter.color :green do
237
+ Itamae.logger.color :green do
238
238
  Itamae.logger.info "#{resource_type}[#{resource_name}] #{key} will change from '#{current_value}' to '#{value}'"
239
239
  end
240
240
  end
@@ -121,7 +121,7 @@ module Itamae
121
121
  else
122
122
  :clear
123
123
  end
124
- Itamae.logger.formatter.color(color) do
124
+ Itamae.logger.color(color) do
125
125
  Itamae.logger.info line.chomp
126
126
  end
127
127
  end
@@ -1 +1 @@
1
- 1.5.0
1
+ 1.5.1
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: itamae
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.5.0
4
+ version: 1.5.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ryota Arai