sensu-plugins-twitter 1.0.0 → 2.0.0

Sign up to get free protection for your applications and to get access to all the features.
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