flapjack 0.5.5 → 0.6.23

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 (167) hide show
  1. data/.gitignore +10 -0
  2. data/.rbenv-version +1 -0
  3. data/.rspec +10 -0
  4. data/Gemfile +18 -0
  5. data/Guardfile +14 -0
  6. data/README.md +152 -173
  7. data/Rakefile +53 -150
  8. data/bin/flapjack +72 -0
  9. data/bin/flapjack-nagios-receiver +111 -0
  10. data/bin/flapjack-nagios-receiver-control +15 -0
  11. data/bin/flapjack-netsaint-parser +0 -2
  12. data/bin/flapjack-populator +133 -16
  13. data/bin/install-flapjack-systemwide +2 -2
  14. data/config.ru +11 -0
  15. data/dist/etc/init.d/flapjack +46 -0
  16. data/dist/etc/init.d/flapjack-nagios-receiver +36 -0
  17. data/doc/GLOSSARY.md +19 -0
  18. data/etc/flapjack_config.yaml.example +90 -0
  19. data/features/events.feature +132 -0
  20. data/features/notifications.feature +57 -0
  21. data/features/packaging-lintian.feature +5 -3
  22. data/features/steps/events_steps.rb +164 -0
  23. data/features/steps/flapjack-importer_steps.rb +2 -5
  24. data/features/steps/flapjack-worker_steps.rb +13 -6
  25. data/features/steps/notifications_steps.rb +178 -0
  26. data/features/steps/packaging-lintian_steps.rb +14 -0
  27. data/features/steps/time_travel_steps.rb +34 -0
  28. data/features/support/env.rb +63 -36
  29. data/flapjack.gemspec +35 -186
  30. data/lib/flapjack.rb +2 -0
  31. data/lib/flapjack/api.rb +274 -0
  32. data/lib/flapjack/api/entity_check_presenter.rb +184 -0
  33. data/lib/flapjack/api/entity_presenter.rb +66 -0
  34. data/lib/flapjack/cli/worker_manager.rb +1 -2
  35. data/lib/flapjack/configuration.rb +11 -0
  36. data/lib/flapjack/coordinator.rb +288 -0
  37. data/lib/flapjack/daemonizing.rb +186 -0
  38. data/lib/flapjack/data/contact.rb +45 -0
  39. data/lib/flapjack/data/entity.rb +89 -0
  40. data/lib/flapjack/data/entity_check.rb +396 -0
  41. data/lib/flapjack/data/event.rb +144 -0
  42. data/lib/flapjack/data/notification.rb +13 -0
  43. data/lib/flapjack/executive.rb +289 -0
  44. data/lib/flapjack/filters/acknowledgement.rb +39 -0
  45. data/lib/flapjack/filters/{any_parents_failed.rb → base.rb} +6 -4
  46. data/lib/flapjack/filters/delays.rb +53 -0
  47. data/lib/flapjack/filters/detect_mass_client_failures.rb +44 -0
  48. data/lib/flapjack/filters/ok.rb +25 -5
  49. data/lib/flapjack/filters/scheduled_maintenance.rb +17 -0
  50. data/lib/flapjack/filters/unscheduled_maintenance.rb +17 -0
  51. data/lib/flapjack/jabber.rb +294 -0
  52. data/lib/flapjack/notification/common.rb +23 -0
  53. data/lib/flapjack/notification/email.rb +107 -0
  54. data/lib/flapjack/notification/email/alert.html.haml +48 -0
  55. data/lib/flapjack/notification/email/alert.text.erb +14 -0
  56. data/lib/flapjack/notification/sms.rb +42 -0
  57. data/lib/flapjack/notification/sms/messagenet.rb +49 -0
  58. data/lib/flapjack/notifier_engine.rb +4 -4
  59. data/lib/flapjack/notifiers/mailer/mailer.rb +6 -7
  60. data/lib/flapjack/notifiers/xmpp/xmpp.rb +12 -12
  61. data/lib/flapjack/pagerduty.rb +230 -0
  62. data/lib/flapjack/patches.rb +108 -19
  63. data/lib/flapjack/persistence/data_mapper/models/check.rb +5 -3
  64. data/lib/flapjack/persistence/data_mapper/models/check_template.rb +2 -0
  65. data/lib/flapjack/persistence/data_mapper/models/event.rb +2 -0
  66. data/lib/flapjack/persistence/data_mapper/models/node.rb +3 -1
  67. data/lib/flapjack/persistence/data_mapper/models/related_check.rb +3 -1
  68. data/lib/flapjack/pikelet.rb +56 -0
  69. data/lib/flapjack/transports/beanstalkd.rb +1 -1
  70. data/lib/flapjack/transports/result.rb +6 -6
  71. data/lib/flapjack/utility.rb +46 -0
  72. data/lib/flapjack/version.rb +5 -0
  73. data/lib/flapjack/web.rb +198 -0
  74. data/lib/flapjack/web/views/acknowledge.haml +55 -0
  75. data/lib/flapjack/web/views/check.haml +162 -0
  76. data/lib/flapjack/web/views/index.haml +92 -0
  77. data/lib/flapjack/web/views/self_stats.haml +56 -0
  78. data/lib/flapjack/{applications/worker.rb → worker/application.rb} +0 -0
  79. data/lib/flapjack/worker/cli.rb +49 -0
  80. data/{spec → spec.old}/check_sandbox/echo +0 -0
  81. data/{spec → spec.old}/check_sandbox/sandboxed_check +0 -0
  82. data/{spec → spec.old}/configs/flapjack-notifier-couchdb.ini +0 -0
  83. data/{spec → spec.old}/configs/flapjack-notifier.ini +0 -0
  84. data/{spec → spec.old}/configs/recipients.ini +0 -0
  85. data/{spec → spec.old}/helpers.rb +0 -0
  86. data/{spec → spec.old}/inifile_spec.rb +0 -0
  87. data/{spec → spec.old}/mock-notifiers/mock/init.rb +0 -0
  88. data/{spec → spec.old}/mock-notifiers/mock/mock.rb +0 -0
  89. data/{spec → spec.old}/notifier-directories/spoons/testmailer/init.rb +0 -0
  90. data/{spec → spec.old}/notifier_application_spec.rb +0 -0
  91. data/{spec → spec.old}/notifier_filters_spec.rb +0 -0
  92. data/{spec → spec.old}/notifier_options_multiplexer_spec.rb +0 -0
  93. data/{spec → spec.old}/notifier_options_spec.rb +0 -0
  94. data/{spec → spec.old}/notifier_spec.rb +0 -0
  95. data/{spec → spec.old}/notifiers/mailer_spec.rb +0 -0
  96. data/{spec → spec.old}/notifiers/xmpp_spec.rb +0 -0
  97. data/{spec → spec.old}/persistence/datamapper_spec.rb +0 -0
  98. data/{spec → spec.old}/persistence/mock_persistence_backend.rb +0 -0
  99. data/{spec → spec.old}/simple.ini +0 -0
  100. data/{spec → spec.old}/spec.opts +0 -0
  101. data/{spec → spec.old}/test-filters/blocker.rb +0 -0
  102. data/{spec → spec.old}/test-filters/mock.rb +0 -0
  103. data/{spec → spec.old}/transports/beanstalkd_spec.rb +0 -0
  104. data/{spec → spec.old}/transports/mock_transport.rb +0 -0
  105. data/{spec → spec.old}/worker_application_spec.rb +0 -0
  106. data/{spec → spec.old}/worker_options_spec.rb +0 -0
  107. data/spec/lib/flapjack/api/entity_check_presenter_spec.rb +117 -0
  108. data/spec/lib/flapjack/api/entity_presenter_spec.rb +92 -0
  109. data/spec/lib/flapjack/api_spec.rb +170 -0
  110. data/spec/lib/flapjack/coordinator_spec.rb +16 -0
  111. data/spec/lib/flapjack/data/entity_check_spec.rb +398 -0
  112. data/spec/lib/flapjack/data/entity_spec.rb +71 -0
  113. data/spec/lib/flapjack/data/event_spec.rb +6 -0
  114. data/spec/lib/flapjack/executive_spec.rb +59 -0
  115. data/spec/lib/flapjack/filters/acknowledgement_spec.rb +6 -0
  116. data/spec/lib/flapjack/filters/delays_spec.rb +6 -0
  117. data/spec/lib/flapjack/filters/detect_mass_client_failures_spec.rb +6 -0
  118. data/spec/lib/flapjack/filters/ok_spec.rb +6 -0
  119. data/spec/lib/flapjack/filters/scheduled_maintenance_spec.rb +6 -0
  120. data/spec/lib/flapjack/filters/unscheduled_maintenance_spec.rb +6 -0
  121. data/spec/lib/flapjack/jabber_spec.rb +150 -0
  122. data/spec/lib/flapjack/notification/email_spec.rb +6 -0
  123. data/spec/lib/flapjack/notification/sms_spec.rb +6 -0
  124. data/spec/lib/flapjack/pikelet_spec.rb +28 -0
  125. data/spec/lib/flapjack/web_spec.rb +188 -0
  126. data/spec/spec_helper.rb +44 -0
  127. data/spec/support/profile_all_formatter.rb +44 -0
  128. data/spec/support/uncolored_doc_formatter.rb +9 -0
  129. data/tasks/events.rake +85 -0
  130. data/tmp/acknowledge.rb +14 -0
  131. data/tmp/create_config_yaml.rb +16 -0
  132. data/tmp/create_events_failure.rb +33 -0
  133. data/tmp/create_events_ok.rb +33 -0
  134. data/tmp/create_events_ok_fail_ack_ok.rb +54 -0
  135. data/tmp/create_events_ok_failure.rb +40 -0
  136. data/tmp/create_events_ok_failure_ack.rb +54 -0
  137. data/tmp/dummy_entities.json +1 -0
  138. data/tmp/generate_nagios_test_hosts.rb +16 -0
  139. data/tmp/parse_config_yaml.rb +7 -0
  140. data/tmp/redis_delete_all_keys.rb +11 -0
  141. data/tmp/test_entities.json +1 -0
  142. metadata +482 -221
  143. data/TODO.md +0 -36
  144. data/VERSION +0 -1
  145. data/bin/flapjack-benchmark +0 -50
  146. data/bin/flapjack-notifier +0 -21
  147. data/bin/flapjack-notifier-manager +0 -43
  148. data/bin/flapjack-stats +0 -27
  149. data/bin/flapjack-worker +0 -13
  150. data/bin/flapjack-worker-manager +0 -35
  151. data/dist/etc/init.d/flapjack-notifier +0 -47
  152. data/dist/etc/init.d/flapjack-workers +0 -44
  153. data/features/flapjack-notifier-manager.feature +0 -19
  154. data/features/flapjack-worker-manager.feature +0 -27
  155. data/features/flapjack-worker.feature +0 -27
  156. data/features/netsaint-config-converter.feature +0 -126
  157. data/features/persistence/couch.feature +0 -105
  158. data/features/persistence/sqlite3.feature +0 -105
  159. data/features/persistence/steps/couch_steps.rb +0 -25
  160. data/features/persistence/steps/generic_steps.rb +0 -102
  161. data/features/persistence/steps/sqlite3_steps.rb +0 -13
  162. data/features/steps/flapjack-notifier-manager_steps.rb +0 -24
  163. data/features/steps/flapjack-worker-manager_steps.rb +0 -48
  164. data/lib/flapjack/applications/notifier.rb +0 -222
  165. data/lib/flapjack/cli/notifier.rb +0 -108
  166. data/lib/flapjack/cli/notifier_manager.rb +0 -86
  167. data/lib/flapjack/cli/worker.rb +0 -51
