nagira 0.5.1 → 0.5.2

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.
Files changed (54) hide show
  1. checksums.yaml +4 -4
  2. data/History.md +11 -0
  3. data/Rakefile +1 -1
  4. data/app/app.rb +44 -298
  5. data/app/concerns/host_status_name_concerneable.rb +18 -0
  6. data/app/concerns/output_typeable.rb +22 -0
  7. data/app/controllers/api_help_controller.rb +25 -0
  8. data/app/controllers/host_status_controller.rb +82 -0
  9. data/{lib/nagira/hostgroup.rb → app/controllers/hostgroup_controller.rb} +1 -1
  10. data/app/controllers/resource_status_controler.rb +65 -0
  11. data/app/controllers/service_status_controler.rb +50 -0
  12. data/{lib/nagira/servicegroup.rb → app/controllers/servicegroups_controller.rb} +1 -1
  13. data/app/filters/after.rb +76 -0
  14. data/app/filters/before.rb +156 -0
  15. data/app/filters/configure.rb +34 -0
  16. data/app/helpers/put_helpers.rb +11 -0
  17. data/{lib/nagira → app/loggers}/simple_logger.rb +0 -0
  18. data/{lib/nagira → app/parsers}/background_parse.rb +0 -0
  19. data/{lib/nagira → app/parsers}/parser.rb +1 -9
  20. data/app/routes/get.rb +50 -0
  21. data/app/routes/get/config.rb +11 -0
  22. data/app/{get → routes/get}/objects.rb +4 -24
  23. data/app/routes/get/status.rb +98 -0
  24. data/app/{get → routes/get}/status/hostgroups.rb +3 -14
  25. data/app/routes/get/status/servicegroups.rb +16 -0
  26. data/app/{put → routes/put}/host.rb +1 -4
  27. data/app/{put → routes/put}/status.rb +13 -20
  28. data/app/writers/external_command_writer.rb +52 -0
  29. data/bin/nagira +1 -1
  30. data/config/defaults.rb +20 -12
  31. data/config/environment.rb +2 -1
  32. data/lib/nagira/timed_parse.rb +1 -1
  33. data/spec/01_background_parser.rb +5 -5
  34. data/spec/01_data_format/01_nagira_response_spec.rb +6 -6
  35. data/spec/01_data_format/02_0_status_spec.rb +1 -1
  36. data/spec/01_data_format/02_nagira_data_spec.rb +8 -8
  37. data/spec/01_data_format/03_api_spec.rb +3 -3
  38. data/spec/get/status/comments_spec.rb +2 -2
  39. data/spec/get/status/endpoints_spec.rb +11 -11
  40. data/spec/get/status/hostgroup.rb +3 -3
  41. data/spec/get/status/hosts_spec.rb +1 -1
  42. data/spec/get/status/servicegroup.rb +4 -4
  43. data/spec/get/status/services_spec.rb +1 -1
  44. data/spec/put/host_spec.rb +4 -4
  45. data/spec/put/status_spec.rb +5 -5
  46. data/spec/put/support.rb +3 -3
  47. data/spec/spec_helper.rb +3 -3
  48. data/version.txt +1 -1
  49. metadata +70 -60
  50. data/app/get/config.rb +0 -24
  51. data/app/get/status.rb +0 -189
  52. data/app/get/status/servicegroups.rb +0 -28
  53. data/app/put.rb +0 -53
  54. data/lib/nagira.rb +0 -67
@@ -42,9 +42,9 @@ end
42
42
 
43
43
  shared_examples_for :write_to_nagios_cmd_file do
44
44
  before (:all) do
45
- File.delete ::Nagira::Parser.commands.path rescue nil
45
+ FileUtils.rm_f ::Nagira::Writer.commands.path
46
46
  end
47
- let (:cmd) { ::Nagira::Parser.commands.path }
47
+ let (:cmd) { ::Nagira::Writer.commands.path }
48
48
 
49
49
  it "writes to nagios.cmd file" do
50
50
  expect(File).to exist(cmd)
@@ -52,7 +52,7 @@ shared_examples_for :write_to_nagios_cmd_file do
52
52
  end
53
53
 
54
54
  after (:each) do
55
- File.delete ::Nagira::Parser.commands.path rescue nil
55
+ FileUtils.rm_f ::Nagira::Writer.commands.path
56
56
  end
57
57
  end
58
58
 
@@ -1,5 +1,3 @@
1
- $: << File.dirname(__FILE__) + '/../lib/'
2
- require_relative '../lib/nagira.rb'
3
1
  require_relative '../app/app.rb'
