event-reporting-handler 0.1.7 → 0.1.8

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: 036bd58d037e095ac3dce7a2f5d81beb3903a846
4
- data.tar.gz: 1fc4798f6322eb5a27469de40c7107b7efa48c4f
3
+ metadata.gz: 32e9440fdc8f06399a819f19b8aee99da4de05af
4
+ data.tar.gz: 2695f1a86ac60276230edef0ae7c73eef44fecc5
5
5
  SHA512:
6
- metadata.gz: adfb941eec2ea6f464f23a1561df7efa2c4f59554da8831594f7df452c751b79c4e3de507d7c265b1a7d4adbcd3c86b999d3dc454f0ff2466130948f3aea8e25
7
- data.tar.gz: 7b2ffc0d5031d6b0fcc8fc37997c1fe4b6a3fc48242614ced2118be170f68bcdae269d989ed9c82b7cdaa14370d0e9172091baccc9a31bb42ab947947db9274b
6
+ metadata.gz: 7a1a2849d779a4e8f4995045f0a0661193990757c62f23337103aa76478bb13f3b711e33ccce515e507e30cf728bfc3ed5aa76471d67c34a4d7537063ec20f1f
7
+ data.tar.gz: 4cf32e35c3ce33bf6504a2e68bce43d20ce8eed7a0f210b59d374a62ae60580e9d8330e89ff2b7316d22757190a8d5393a144ee856ecfc3a80323a31bbc82a40
data/.rubocop.yml ADDED
@@ -0,0 +1,44 @@
1
+ ---
2
+ AllCops:
3
+ Exclude:
4
+ - 'Guardfile'
5
+ - 'Rakefile'
6
+ - 'Vagrantfile'
7
+ - 'Policyfile.rb'
8
+ - 'Berksfile'
9
+ - 'Thorfile'
10
+ - 'Gemfile'
11
+ - 'metadata.rb'
12
+ - 'test/**/*'
13
+ - 'bin/**'
14
+ - 'vendor/**/*'
15
+ AlignParameters:
16
+ Enabled: false
17
+ ClassLength:
18
+ Enabled: false
19
+ CyclomaticComplexity:
20
+ Enabled: false
21
+ Documentation:
22
+ Enabled: false
23
+ Encoding:
24
+ Enabled: false
25
+ Style/FileName:
26
+ Enabled: false
27
+ LineLength:
28
+ Enabled: false
29
+ MethodLength:
30
+ Enabled: false
31
+ Metrics/AbcSize:
32
+ Enabled: false
33
+ PerceivedComplexity:
34
+ Enabled: false
35
+ SingleSpaceBeforeFirstArg:
36
+ Enabled: false
37
+ Style/ClassAndModuleChildren:
38
+ Enabled: false
39
+ Style/FileName:
40
+ Enabled: false
41
+ Style/GuardClause:
42
+ Enabled: false
43
+ Style/PercentLiteralDelimiters:
44
+ Enabled: false
@@ -4,24 +4,22 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
4
  require 'event_reporting_handler/version'
5
5
 
6
6
  Gem::Specification.new do |spec|
7
- spec.name = "event-reporting-handler"
7
+ spec.name = 'event-reporting-handler'
8
8
  spec.version = BloombergLP::EventReportingHandler::VERSION
9
- spec.authors = ["Shahul Khajamohideen"]
10
- spec.email = ["skhajamohid1@bloomberg.net"]
9
+ spec.authors = ['Shahul Khajamohideen']
10
+ spec.email = ['skhajamohid1@bloomberg.net']
11
11
 
12
- spec.summary = "Chef handler to send events to http url. Also sends chef run failures to sentry"
12
+ spec.summary = 'Chef handler to send events to http url. Also sends chef run failures to sentry'
13
13
  spec.description = spec.summary
14
- spec.homepage = "https://github.com/sh9189/event-reporting-handler"
15
-
14
+ spec.homepage = 'https://github.com/sh9189/event-reporting-handler'
16
15
 
17
16
  spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
18
- spec.bindir = "exe"
19
17
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
20
- spec.require_paths = ["lib"]
18
+ spec.require_paths = ['lib']
21
19
 
22
- spec.add_development_dependency "bundler", "~> 1.10"
23
- spec.add_development_dependency "rake", "~> 10.0"
24
- spec.add_development_dependency "rspec"
20
+ spec.add_development_dependency 'bundler', '~> 1.10'
21
+ spec.add_development_dependency 'rake', '~> 10.0'
22
+ spec.add_development_dependency 'rspec'
25
23
 
26
- spec.add_runtime_dependency 'sentry-raven', '~> 0.15.2'
24
+ spec.add_runtime_dependency 'sentry-raven', '~> 0.9.4'
27
25
  end
@@ -8,48 +8,47 @@ require 'raven'
8
8
  module BloombergLP
9
9
  module EventReportingHandler
10
10
  class HttpEventReporter < Chef::EventDispatch::Base
11
+ def initialize(http_url, sentry_config, run_status)
12
+ @http_url = http_url
13
+ @node = run_status.node
14
+ Raven.configure(true) do |config|
15
+ config.ssl_verification = sentry_config['verify_ssl'] || true
16
+ config.dsn = sentry_config['dsn']
17
+ config.logger = ::Chef::Log
18
+ config.current_environment = node.chef_environment
19
+ config.environments = [node.chef_environment]
20
+ config.send_modules = Gem::Specification.respond_to?(:map)
21
+ end
22
+ Raven.logger.debug 'Raven ready to report errors'
23
+ end
11
24
 