@@ -0,0 +1,16 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ out = ""
4
+ (1..1).to_a.each { |clientid|
5
+ (1..10).to_a.each { |id|
6
+ out += "define host {\n"
7
+ out += " use linux-server\n"
8
+ out += " host_name client#{clientid}-localhost-test-#{id}\n"
9
+ out += " alias client#{clientid}-localhost-test-#{id}\n"
10
+ out += " address 127.0.0.1\n"
11
+ out += " hostgroups fakes\n"
12
+ out += "}\n\n"
13
+ }
14
+ }
15
+
16
+ puts out
@@ -0,0 +1,7 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require 'yaml'
4
+
5
+ config = YAML.load(ARGF)
6
+ puts config.inspect
7
+
@@ -0,0 +1,11 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ $: << File.dirname(__FILE__) + '/../lib' unless $:.include?(File.dirname(__FILE__) + '/../lib/')
4
+
5
+ require 'redis'
6
+
7
+ @persistence = Redis.new(:db => 13)
8
+ keys = @persistence.keys '*'
9
+ keys.each {|key|
10
+ @persistence.del(key)
11
+ }
@@ -0,0 +1 @@
1
+ [{"id":"10001","name":"client1-localhost-test-1","contacts":["0362","0363","0364"]},{"id":"10002","name":"client1-localhost-test-2","contacts":["0362"]},{"id":"10003","name":"client1-localhost-test-3","contacts":["0363","0364"]}]
metadata CHANGED
@@ -1,173 +1,370 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: flapjack
3
- version: !ruby/object:Gem::Version
4
- hash: 1
5
- prerelease: false
6
- segments:
7
- - 0
8
- - 5
9
- - 5
10
- version: 0.5.5
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.6.23
5
+ prerelease:
11
6
  platform: ruby
