sensu-plugins-twitter 1.0.0 → 2.0.0

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
- SHA1:
3
- metadata.gz: cb0bc3735fbe2285c46d850cb89ac33edbe9bb1d
4
- data.tar.gz: 3fff1da624c4998fab11c4efed4d8fbd0c20cfbe
2
+ SHA256:
3
+ metadata.gz: 41ac4400b48daffc834aa200e0728fc1f0a4149783fdee65f9626dda135ce605
4
+ data.tar.gz: bedaee851d780b6964de386b7dc0fcea203fadd5ba4032d027a4b5b3eee901c7
5
5
  SHA512:
6
- metadata.gz: 85480e29468efb2d03a859fa2180fa6a03ba9143767c50d0b2538423b804b977dd00991183397b3cf1d5553f868d59b12c2e6b0bbb6309131cd45f5993b17cd4
7
- data.tar.gz: ca0c28ec27ae88344ed964e6d7447308f737a052efe34ede877a7ecd41f9941a3601805848bb38ae743d7aa71e34a8279b4758584952263401a391f02cf6a044
6
+ metadata.gz: 67954a11a2a12ac13c7e7fccd965d88e89d15fa09ee209ad0ca4103802968d5aa8355122fe9b85bc5c787665a92b19e4107454f164b6172e97e99c15ad68c55e
7
+ data.tar.gz: ef3395f9fc985362fe1a678e20a1b1bfe6465c5a8381521a4403d56dc59683469291b48dd72aa1201d23203872846c692c6491bf03bae048df79df1dc8316627
@@ -4,6 +4,31 @@ This project adheres to [Semantic Versioning](http://semver.org/).
4
4
  This CHANGELOG follows the format listed at [Keep A Changelog](http://keepachangelog.com/)
5
5
 
6
6
  ## Unreleased
7
+
8
+ ## [2.0.0] - 2018-12-24
9
+ ### Added
10
+ - Bump sensu-plugin runtime dep to 3.0 with Sensu Go to Sensu Core 1.x migration option (@jspaleta)
11
+ - Added 2.5.1 ruby support (@jspaleta)
12
+ - Added --verbose cmdline switch to aid in local testing
13
+ - Added --disable_update cmdline switch to aid in local testing
14
+
15
+ ### Breaking Changes
16
+ - Dropped 2.0 ruby support (@jspaleta)
17
+ - Dropped 2.1 ruby support (@jspaleta)
18
+ - Dropped 2.2 ruby support (@jspaleta)
19
+
20
+ ### Changed
21
+ - Bump twitter runtime dep to 6.2.0 (@jspaleta)
22
+ - Bump codeclimate development dep to 1.0 (@jspaleta)
23
+ - Bump rake development dep to 12.3 (@jspaleta)
24
+ - Bump rubocop development dep to 0.60.0 (@jspaleta)
25
+ - Bump yard development dep to 0.9.11 (@jspaleta)
26
+ - Added explict rdoc development dep needed for ruby 2.5.1 (@jspaleta)
27
+ - Updated .rubocop.yml to disable unneeded warning messages (@jspaleta)
28
+ - Updated Rakefile and introduce quick task (@jspaleta)
29
+ - Updated .travis.yml to use quick task (@jspaleta)
30
+ - Clean up robucop warnings (@jspaleta)
31
+
7
32
  ## [1.0.0] - 2017-07-06
8
33
  ### Added
9
34
  - Ruby 2.3.0 & 2.4.1 testing
@@ -31,7 +56,8 @@ This CHANGELOG follows the format listed at [Keep A Changelog](http://keepachang
31
56
  ### Added
32
57
  - initial release
33
58
 
34
- [Unreleased]: https://github.com/sensu-plugins/sensu-plugins-twitter/compare/1.0.0...HEAD
59
+ [Unreleased]: https://github.com/sensu-plugins/sensu-plugins-twitter/compare/2.0.0...HEAD
60
+ [2.0.0]: https://github.com/sensu-plugins/sensu-plugins-twitter/compare/1.0.0...2.0.0
35
61
  [1.0.0]: https://github.com/sensu-plugins/sensu-plugins-twitter/compare/0.0.4...1.0.0
36
62
  [0.0.4]: https://github.com/sensu-plugins/sensu-plugins-twitter/compare/0.0.3...0.0.4
37
63
  [0.0.3]: https://github.com/sensu-plugins/sensu-plugins-twitter/compare/0.0.2...0.0.3
@@ -18,17 +18,45 @@ require 'sensu-handler'
18
18
  require 'twitter'
19
19
 
20
20
  class TwitterHandler < Sensu::Handler
21
+ option :verbose,
22
+ description: 'Verbose output',
23
+ short: '-v',
24
+ long: '--verbose',
25
+ boolean: true,
26
+ default: false
27
+ option :disable_update,
28
+ description: 'Disable update',
29
+ long: '--disable_update',
30
+ boolean: true,
31
+ default: false
32
+
21
33
  def event_name
22
- @event['client']['name'] + '/' + @event['check']['name']
34
+ (@event['client']['name'] || 'unknown') + '/' + (@event['check']['name'] || 'unknown')
23
35
  end
24
36
 
25
37
  def handle
38
+ puts "Settings: #{settings['twitter']}" if config[:verbose]
39
+ puts "Event: #{@event}" if config[:verbose]
26
40
  # #YELLOW
27
41
  twitter_clients.each do |client|
28
- if @event['action'].eql?('resolve')
29
- client.update("RESOLVED - #{event_name}: #{@event['check']['notification']} Time: #{Time.now} ")
42
+ if config[:verbose]
43
+ puts "Twitter Client: #{client}"
44
+ puts " Consumer Key: #{client.consumer_key}"
45
+ puts " Consumer Secret: #{client.consumer_secret}"
46
+ puts " Access Token: #{client.access_token}"
47
+ puts " Access Token Secret: #{client.access_token_secret}"
48
+ end
49
+
50
+ update_str = if @event['action'].eql?('resolve')
51
+ "RESOLVED - #{event_name}: #{@event['check']['notification']} Time: #{Time.now} "
52
+ else
53
+ "ALERT - #{event_name}: #{@event['check']['notification']} Time: #{Time.now} "
54
+ end
55
+
56
+ if config[:disable_update]
57
+ puts update_str
30
58
  else
31
- client.update("ALERT - #{event_name}: #{@event['check']['notification']} Time: #{Time.now} ")
59
+ client.update(update_str)
32
60
  end
33
61
  end
34
62
  end
@@ -37,7 +65,18 @@ class TwitterHandler < Sensu::Handler
37
65
 
38
66
  def twitter_clients
39
67
  @twitter_clients ||= settings['twitter'].map do |account|
68
+ next if @event['client'].nil?
69
+ next if @event['client']['subscriptions'].nil?
40
70
  next unless @event['client']['subscriptions'].include?(account[1]['sensusub'])
71
+
72
+ if config[:verbose]
73
+ puts "Account: #{account[0]}"
74
+ puts " Matching Subscription: #{account[1]['sensusub']}"
75
+ puts " Consumer Key: #{account[1]['consumer_key']}"
76
+ puts " Consumer Secret: #{account[1]['consumer_secret']}"
77
+ puts " Oauth Token: #{account[1]['oauth_token']}"
78
+ puts " Oauth Token Secret: #{account[1]['oauth_token_secret']}"
79
+ end
41
80
  Twitter::REST::Client.new do |config|
42
81
  config.consumer_key = account[1]['consumer_key']
43
82
  config.consumer_secret = account[1]['consumer_secret']
@@ -1,6 +1,6 @@
1
1
  module SensuPluginsTwitter
2
2
  module Version
3
- MAJOR = 1
3
+ MAJOR = 2
4
4
  MINOR = 0
5
5
  PATCH = 0
6
6
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sensu-plugins-twitter
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 2.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sensu Plugins and contributors
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-07-07 00:00:00.000000000 Z
11
+ date: 2018-12-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: sensu-plugin
@@ -16,28 +16,28 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '1.2'
19
+ version: '3.0'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '1.2'
26
+ version: '3.0'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: twitter
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - '='
32
32
  - !ruby/object:Gem::Version
33
- version: 5.15.0
33
+ version: 6.2.0
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - '='
39
39
  - !ruby/object:Gem::Version
40
- version: 5.15.0
40
+ version: 6.2.0
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: bundler
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -58,28 +58,28 @@ dependencies:
58
58
  requirements:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: '0.4'
61
+ version: '1.0'
62
62
  type: :development
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.4'
68
+ version: '1.0'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: github-markup
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
73
  - - "~>"
74
74
  - !ruby/object:Gem::Version
75
- version: '1.3'
75
+ version: '3.0'
76
76
  type: :development
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
80
  - - "~>"
81
81
  - !ruby/object:Gem::Version
82
- version: '1.3'
82
+ version: '3.0'
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: pry
85
85
  requirement: !ruby/object:Gem::Requirement
@@ -100,42 +100,42 @@ dependencies:
100
100
  requirements:
101
101
  - - "~>"
102
102
  - !ruby/object:Gem::Version
103
- version: '10.5'
103
+ version: '12.3'
104
104
  type: :development
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
108
  - - "~>"
109
109
  - !ruby/object:Gem::Version
110
- version: '10.5'
110
+ version: '12.3'
111
111
  - !ruby/object:Gem::Dependency
112
- name: redcarpet
112
+ name: rdoc
113
113
  requirement: !ruby/object:Gem::Requirement
114
114
  requirements:
115
115
  - - "~>"
116
116
  - !ruby/object:Gem::Version
117
- version: '3.2'
117
+ version: '6.0'
118
118
  type: :development
119
119
  prerelease: false
120
120
  version_requirements: !ruby/object:Gem::Requirement
121
121
  requirements:
122
122
  - - "~>"
123
123
  - !ruby/object:Gem::Version
124
- version: '3.2'
124
+ version: '6.0'
125
125
  - !ruby/object:Gem::Dependency
126
- name: rubocop
126
+ name: redcarpet
127
127
  requirement: !ruby/object:Gem::Requirement
128
128
  requirements:
129
129
  - - "~>"
130
130
  - !ruby/object:Gem::Version
131
- version: 0.40.0
131
+ version: '3.2'
132
132
  type: :development
133
133
  prerelease: false
134
134
  version_requirements: !ruby/object:Gem::Requirement
135
135
  requirements:
136
136
  - - "~>"
137
137
  - !ruby/object:Gem::Version
138
- version: 0.40.0
138
+ version: '3.2'
139
139
  - !ruby/object:Gem::Dependency
140
140
  name: rspec
141
141
  requirement: !ruby/object:Gem::Requirement
@@ -150,20 +150,34 @@ dependencies:
150
150
  - - "~>"
151
151
  - !ruby/object:Gem::Version
152
152
  version: '3.4'
153
+ - !ruby/object:Gem::Dependency
154
+ name: rubocop
155
+ requirement: !ruby/object:Gem::Requirement
156
+ requirements:
157
+ - - "~>"
158
+ - !ruby/object:Gem::Version
159
+ version: 0.60.0
160
+ type: :development
161
+ prerelease: false
162
+ version_requirements: !ruby/object:Gem::Requirement
163
+ requirements:
164
+ - - "~>"
165
+ - !ruby/object:Gem::Version
166
+ version: 0.60.0
153
167
  - !ruby/object:Gem::Dependency
154
168
  name: yard
155
169
  requirement: !ruby/object:Gem::Requirement
156
170
  requirements:
157
171
  - - "~>"
158
172
  - !ruby/object:Gem::Version
159
- version: '0.8'
173
+ version: 0.9.11
160
174
  type: :development
161
175
  prerelease: false
162
176
  version_requirements: !ruby/object:Gem::Requirement
163
177
  requirements:
164
178
  - - "~>"
165
179
  - !ruby/object:Gem::Version
166
- version: '0.8'
180
+ version: 0.9.11
167
181
  description: Sensu plugins for twitter
168
182
  email: "<sensu-users@googlegroups.com>"
169
183
  executables:
@@ -195,15 +209,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
195
209
  requirements:
196
210
  - - ">="
197
211
  - !ruby/object:Gem::Version
198
- version: 2.0.0
212
+ version: 2.3.0
199
213
  required_rubygems_version: !ruby/object:Gem::Requirement
200
214
  requirements:
201
215
  - - ">="
202
216
  - !ruby/object:Gem::Version
203
217
  version: '0'
204
218
  requirements: []
205
- rubyforge_project:
206
- rubygems_version: 2.4.5
219
+ rubygems_version: 3.0.1
207
220
  signing_key:
208
221
  specification_version: 4
209
222
  summary: Sensu plugins for twitter