12
- def initialize(http_url,sentry_config,run_status)
13
- @http_url = http_url
14
- @node = run_status.node
15
- Raven.configure(true) do |config|
16
- config.ssl_verification = sentry_config['verify_ssl'] || true
17
- config.dsn = sentry_config['dsn']
18
- config.logger = ::Chef::Log
19
- config.current_environment = node.chef_environment
20
- config.environments = [node.chef_environment]
21
- config.send_modules = Gem::Specification.respond_to?(:map)
22
- end
23
- Raven.logger.debug "Raven ready to report errors"
24
- end
25
-
26
- def run_started(run_status)
27
- @chef_run_id = run_status.run_id
28
- @node_fqdn = @node.name
29
- publish_event(:run_started)
30
- end
31
-
25
+ def run_started(run_status)
26
+ @chef_run_id = run_status.run_id
27
+ @node_fqdn = @node.name
28
+ publish_event(:run_started)
29
+ end
32
30
 
33
- # Called at the end a successful Chef run.
34
- def run_completed(node)
31
+ # Called at the end a successful Chef run.
32
+ def run_completed(_node)
35
33
  publish_event(:run_completed)
36
34
  end
37
35
 
38
36
  # Called at the end of a failed Chef run.
39
37
  def run_failed(exception)
40
38
  sentry_event_id = report_to_sentry(exception)
41
- publish_event(:run_failed, {sentry_event_id: sentry_event_id})
39
+ publish_event(:run_failed, sentry_event_id: sentry_event_id)
42
40
  end
43
41
 
44
42
  private
43
+
45
44
  def report_to_sentry(exception)
46
- Raven.logger.info "Logging run failure to Sentry server"
45
+ Raven.logger.info 'Logging run failure to Sentry server'
47
46
  if exception
48
47
  evt = Raven::Event.capture_exception(exception)
49
48
  else
50
- evt = Raven::Event.new do |evt|
51
- evt.message = "Unknown error during Chef run"
52
- evt.level = :error
49
+ evt = Raven::Event.new do |event|
50
+ event.message = 'Unknown error during Chef run'
51
+ event.level = :error
53
52
  end
54
53
  end
55
54
  # Use the node name, not the FQDN
@@ -58,9 +57,8 @@ module BloombergLP
58
57
  evt.id
59
58
  end
60
59
 
61
-
62
- def publish_event(event,custom_attributes)
63
- json_to_publish = get_json_from_event(event,custom_attributes)
60
+ def publish_event(event, custom_attributes)
61
+ json_to_publish = get_json_from_event(event, custom_attributes)
64
62
  uri = URI(@http_url)
65
63
  res = Net::HTTP.start(uri.host, uri.port) do |http|
66
64
  http.post(uri.path, json_to_publish, 'Content-Type' => 'application/json')
@@ -73,12 +71,10 @@ module BloombergLP
73
71
  end
74
72
  end
75
73
 
76
- def get_json_from_event(event,custom_attributes)
74
+ def get_json_from_event(event, custom_attributes)
77
75
  event = { deploy_event: { node_fqdn: @node_fqdn, sub_type: event, occurred_at: Time.now.to_s } }
78
76
  event.merge(custom_attributes).to_json
79
77
  end
80
-
81
-
82
78
  end
83
79
  end
84
80
  end
@@ -8,19 +8,17 @@ require 'chef/handler'
8
8
  module BloombergLP
9
9
  module EventReportingHandler
10
10
  class StartHandler < Chef::Handler
11
-
12
- def initialize(http_url='',sentry_config={})
11
+ def initialize(http_url = '', sentry_config = {})
13
12
  @http_url = http_url
14
13
  @sentry_config = sentry_config
15
14
  end
16
15
 
17
16
  def report
18
17
  Chef::Log.debug("Running start handler with http_url: #{@http_url} and sentry_config: #{@sentry_config} ")
19
- http_event_reporter = HttpEventReporter.new(@http_url,@sentry_config,@run_status)
18
+ http_event_reporter = HttpEventReporter.new(@http_url, @sentry_config, @run_status)
20
19
  @run_status.events.register(http_event_reporter)
21
20
  http_event_reporter.run_started(@run_status)
22
21
  end
23
-
24
22
  end
25
23
  end
26
24
  end
@@ -4,6 +4,6 @@
4
4
  #
5
5
  module BloombergLP
6
6
  module EventReportingHandler
7
- VERSION = "0.1.7"
7
+ VERSION = '0.1.8'
8
8
  end
9
9
  end
metadata CHANGED
@@ -1,12 +1,12 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: event-reporting-handler
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.7
4
+ version: 0.1.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Shahul Khajamohideen
8
8
  autorequire:
9
- bindir: exe
9
+ bindir: bin
10
10
  cert_chain: []
11
11
  date: 2015-12-21 00:00:00.000000000 Z
12
12
  dependencies:
@@ -58,14 +58,14 @@ dependencies:
58
58
  requirements:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: 0.15.2
61
+ version: 0.9.4
62
62
  type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: 0.15.2
68
+ version: 0.9.4
69
69
  description: Chef handler to send events to http url. Also sends chef run failures
70
70
  to sentry
71
71
  email:
@@ -76,6 +76,7 @@ extra_rdoc_files: []
76
76
  files:
77
77
  - ".gitignore"
78
78
  - ".rspec"
79
+ - ".rubocop.yml"
79
80
  - ".travis.yml"
80
81
  - Gemfile
81
82
  - LICENSE