12
- authors:
7
+ authors:
13
8
  - Lindsay Holmwood
14
9
  autorequire:
15
10
  bindir: bin
16
11
  cert_chain: []
17
-
18
- date: 2011-01-18 00:00:00 +11:00
19
- default_executable:
20
- dependencies:
21
- - !ruby/object:Gem::Dependency
12
+ date: 2012-09-20 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
22
15
  name: daemons
16
+ requirement: !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
21
+ version: '0'
22
+ type: :runtime
23
+ prerelease: false
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ! '>='
28
+ - !ruby/object:Gem::Version
29
+ version: '0'
30
+ - !ruby/object:Gem::Dependency
31
+ name: log4r
32
+ requirement: !ruby/object:Gem::Requirement
33
+ none: false
34
+ requirements:
35
+ - - ! '>='
36
+ - !ruby/object:Gem::Version
37
+ version: '0'
38
+ type: :runtime
39
+ prerelease: false
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ! '>='
44
+ - !ruby/object:Gem::Version
45
+ version: '0'
46
+ - !ruby/object:Gem::Dependency
47
+ name: yajl-ruby
48
+ requirement: !ruby/object:Gem::Requirement
49
+ none: false
50
+ requirements:
51
+ - - ! '>='
52
+ - !ruby/object:Gem::Version
53
+ version: '0'
54
+ type: :runtime
55
+ prerelease: false
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ! '>='
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ - !ruby/object:Gem::Dependency
63
+ name: eventmachine
64
+ requirement: !ruby/object:Gem::Requirement
65
+ none: false
66
+ requirements:
67
+ - - ~>
68
+ - !ruby/object:Gem::Version
69
+ version: 1.0.0
70
+ type: :runtime
23
71
  prerelease: false
24
- requirement: &id001 !ruby/object:Gem::Requirement
25
- none: false
26
- requirements:
27
- - - "="
28
- - !ruby/object:Gem::Version
29
- hash: 3
30
- segments:
31
- - 1
32
- - 0
33
- - 10
34
- version: 1.0.10
72
+ version_requirements: !ruby/object:Gem::Requirement
73
+ none: false
74
+ requirements:
75
+ - - ~>
76
+ - !ruby/object:Gem::Version
77
+ version: 1.0.0
78
+ - !ruby/object:Gem::Dependency
79
+ name: hiredis
80
+ requirement: !ruby/object:Gem::Requirement
81
+ none: false
82
+ requirements:
83
+ - - ! '>='
84
+ - !ruby/object:Gem::Version
85
+ version: '0'
35
86
  type: :runtime
36
- version_requirements: *id001
37
- - !ruby/object:Gem::Dependency
38
- name: beanstalk-client
39
87
  prerelease: false
40
- requirement: &id002 !ruby/object:Gem::Requirement
41
- none: false
42
- requirements:
43
- - - "="
44
- - !ruby/object:Gem::Version
45
- hash: 19
46
- segments:
47
- - 1
48
- - 0
49
- - 2
88
+ version_requirements: !ruby/object:Gem::Requirement
89
+ none: false
90
+ requirements:
91
+ - - ! '>='
92
+ - !ruby/object:Gem::Version
93
+ version: '0'
94
+ - !ruby/object:Gem::Dependency
95
+ name: em-synchrony
96
+ requirement: !ruby/object:Gem::Requirement
97
+ none: false
98
+ requirements:
99
+ - - ~>
100
+ - !ruby/object:Gem::Version
50
101
  version: 1.0.2