4
2
  require 'rack/test'
5
3
 
@@ -13,7 +11,9 @@ IMPLEMENTED = {
13
11
 
14
12
  RANDOM = %w{ _bla _foo bla foo ahdhjdjda }
15
13
 
16
- set :environment, ENV['RACK_ENV'] || :test
14
+ class Nagira < Sinatra::Base
15
+ set :environment, ENV['RACK_ENV'] || :test
16
+ end
17
17
 
18
18
  def dont_run_in_production(file)
19
19
  if Nagira.settings.environment == :production
@@ -1 +1 @@
1
- 0.5.1
1
+ 0.5.2
metadata CHANGED
@@ -1,285 +1,285 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: nagira
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.1
4
+ version: 0.5.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dmytro Kovalov
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-12-17 00:00:00.000000000 Z
11
+ date: 2016-01-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activemodel
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ~>
17
+ - - "~>"
18
18
  - !ruby/object:Gem::Version
19
19
  version: '3.2'
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
26
  version: '3.2'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: activesupport
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - ~>
31
+ - - "~>"
32
32
  - !ruby/object:Gem::Version
33
33
  version: '3.2'
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
40
  version: '3.2'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: json
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - ~>
45
+ - - "~>"
46
46
  - !ruby/object:Gem::Version
47
47
  version: '1.8'
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - ~>
52
+ - - "~>"
53
53
  - !ruby/object:Gem::Version
54
54
  version: '1.8'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: rspec
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - ~>
59
+ - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: '3.1'
61
+ version: '3.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: '3.1'
68
+ version: '3.4'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: sherlock_os
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
- - - ~>
73
+ - - "~>"
74
74
  - !ruby/object:Gem::Version
75
75
  version: '0.0'
76
76
  type: :runtime
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
- - - ~>
80
+ - - "~>"
81
81
  - !ruby/object:Gem::Version
82
82
  version: '0.0'
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: rspec-core
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
- - - ~>
87
+ - - "~>"
88
88
  - !ruby/object:Gem::Version
89
89
  version: '3.1'
90
90
  type: :runtime
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
- - - ~>
94
+ - - "~>"
95
95
  - !ruby/object:Gem::Version
96
96
  version: '3.1'
97
97
  - !ruby/object:Gem::Dependency
98
98
  name: rspec-expectations
99
99
  requirement: !ruby/object:Gem::Requirement
100
100
  requirements:
101
- - - ~>
101
+ - - "~>"
102
102
  - !ruby/object:Gem::Version
103
103
  version: '3.1'
104
104
  type: :runtime
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
- - - ~>
108
+ - - "~>"
109
109
  - !ruby/object:Gem::Version
110
110
  version: '3.1'
111
111
  - !ruby/object:Gem::Dependency
112
112
  name: rspec-mocks
113
113
  requirement: !ruby/object:Gem::Requirement
114
114
  requirements:
115
- - - ~>
115
+ - - "~>"
116
116
  - !ruby/object:Gem::Version
117
117
  version: '3.1'
118
118
  type: :runtime
119
119
  prerelease: false
120
120
  version_requirements: !ruby/object:Gem::Requirement
121
121
  requirements:
122
- - - ~>
122
+ - - "~>"
123
123
  - !ruby/object:Gem::Version
124
124
  version: '3.1'
125
125
  - !ruby/object:Gem::Dependency
126
126
  name: ruby-nagios
127
127
  requirement: !ruby/object:Gem::Requirement
128
128
  requirements:
129
- - - ~>
129
+ - - "~>"
130
130
  - !ruby/object:Gem::Version
131
131
  version: '0.2'
132
- - - '>='
132
+ - - ">="
133
133
  - !ruby/object:Gem::Version
134
134
  version: 0.2.2
135
135
  type: :runtime
136
136
  prerelease: false
137
137
  version_requirements: !ruby/object:Gem::Requirement
138
138
  requirements:
139
- - - ~>
139
+ - - "~>"
140
140
  - !ruby/object:Gem::Version
141
141
  version: '0.2'
142
- - - '>='
142
+ - - ">="
143
143
  - !ruby/object:Gem::Version
144
144
  version: 0.2.2
145
145
  - !ruby/object:Gem::Dependency
146
146
  name: sinatra
147
147
  requirement: !ruby/object:Gem::Requirement
148
148
  requirements:
149
- - - ~>
149
+ - - "~>"
150
150
  - !ruby/object:Gem::Version
151
151
  version: '1.4'
152
152
  type: :runtime
153
153
  prerelease: false
154
154
  version_requirements: !ruby/object:Gem::Requirement
155
155
  requirements:
156
- - - ~>
156
+ - - "~>"
157
157
  - !ruby/object:Gem::Version
158
158
  version: '1.4'
159
159
  - !ruby/object:Gem::Dependency
160
160
  name: sinatra-contrib
161
161
  requirement: !ruby/object:Gem::Requirement
162
162
  requirements:
163
- - - ~>
163
+ - - "~>"
164
164
  - !ruby/object:Gem::Version
165
165
  version: '1.4'
166
166
  type: :runtime
167
167
  prerelease: false
168
168
  version_requirements: !ruby/object:Gem::Requirement
169
169
  requirements:
170
- - - ~>
170
+ - - "~>"
171
171
  - !ruby/object:Gem::Version
172
172
  version: '1.4'
173
173
  - !ruby/object:Gem::Dependency
174
174
  name: rake
175
175
  requirement: !ruby/object:Gem::Requirement
176
176
  requirements:
177
- - - ~>
177
+ - - "~>"
178
178
  - !ruby/object:Gem::Version
179
179
  version: '10.1'
180
180
  type: :runtime
181
181
  prerelease: false
182
182
  version_requirements: !ruby/object:Gem::Requirement
183
183
  requirements:
184
- - - ~>
184
+ - - "~>"
185
185
  - !ruby/object:Gem::Version
186
186
  version: '10.1'
187
187
  - !ruby/object:Gem::Dependency
188
188
  name: puma
189
189
  requirement: !ruby/object:Gem::Requirement
190
190
  requirements:
191
- - - ~>
191
+ - - "~>"
192
192
  - !ruby/object:Gem::Version
193
193
  version: '2.1'
194
194
  type: :runtime
195
195
  prerelease: false
196
196
  version_requirements: !ruby/object:Gem::Requirement
197
197
  requirements:
198
- - - ~>
198
+ - - "~>"
199
199
  - !ruby/object:Gem::Version
200
200
  version: '2.1'
201
201
  - !ruby/object:Gem::Dependency
202
202
  name: growl
203
203
  requirement: !ruby/object:Gem::Requirement
204
204
  requirements:
205
- - - ~>
205
+ - - "~>"
206
206
  - !ruby/object:Gem::Version
207
207
  version: '1'
208
208
  type: :development
209
209
  prerelease: false
210
210
  version_requirements: !ruby/object:Gem::Requirement
211
211
  requirements:
212
- - - ~>
212
+ - - "~>"
213
213
  - !ruby/object:Gem::Version
214
214
  version: '1'
215
215
  - !ruby/object:Gem::Dependency
216
216
  name: pry
217
217
  requirement: !ruby/object:Gem::Requirement
218
218
  requirements:
219
- - - ~>
219
+ - - "~>"
220
220
  - !ruby/object:Gem::Version
221
221
  version: '0.10'
222
222
  type: :development
223
223
  prerelease: false
224
224
  version_requirements: !ruby/object:Gem::Requirement
225
225
  requirements:
226
- - - ~>
226
+ - - "~>"
227
227
  - !ruby/object:Gem::Version
228
228
  version: '0.10'
229
229
  - !ruby/object:Gem::Dependency
230
230
  name: guard-brakeman
231
231
  requirement: !ruby/object:Gem::Requirement
232
232
  requirements:
233
- - - ~>
233
+ - - "~>"
234
234
  - !ruby/object:Gem::Version
235
235
  version: '0.5'
236
236
  type: :development
237
237
  prerelease: false
238
238
  version_requirements: !ruby/object:Gem::Requirement
239
239
  requirements:
240
- - - ~>
240
+ - - "~>"
241
241
  - !ruby/object:Gem::Version
242
242
  version: '0.5'
243
243
  - !ruby/object:Gem::Dependency
244
244
  name: guard-rspec
245
245
  requirement: !ruby/object:Gem::Requirement
246
246
  requirements:
247
- - - ~>
247
+ - - "~>"
248
248
  - !ruby/object:Gem::Version
249
249
  version: '4'
250
250
  type: :development
251
251
  prerelease: false
252
252
  version_requirements: !ruby/object:Gem::Requirement
253
253
  requirements:
254
- - - ~>
254
+ - - "~>"
255
255
  - !ruby/object:Gem::Version
256
256
  version: '4'
257
257
  - !ruby/object:Gem::Dependency
258
258
  name: yard
259
259
  requirement: !ruby/object:Gem::Requirement
260
260
  requirements:
261
- - - ~>
261
+ - - "~>"
262
262
  - !ruby/object:Gem::Version
263
263
  version: '0.8'
264
264
  type: :development
265
265
  prerelease: false
266
266
  version_requirements: !ruby/object:Gem::Requirement
267
267
  requirements:
268
- - - ~>
268
+ - - "~>"
269
269
  - !ruby/object:Gem::Version
270
270
  version: '0.8'
271
271
  - !ruby/object:Gem::Dependency
272
272
  name: redcarpet
273
273
  requirement: !ruby/object:Gem::Requirement
274
274
  requirements:
275
- - - ~>
275
+ - - "~>"
276
276
  - !ruby/object:Gem::Version
277
277
  version: '3.0'
278
278
  type: :development
279
279
  prerelease: false
280
280
  version_requirements: !ruby/object:Gem::Requirement
281
281
  requirements:
282
- - - ~>
282
+ - - "~>"
283
283
  - !ruby/object:Gem::Version
284
284
  version: '3.0'
285
285
  description: |2+
@@ -301,14 +301,30 @@ files:
301
301
  - History.md
302
302
  - Rakefile
303
303
  - app/app.rb
304
- - app/get/config.rb
305
- - app/get/objects.rb
306
- - app/get/status.rb
307
- - app/get/status/hostgroups.rb
308
- - app/get/status/servicegroups.rb
309
- - app/put.rb
310
- - app/put/host.rb
311
- - app/put/status.rb
304
+ - app/concerns/host_status_name_concerneable.rb
305
+ - app/concerns/output_typeable.rb
306
+ - app/controllers/api_help_controller.rb
307
+ - app/controllers/host_status_controller.rb
308
+ - app/controllers/hostgroup_controller.rb
309
+ - app/controllers/resource_status_controler.rb
310
+ - app/controllers/service_status_controler.rb
311
+ - app/controllers/servicegroups_controller.rb
312
+ - app/filters/after.rb
313
+ - app/filters/before.rb
314
+ - app/filters/configure.rb
315
+ - app/helpers/put_helpers.rb
316
+ - app/loggers/simple_logger.rb
317
+ - app/parsers/background_parse.rb
318
+ - app/parsers/parser.rb
319
+ - app/routes/get.rb
320
+ - app/routes/get/config.rb
321
+ - app/routes/get/objects.rb
322
+ - app/routes/get/status.rb
323
+ - app/routes/get/status/hostgroups.rb
324
+ - app/routes/get/status/servicegroups.rb
325
+ - app/routes/put/host.rb
326
+ - app/routes/put/status.rb
327
+ - app/writers/external_command_writer.rb
312
328
  - bin/nagira
313
329
  - bin/nagira-setup
314
330
  - config/defaults.rb
@@ -316,14 +332,8 @@ files:
316
332
  - config/nagira.defaults
317
333
  - config/nagira.init_d
318
334
  - config/puma.rb
319
- - lib/nagira.rb
320
- - lib/nagira/background_parse.rb
321
- - lib/nagira/hostgroup.rb
322
335
  - lib/nagira/hostservice.rb
323
336
  - lib/nagira/nagios.rb
324
- - lib/nagira/parser.rb
325
- - lib/nagira/servicegroup.rb
326
- - lib/nagira/simple_logger.rb
327
337
  - lib/nagira/timed_parse.rb
328
338
  - lib/tasks/config.rake
329
339
  - lib/tasks/debug.rake
@@ -373,12 +383,12 @@ require_paths:
373
383
  - lib
374
384
  required_ruby_version: !ruby/object:Gem::Requirement
375
385
  requirements:
376
- - - '>='
386
+ - - ">="
377
387
  - !ruby/object:Gem::Version
378
388
  version: 2.0.0
379
389
  required_rubygems_version: !ruby/object:Gem::Requirement
380
390
  requirements:
381
- - - '>='
391
+ - - ">="
382
392
  - !ruby/object:Gem::Version
383
393
  version: '0'
384
394
  requirements: []
@@ -1,24 +0,0 @@
1
- class Nagira < Sinatra::Base
2
-
3
- # Config routes
4
- # ============================================================
5
-
6
- # @!macro [attach] sinatra.get
7
- #
8
- # @overload get "$1"
9
- #
10
- # @return HTTP response. Hash formatted in the format defined by
11
- # requested output type(XML, YAML or JSON).
12
- #
13
- #
14
-
15
- # @method get_config
16
- # @overload get("/_config")
17
- #
18
- # Get Nagios configuration hash form parsing main Nagios
19
- # configuration file nagios.cfg
20
- get "/_config" do
21
- @data = Parser.config.configuration
22
- nil
23
- end
24
- end