nagira 0.5.1 → 0.5.2

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