51
102
  type: :runtime
52
- version_requirements: *id002
53
- - !ruby/object:Gem::Dependency
54
- name: log4r
55
103
  prerelease: false
56
- requirement: &id003 !ruby/object:Gem::Requirement
57
- none: false
58
- requirements:
59
- - - "="
60
- - !ruby/object:Gem::Version
61
- hash: 25
62
- segments:
63
- - 1
64
- - 1
65
- - 5
66
- version: 1.1.5
104
+ version_requirements: !ruby/object:Gem::Requirement
105
+ none: false
106
+ requirements:
107
+ - - ~>
108
+ - !ruby/object:Gem::Version
109
+ version: 1.0.2
110
+ - !ruby/object:Gem::Dependency
111
+ name: em-http-request
112
+ requirement: !ruby/object:Gem::Requirement
113
+ none: false
114
+ requirements:
115
+ - - ! '>='
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
67
118
  type: :runtime
68
- version_requirements: *id003
69
- - !ruby/object:Gem::Dependency
70
- name: xmpp4r
71
119
  prerelease: false
72
- requirement: &id004 !ruby/object:Gem::Requirement
73
- none: false
74
- requirements:
75
- - - "="
76
- - !ruby/object:Gem::Version
77
- hash: 1
78
- segments:
79
- - 0
80
- - 5
81
- version: "0.5"
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ none: false
122
+ requirements:
123
+ - - ! '>='
124
+ - !ruby/object:Gem::Version
125
+ version: '0'
126
+ - !ruby/object:Gem::Dependency
127
+ name: redis
128
+ requirement: !ruby/object:Gem::Requirement
129
+ none: false
130
+ requirements:
131
+ - - ! '>='
132
+ - !ruby/object:Gem::Version
133
+ version: '0'
82
134
  type: :runtime
83
- version_requirements: *id004
84
- - !ruby/object:Gem::Dependency
85
- name: tmail
86
135
  prerelease: false
87
- requirement: &id005 !ruby/object:Gem::Requirement
88
- none: false
89
- requirements:
90
- - - "="
91
- - !ruby/object:Gem::Version
92
- hash: 65
93
- segments:
94
- - 1
95
- - 2
96
- - 3
97
- - 1
98
- version: 1.2.3.1
136
+ version_requirements: !ruby/object:Gem::Requirement
137
+ none: false
138
+ requirements:
139
+ - - ! '>='
140
+ - !ruby/object:Gem::Version
141
+ version: '0'
142
+ - !ruby/object:Gem::Dependency
143
+ name: em-resque
144
+ requirement: !ruby/object:Gem::Requirement
145
+ none: false
146
+ requirements:
147
+ - - ! '>='
148
+ - !ruby/object:Gem::Version
149
+ version: '0'
150
+ type: :runtime
151
+ prerelease: false
152
+ version_requirements: !ruby/object:Gem::Requirement
153
+ none: false
154
+ requirements:
155
+ - - ! '>='
156
+ - !ruby/object:Gem::Version
157
+ version: '0'
158
+ - !ruby/object:Gem::Dependency
159
+ name: sinatra
160
+ requirement: !ruby/object:Gem::Requirement
161
+ none: false
162
+ requirements:
163
+ - - ! '>='
164
+ - !ruby/object:Gem::Version
165
+ version: '0'
166
+ type: :runtime
167
+ prerelease: false
168
+ version_requirements: !ruby/object:Gem::Requirement
169
+ none: false
170
+ requirements:
171
+ - - ! '>='
172
+ - !ruby/object:Gem::Version
173
+ version: '0'
174
+ - !ruby/object:Gem::Dependency
175
+ name: rack-fiber_pool
176
+ requirement: !ruby/object:Gem::Requirement
177
+ none: false
178
+ requirements:
179
+ - - ! '>='
180
+ - !ruby/object:Gem::Version
181
+ version: '0'
182
+ type: :runtime
183
+ prerelease: false
184
+ version_requirements: !ruby/object:Gem::Requirement
185
+ none: false
186
+ requirements:
187
+ - - ! '>='
188
+ - !ruby/object:Gem::Version
189
+ version: '0'
190
+ - !ruby/object:Gem::Dependency
191
+ name: haml
192
+ requirement: !ruby/object:Gem::Requirement
193
+ none: false
194
+ requirements:
195
+ - - ! '>='
196
+ - !ruby/object:Gem::Version
197
+ version: '0'
198
+ type: :runtime
199
+ prerelease: false
200
+ version_requirements: !ruby/object:Gem::Requirement
201
+ none: false
202
+ requirements:
203
+ - - ! '>='
204
+ - !ruby/object:Gem::Version
205
+ version: '0'
206
+ - !ruby/object:Gem::Dependency
207
+ name: thin
208
+ requirement: !ruby/object:Gem::Requirement
209
+ none: false
210
+ requirements:
211
+ - - ! '>='
212
+ - !ruby/object:Gem::Version
213
+ version: '0'
214
+ type: :runtime
215
+ prerelease: false
216
+ version_requirements: !ruby/object:Gem::Requirement
217
+ none: false
218
+ requirements:
219
+ - - ! '>='
220
+ - !ruby/object:Gem::Version
221
+ version: '0'
222
+ - !ruby/object:Gem::Dependency
223
+ name: mail
224
+ requirement: !ruby/object:Gem::Requirement
225
+ none: false
226
+ requirements:
227
+ - - ! '>='
228
+ - !ruby/object:Gem::Version
229
+ version: '0'
230
+ type: :runtime
231
+ prerelease: false
232
+ version_requirements: !ruby/object:Gem::Requirement
233
+ none: false
234
+ requirements:
235
+ - - ! '>='
236
+ - !ruby/object:Gem::Version
237
+ version: '0'
238
+ - !ruby/object:Gem::Dependency
239
+ name: blather
240
+ requirement: !ruby/object:Gem::Requirement
241
+ none: false
242
+ requirements:
243
+ - - ! '>='
244
+ - !ruby/object:Gem::Version
245
+ version: '0'
99
246
  type: :runtime
