cem_data_processor 1.1.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,51 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative 'lib/cem_data_processor/version'
4
+
5
+ Gem::Specification.new do |spec|
6
+ spec.name = "cem_data_processor"
7
+ spec.version = CemDataProcessor::VERSION
8
+ spec.authors = ["abide-team"]
9
+ spec.email = ["abide-team@puppet.com"]
10
+
11
+ spec.summary = "Helper to process data for Puppetlabs CEM modules."
12
+ spec.description = "Provides functions that help with extracting out information from Hiera file."
13
+ spec.homepage = "https://github.com/puppetlabs/cem_data_processor"
14
+ spec.license = "Proprietary"
15
+ spec.required_ruby_version = Gem::Requirement.new(">= 2.3.0")
16
+
17
+ # spec.metadata["allowed_push_host"] = "TODO: Set to 'http://mygemserver.com'"
18
+
19
+ spec.metadata["homepage_uri"] = spec.homepage
20
+ spec.metadata["source_code_uri"] = spec.homepage
21
+ spec.metadata["changelog_uri"] = spec.homepage
22
+
23
+ # Specify which files should be added to the gem when it is released.
24
+ # The `git ls-files -z` loads the files in the RubyGem that have been added into git.
25
+ spec.files = Dir.chdir(File.expand_path('..', __FILE__)) do
26
+ `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
27
+ end
28
+ spec.bindir = "exe"
29
+ spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
30
+ spec.require_paths = ["lib"]
31
+
32
+ # Prod dependencies
33
+ spec.add_dependency 'deep_merge', '~> 1.2'
34
+ spec.add_dependency 'rgl', '~> 0.5'
35
+
36
+ # Dev dependencies
37
+ spec.add_development_dependency 'bundler'
38
+ spec.add_development_dependency 'rake'
39
+ spec.add_development_dependency 'console'
40
+ spec.add_development_dependency 'github_changelog_generator'
41
+ spec.add_development_dependency 'gem-release'
42
+ spec.add_development_dependency 'pry'
43
+ spec.add_development_dependency 'pry-byebug'
44
+ spec.add_development_dependency 'rspec', '~> 3.10'
45
+ spec.add_development_dependency 'rubocop', '~> 1.8'
46
+ spec.add_development_dependency 'rubocop-rspec', '~> 2.1'
47
+ spec.add_development_dependency 'rubocop-ast', '~> 1.4'
48
+ spec.add_development_dependency 'rubocop-performance', '~> 1.9'
49
+ spec.add_development_dependency 'rubocop-i18n', '~> 3.0'
50
+ spec.add_development_dependency 'fast_gettext', '~> 1.8'
51
+ end
@@ -0,0 +1,43 @@
1
+ # frozen_string_literal: true
2
+
3
+ module CemDataProcessor
4
+ module Processor
5
+ class Logger
6
+ LEVELS = {error: 1, warning: 2, info: 3, debug: 4}
7
+
8
+ def initialize(level = :info, out = STDOUT, err = STDERR)
9
+ @level = LEVELS[level]
10
+ if @level.nil?
11
+ raise ArgumentError, "Unknown log level at #{level}"
12
+ end
13
+
14
+ @out = out
15
+ @err = err
16
+ end
17
+
18
+ def debug(message)
19
+ if @level >= LEVELS[:debug]
20
+ @out.puts(message)
21
+ end
22
+ end
23
+
24
+ def inform(message)
25
+ if @level >= LEVELS[:info]
26
+ @out.puts(message)
27
+ end
28
+ end
29
+
30
+ def warn(message)
31
+ if @level >= LEVELS[:warning]
32
+ @out.puts(message)
33
+ end
34
+ end
35
+
36
+ def err(message)
37
+ if @level >= LEVELS[:error]
38
+ @err.puts(message)
39
+ end
40
+ end
41
+ end
42
+ end
43
+ end