100
- version_requirements: *id005
101
- - !ruby/object:Gem::Dependency
102
- name: yajl-ruby
103
247
  prerelease: false
104
- requirement: &id006 !ruby/object:Gem::Requirement
105
- none: false
106
- requirements:
107
- - - "="
108
- - !ruby/object:Gem::Version
109
- hash: 15
110
- segments:
111
- - 0
112
- - 6
113
- - 4
114
- version: 0.6.4
248
+ version_requirements: !ruby/object:Gem::Requirement
249
+ none: false
250
+ requirements:
251
+ - - ! '>='
252
+ - !ruby/object:Gem::Version
253
+ version: '0'
254
+ - !ruby/object:Gem::Dependency
255
+ name: chronic
256
+ requirement: !ruby/object:Gem::Requirement
257
+ none: false
258
+ requirements:
259
+ - - ! '>='
260
+ - !ruby/object:Gem::Version
261
+ version: '0'
115
262
  type: :runtime
116
- version_requirements: *id006
117
- - !ruby/object:Gem::Dependency
118
- name: sqlite3-ruby
119
263
  prerelease: false
120
- requirement: &id007 !ruby/object:Gem::Requirement
121
- none: false
122
- requirements:
123
- - - "="
124
- - !ruby/object:Gem::Version
125
- hash: 21
126
- segments:
127
- - 1
128
- - 2
129
- - 5
130
- version: 1.2.5
264
+ version_requirements: !ruby/object:Gem::Requirement
265
+ none: false
266
+ requirements:
267
+ - - ! '>='
268
+ - !ruby/object:Gem::Version
269
+ version: '0'
270
+ - !ruby/object:Gem::Dependency
271
+ name: chronic_duration
272
+ requirement: !ruby/object:Gem::Requirement
273
+ none: false
274
+ requirements:
275
+ - - ! '>='
276
+ - !ruby/object:Gem::Version
277
+ version: '0'
131
278
  type: :runtime
132
- version_requirements: *id007
133
- description: lapjack is highly scalable and distributed monitoring system. It understands the Nagios plugin format, and can easily be scaled from 1 server to 1000.
279
+ prerelease: false
280
+ version_requirements: !ruby/object:Gem::Requirement
281
+ none: false
282
+ requirements:
283
+ - - ! '>='
284
+ - !ruby/object:Gem::Version
285
+ version: '0'
286
+ - !ruby/object:Gem::Dependency
287
+ name: httparty
288
+ requirement: !ruby/object:Gem::Requirement
289
+ none: false
290
+ requirements:
291
+ - - ! '>='
292
+ - !ruby/object:Gem::Version
293
+ version: '0'
294
+ type: :runtime
295
+ prerelease: false
296
+ version_requirements: !ruby/object:Gem::Requirement
297
+ none: false
298
+ requirements:
299
+ - - ! '>='
300
+ - !ruby/object:Gem::Version
301
+ version: '0'
302
+ - !ruby/object:Gem::Dependency
303
+ name: rake
304
+ requirement: !ruby/object:Gem::Requirement
305
+ none: false
306
+ requirements:
307
+ - - ! '>='
308
+ - !ruby/object:Gem::Version
309
+ version: '0'
310
+ type: :development
311
+ prerelease: false
312
+ version_requirements: !ruby/object:Gem::Requirement
313
+ none: false
314
+ requirements:
315
+ - - ! '>='
316
+ - !ruby/object:Gem::Version
317
+ version: '0'
318
+ - !ruby/object:Gem::Dependency
319
+ name: colorize
320
+ requirement: !ruby/object:Gem::Requirement
321
+ none: false
322
+ requirements:
323
+ - - ! '>='
324
+ - !ruby/object:Gem::Version
325
+ version: '0'
326
+ type: :development
327
+ prerelease: false
328
+ version_requirements: !ruby/object:Gem::Requirement
329
+ none: false
330
+ requirements:
331
+ - - ! '>='
332
+ - !ruby/object:Gem::Version
333
+ version: '0'
334
+ description: Flapjack is highly scalable and distributed monitoring system. It understands
335
+ the Nagios plugin format, and can easily be scaled from 1 server to 1000.
134
336
  email: lindsay@holmwood.id.au
135
- executables:
136
- - flapjack-benchmark
337
+ executables:
338
+ - flapjack
339
+ - flapjack-nagios-receiver
340
+ - flapjack-nagios-receiver-control
137
341
  - flapjack-netsaint-parser
138
- - flapjack-notifier
139
- - flapjack-notifier-manager
140
342
  - flapjack-populator
141
- - flapjack-stats
142
- - flapjack-worker
143
- - flapjack-worker-manager
144
343
  - install-flapjack-systemwide
145
344
  extensions: []
146
-
147
- extra_rdoc_files:
148
- - README.md
149
- files:
345
+ extra_rdoc_files: []
346
+ files:
150
347
  - .gitignore
348
+ - .rbenv-version
349
+ - .rspec
350
+ - Gemfile
351
+ - Guardfile
151
352
  - LICENCE
152
353
  - README.md
153
354
  - Rakefile
154
- - TODO.md
155
- - VERSION
156
- - bin/flapjack-benchmark
355
+ - bin/flapjack
356
+ - bin/flapjack-nagios-receiver
357
+ - bin/flapjack-nagios-receiver-control
157
358
  - bin/flapjack-netsaint-parser
158
- - bin/flapjack-notifier
159
- - bin/flapjack-notifier-manager
160
359
  - bin/flapjack-populator
161
- - bin/flapjack-stats
162
- - bin/flapjack-worker
163
- - bin/flapjack-worker-manager
164
360
  - bin/install-flapjack-systemwide
361
+ - config.ru
165
362
  - dist/etc/default/flapjack-notifier
166
363
  - dist/etc/default/flapjack-workers
167
364
  - dist/etc/flapjack/flapjack-notifier.conf.example
168
365
  - dist/etc/flapjack/recipients.conf.example
169
- - dist/etc/init.d/flapjack-notifier
170
- - dist/etc/init.d/flapjack-workers
366
+ - dist/etc/init.d/flapjack
367
+ - dist/etc/init.d/flapjack-nagios-receiver
171
368
  - dist/puppet/flapjack/files/.stub
172
369
  - dist/puppet/flapjack/manifests/common.pp
173
370
  - dist/puppet/flapjack/manifests/notifier.pp
@@ -178,45 +375,60 @@ files:
178
375
  - dist/puppet/sqlite3/manifests/dev.pp
179
376
  - doc/CONFIGURING.md
180
377
  - doc/DEVELOPING.md
378
+ - doc/GLOSSARY.md
181
379
  - doc/INSTALL.md
182
380
  - doc/PACKAGING.md
183
- - features/flapjack-notifier-manager.feature
184
- - features/flapjack-worker-manager.feature
185
- - features/flapjack-worker.feature
186
- - features/netsaint-config-converter.feature
381
+ - etc/flapjack_config.yaml.example
382
+ - features/events.feature
383
+ - features/notifications.feature
187
384
  - features/packaging-lintian.feature
188
- - features/persistence/couch.feature
189
- - features/persistence/sqlite3.feature
190
- - features/persistence/steps/couch_steps.rb
191
- - features/persistence/steps/generic_steps.rb
192
- - features/persistence/steps/sqlite3_steps.rb
385
+ - features/steps/events_steps.rb
193
386
  - features/steps/flapjack-importer_steps.rb
194
387
  - features/steps/flapjack-netsaint-parser_steps.rb
195
- - features/steps/flapjack-notifier-manager_steps.rb
196
- - features/steps/flapjack-worker-manager_steps.rb
197
388
  - features/steps/flapjack-worker_steps.rb
389
+ - features/steps/notifications_steps.rb
198
390
  - features/steps/packaging-lintian_steps.rb
391
+ - features/steps/time_travel_steps.rb
199
392
  - features/support/env.rb
200
393
  - features/support/silent_system.rb
201
- - features/support/tmp/.stub
202
394
  - flapjack.gemspec
203
395
  - lib/flapjack.rb
204
- - lib/flapjack/applications/notifier.rb
205
- - lib/flapjack/applications/worker.rb
396
+ - lib/flapjack/api.rb
397
+ - lib/flapjack/api/entity_check_presenter.rb
398
+ - lib/flapjack/api/entity_presenter.rb
206
399
  - lib/flapjack/checks/http_content
207
400
  - lib/flapjack/checks/ping
208
- - lib/flapjack/cli/notifier.rb
209
- - lib/flapjack/cli/notifier_manager.rb
210
- - lib/flapjack/cli/worker.rb
211
401
  - lib/flapjack/cli/worker_manager.rb
212
- - lib/flapjack/filters/any_parents_failed.rb
402
+ - lib/flapjack/configuration.rb
403
+ - lib/flapjack/coordinator.rb
404
+ - lib/flapjack/daemonizing.rb
405
+ - lib/flapjack/data/contact.rb
406
+ - lib/flapjack/data/entity.rb
407
+ - lib/flapjack/data/entity_check.rb
408
+ - lib/flapjack/data/event.rb
409
+ - lib/flapjack/data/notification.rb
410
+ - lib/flapjack/executive.rb
411
+ - lib/flapjack/filters/acknowledgement.rb
412
+ - lib/flapjack/filters/base.rb
413
+ - lib/flapjack/filters/delays.rb
414
+ - lib/flapjack/filters/detect_mass_client_failures.rb
213
415
  - lib/flapjack/filters/ok.rb
416
+ - lib/flapjack/filters/scheduled_maintenance.rb
417
+ - lib/flapjack/filters/unscheduled_maintenance.rb
214
418
  - lib/flapjack/inifile.rb
419
+ - lib/flapjack/jabber.rb
420
+ - lib/flapjack/notification/common.rb
421
+ - lib/flapjack/notification/email.rb
422
+ - lib/flapjack/notification/email/alert.html.haml
423
+ - lib/flapjack/notification/email/alert.text.erb
424
+ - lib/flapjack/notification/sms.rb
425
+ - lib/flapjack/notification/sms/messagenet.rb
215
426
  - lib/flapjack/notifier_engine.rb
216
427
  - lib/flapjack/notifiers/mailer/init.rb
217
428
  - lib/flapjack/notifiers/mailer/mailer.rb
218
429
  - lib/flapjack/notifiers/xmpp/init.rb
219
430
  - lib/flapjack/notifiers/xmpp/xmpp.rb
431
+ - lib/flapjack/pagerduty.rb
220
432
  - lib/flapjack/patches.rb
221
433
  - lib/flapjack/persistence/couch.rb
222
434
  - lib/flapjack/persistence/couch/connection.rb
@@ -230,87 +442,136 @@ files:
230
442
  - lib/flapjack/persistence/data_mapper/models/related_check.rb
231
443
  - lib/flapjack/persistence/sqlite3.rb
232
444
  - lib/flapjack/persistence/sqlite3/sqlite3.rb
445
+ - lib/flapjack/pikelet.rb
233
446
  - lib/flapjack/transports/beanstalkd.rb
234
447
  - lib/flapjack/transports/result.rb
235
- - spec/check_sandbox/echo
236
- - spec/check_sandbox/sandboxed_check
237
- - spec/configs/flapjack-notifier-couchdb.ini
238
- - spec/configs/flapjack-notifier.ini
239
- - spec/configs/recipients.ini
240
- - spec/helpers.rb
241
- - spec/inifile_spec.rb
242
- - spec/mock-notifiers/mock/init.rb
243
- - spec/mock-notifiers/mock/mock.rb
244
- - spec/notifier-directories/spoons/testmailer/init.rb
245
- - spec/notifier_application_spec.rb
246
- - spec/notifier_filters_spec.rb
247
- - spec/notifier_options_multiplexer_spec.rb
248
- - spec/notifier_options_spec.rb
249
- - spec/notifier_spec.rb
250
- - spec/notifiers/mailer_spec.rb
251
- - spec/notifiers/xmpp_spec.rb
252
- - spec/persistence/datamapper_spec.rb
253
- - spec/persistence/mock_persistence_backend.rb
254
- - spec/simple.ini
255
- - spec/spec.opts
256
- - spec/test-filters/blocker.rb
257
- - spec/test-filters/mock.rb
258
- - spec/transports/beanstalkd_spec.rb
259
- - spec/transports/mock_transport.rb
260
- - spec/worker_application_spec.rb
261
- - spec/worker_options_spec.rb
262
- has_rdoc: true
448
+ - lib/flapjack/utility.rb
449
+ - lib/flapjack/version.rb
450
+ - lib/flapjack/web.rb
451
+ - lib/flapjack/web/views/acknowledge.haml
452
+ - lib/flapjack/web/views/check.haml
453
+ - lib/flapjack/web/views/index.haml
454
+ - lib/flapjack/web/views/self_stats.haml
455
+ - lib/flapjack/worker/application.rb
456
+ - lib/flapjack/worker/cli.rb
457
+ - spec.old/check_sandbox/echo
458
+ - spec.old/check_sandbox/sandboxed_check
459
+ - spec.old/configs/flapjack-notifier-couchdb.ini
460
+ - spec.old/configs/flapjack-notifier.ini
461
+ - spec.old/configs/recipients.ini
462
+ - spec.old/helpers.rb
463
+ - spec.old/inifile_spec.rb
464
+ - spec.old/mock-notifiers/mock/init.rb
465
+ - spec.old/mock-notifiers/mock/mock.rb
466
+ - spec.old/notifier-directories/spoons/testmailer/init.rb
467
+ - spec.old/notifier_application_spec.rb
468
+ - spec.old/notifier_filters_spec.rb
469
+ - spec.old/notifier_options_multiplexer_spec.rb
470
+ - spec.old/notifier_options_spec.rb
471
+ - spec.old/notifier_spec.rb
472
+ - spec.old/notifiers/mailer_spec.rb
473
+ - spec.old/notifiers/xmpp_spec.rb
474
+ - spec.old/persistence/datamapper_spec.rb
475
+ - spec.old/persistence/mock_persistence_backend.rb
476
+ - spec.old/simple.ini
477
+ - spec.old/spec.opts
478
+ - spec.old/test-filters/blocker.rb
479
+ - spec.old/test-filters/mock.rb
480
+ - spec.old/transports/beanstalkd_spec.rb
481
+ - spec.old/transports/mock_transport.rb
482
+ - spec.old/worker_application_spec.rb
483
+ - spec.old/worker_options_spec.rb
484
+ - spec/lib/flapjack/api/entity_check_presenter_spec.rb
485
+ - spec/lib/flapjack/api/entity_presenter_spec.rb
486
+ - spec/lib/flapjack/api_spec.rb
487
+ - spec/lib/flapjack/coordinator_spec.rb
488
+ - spec/lib/flapjack/data/entity_check_spec.rb
489
+ - spec/lib/flapjack/data/entity_spec.rb
490
+ - spec/lib/flapjack/data/event_spec.rb
491
+ - spec/lib/flapjack/executive_spec.rb
492
+ - spec/lib/flapjack/filters/acknowledgement_spec.rb
493
+ - spec/lib/flapjack/filters/delays_spec.rb
494
+ - spec/lib/flapjack/filters/detect_mass_client_failures_spec.rb
495
+ - spec/lib/flapjack/filters/ok_spec.rb
496
+ - spec/lib/flapjack/filters/scheduled_maintenance_spec.rb
497
+ - spec/lib/flapjack/filters/unscheduled_maintenance_spec.rb
498
+ - spec/lib/flapjack/jabber_spec.rb
499
+ - spec/lib/flapjack/notification/email_spec.rb
500
+ - spec/lib/flapjack/notification/sms_spec.rb
501
+ - spec/lib/flapjack/pikelet_spec.rb
502
+ - spec/lib/flapjack/web_spec.rb
503
+ - spec/spec_helper.rb
504
+ - spec/support/profile_all_formatter.rb
505
+ - spec/support/uncolored_doc_formatter.rb
506
+ - tasks/events.rake
507
+ - tmp/acknowledge.rb
508
+ - tmp/create_config_yaml.rb
509
+ - tmp/create_events_failure.rb
510
+ - tmp/create_events_ok.rb
511
+ - tmp/create_events_ok_fail_ack_ok.rb
512
+ - tmp/create_events_ok_failure.rb
513
+ - tmp/create_events_ok_failure_ack.rb
514
+ - tmp/dummy_entities.json
515
+ - tmp/generate_nagios_test_hosts.rb
516
+ - tmp/parse_config_yaml.rb
517
+ - tmp/redis_delete_all_keys.rb
518
+ - tmp/test_entities.json
263
519
  homepage: http://flapjack-project.com/
264
520
  licenses: []
265
-
266
521
  post_install_message:
267
- rdoc_options:
268
- - --charset=UTF-8
269
- require_paths:
522
+ rdoc_options: []
523
+ require_paths:
270
524
  - lib
271
- required_ruby_version: !ruby/object:Gem::Requirement
525
+ required_ruby_version: !ruby/object:Gem::Requirement
272
526
  none: false
273
- requirements:
274
- - - ">="
275
- - !ruby/object:Gem::Version
276
- hash: 3
277
- segments:
278
- - 0
279
- version: "0"
280
- required_rubygems_version: !ruby/object:Gem::Requirement
527
+ requirements:
528
+ - - ! '>='
529
+ - !ruby/object:Gem::Version
530
+ version: '0'
531
+ required_rubygems_version: !ruby/object:Gem::Requirement
281
532
  none: false
282
- requirements:
283
- - - ">="
284
- - !ruby/object:Gem::Version
285
- hash: 3
286
- segments:
287
- - 0
288
- version: "0"
533
+ requirements:
534
+ - - ! '>='
535
+ - !ruby/object:Gem::Version
536
+ version: '0'
289
537
  requirements: []
290
-
291
538
  rubyforge_project:
292
- rubygems_version: 1.3.7
539
+ rubygems_version: 1.8.23
293
540
  signing_key:
294
541
  specification_version: 3
295
542
  summary: a scalable and distributed monitoring system
296
- test_files:
297
- - spec/helpers.rb
298
- - spec/inifile_spec.rb
299
- - spec/mock-notifiers/mock/init.rb
300
- - spec/mock-notifiers/mock/mock.rb
301
- - spec/notifier-directories/spoons/testmailer/init.rb
302
- - spec/notifier_application_spec.rb
303
- - spec/notifier_filters_spec.rb
304
- - spec/notifier_options_multiplexer_spec.rb
305
- - spec/notifier_options_spec.rb
306
- - spec/notifier_spec.rb
307
- - spec/notifiers/mailer_spec.rb
308
- - spec/notifiers/xmpp_spec.rb
309
- - spec/persistence/datamapper_spec.rb
310
- - spec/persistence/mock_persistence_backend.rb
311
- - spec/test-filters/blocker.rb
312
- - spec/test-filters/mock.rb
313
- - spec/transports/beanstalkd_spec.rb
314
- - spec/transports/mock_transport.rb
315
- - spec/worker_application_spec.rb
316
- - spec/worker_options_spec.rb
543
+ test_files:
544
+ - features/events.feature
545
+ - features/notifications.feature
546
+ - features/packaging-lintian.feature
547
+ - features/steps/events_steps.rb
548
+ - features/steps/flapjack-importer_steps.rb
549
+ - features/steps/flapjack-netsaint-parser_steps.rb
550
+ - features/steps/flapjack-worker_steps.rb
551
+ - features/steps/notifications_steps.rb
552
+ - features/steps/packaging-lintian_steps.rb
553
+ - features/steps/time_travel_steps.rb
554
+ - features/support/env.rb
555
+ - features/support/silent_system.rb
556
+ - spec/lib/flapjack/api/entity_check_presenter_spec.rb
557
+ - spec/lib/flapjack/api/entity_presenter_spec.rb
558
+ - spec/lib/flapjack/api_spec.rb
559
+ - spec/lib/flapjack/coordinator_spec.rb
560
+ - spec/lib/flapjack/data/entity_check_spec.rb
561
+ - spec/lib/flapjack/data/entity_spec.rb
562
+ - spec/lib/flapjack/data/event_spec.rb
563
+ - spec/lib/flapjack/executive_spec.rb
564
+ - spec/lib/flapjack/filters/acknowledgement_spec.rb
565
+ - spec/lib/flapjack/filters/delays_spec.rb
566
+ - spec/lib/flapjack/filters/detect_mass_client_failures_spec.rb
567
+ - spec/lib/flapjack/filters/ok_spec.rb
568
+ - spec/lib/flapjack/filters/scheduled_maintenance_spec.rb
569
+ - spec/lib/flapjack/filters/unscheduled_maintenance_spec.rb
570
+ - spec/lib/flapjack/jabber_spec.rb
571
+ - spec/lib/flapjack/notification/email_spec.rb
572
+ - spec/lib/flapjack/notification/sms_spec.rb
573
+ - spec/lib/flapjack/pikelet_spec.rb
574
+ - spec/lib/flapjack/web_spec.rb
575
+ - spec/spec_helper.rb
576
+ - spec/support/profile_all_formatter.rb
577
+ - spec/support/uncolored_doc_formatter.rb