flapjack 1.6.0 → 2.0.0b1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (301) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +4 -6
  3. data/.gitmodules +1 -1
  4. data/.rspec +1 -1
  5. data/.ruby-version +1 -1
  6. data/.travis.yml +12 -13
  7. data/CHANGELOG.md +2 -9
  8. data/CONTRIBUTING.md +7 -2
  9. data/Gemfile +4 -13
  10. data/LICENCE +1 -0
  11. data/README.md +8 -2
  12. data/Rakefile +2 -2
  13. data/bin/flapjack +3 -12
  14. data/build.sh +4 -2
  15. data/etc/flapjack_config.toml.example +273 -0
  16. data/features/ack_after_sched_maint.feature +18 -21
  17. data/features/cli.feature +11 -71
  18. data/features/cli_flapjack-feed-events.feature +14 -15
  19. data/features/cli_flapjack-nagios-receiver.feature +12 -41
  20. data/features/cli_flapper.feature +12 -41
  21. data/features/cli_purge.feature +5 -6
  22. data/features/cli_receive-events.feature +6 -7
  23. data/features/cli_simulate-failed-check.feature +5 -6
  24. data/features/events.feature +206 -181
  25. data/features/events_check_names.feature +4 -7
  26. data/features/notification_rules.feature +144 -223
  27. data/features/notifications.feature +65 -57
  28. data/features/rollup.feature +45 -47
  29. data/features/steps/cli_steps.rb +4 -5
  30. data/features/steps/events_steps.rb +163 -373
  31. data/features/steps/notifications_steps.rb +408 -264
  32. data/features/steps/packaging-lintian_steps.rb +0 -4
  33. data/features/steps/time_travel_steps.rb +0 -26
  34. data/features/support/daemons.rb +6 -31
  35. data/features/support/env.rb +65 -74
  36. data/flapjack.gemspec +22 -24
  37. data/lib/flapjack.rb +14 -7
  38. data/lib/flapjack/cli/flapper.rb +74 -173
  39. data/lib/flapjack/cli/maintenance.rb +278 -109
  40. data/lib/flapjack/cli/migrate.rb +950 -0
  41. data/lib/flapjack/cli/purge.rb +19 -22
  42. data/lib/flapjack/cli/receiver.rb +150 -326
  43. data/lib/flapjack/cli/server.rb +8 -235
  44. data/lib/flapjack/cli/simulate.rb +42 -57
  45. data/lib/flapjack/configuration.rb +51 -37
  46. data/lib/flapjack/coordinator.rb +138 -129
  47. data/lib/flapjack/data/acknowledgement.rb +177 -0
  48. data/lib/flapjack/data/alert.rb +97 -158
  49. data/lib/flapjack/data/check.rb +611 -0
  50. data/lib/flapjack/data/condition.rb +70 -0
  51. data/lib/flapjack/data/contact.rb +226 -456
  52. data/lib/flapjack/data/event.rb +96 -184
  53. data/lib/flapjack/data/extensions/associations.rb +59 -0
  54. data/lib/flapjack/data/extensions/short_name.rb +25 -0
  55. data/lib/flapjack/data/medium.rb +428 -0
  56. data/lib/flapjack/data/metrics.rb +194 -0
  57. data/lib/flapjack/data/notification.rb +22 -281
  58. data/lib/flapjack/data/rule.rb +473 -0
  59. data/lib/flapjack/data/scheduled_maintenance.rb +244 -0
  60. data/lib/flapjack/data/state.rb +221 -0
  61. data/lib/flapjack/data/statistic.rb +112 -0
  62. data/lib/flapjack/data/tag.rb +277 -0
  63. data/lib/flapjack/data/test_notification.rb +182 -0
  64. data/lib/flapjack/data/unscheduled_maintenance.rb +159 -0
  65. data/lib/flapjack/data/validators/id_validator.rb +20 -0
  66. data/lib/flapjack/exceptions.rb +6 -0
  67. data/lib/flapjack/filters/acknowledgement.rb +23 -16
  68. data/lib/flapjack/filters/base.rb +0 -5
  69. data/lib/flapjack/filters/delays.rb +53 -43
  70. data/lib/flapjack/filters/ok.rb +23 -14
  71. data/lib/flapjack/filters/scheduled_maintenance.rb +3 -3
  72. data/lib/flapjack/filters/unscheduled_maintenance.rb +12 -3
  73. data/lib/flapjack/gateways/aws_sns.rb +65 -49
  74. data/lib/flapjack/gateways/aws_sns/alert.text.erb +2 -2
  75. data/lib/flapjack/gateways/aws_sns/alert_subject.text.erb +2 -2
  76. data/lib/flapjack/gateways/aws_sns/rollup_subject.text.erb +1 -1
  77. data/lib/flapjack/gateways/email.rb +107 -90
  78. data/lib/flapjack/gateways/email/alert.html.erb +19 -18
  79. data/lib/flapjack/gateways/email/alert.text.erb +20 -14
  80. data/lib/flapjack/gateways/email/alert_subject.text.erb +2 -1
  81. data/lib/flapjack/gateways/email/rollup.html.erb +14 -13
  82. data/lib/flapjack/gateways/email/rollup.text.erb +13 -10
  83. data/lib/flapjack/gateways/jabber.rb +679 -671
  84. data/lib/flapjack/gateways/jabber/alert.text.erb +9 -6
  85. data/lib/flapjack/gateways/jsonapi.rb +164 -350
  86. data/lib/flapjack/gateways/jsonapi/data/join_descriptor.rb +44 -0
  87. data/lib/flapjack/gateways/jsonapi/data/method_descriptor.rb +21 -0
  88. data/lib/flapjack/gateways/jsonapi/helpers/headers.rb +63 -0
  89. data/lib/flapjack/gateways/jsonapi/helpers/miscellaneous.rb +136 -0
  90. data/lib/flapjack/gateways/jsonapi/helpers/resources.rb +227 -0
  91. data/lib/flapjack/gateways/jsonapi/helpers/serialiser.rb +313 -0
  92. data/lib/flapjack/gateways/jsonapi/helpers/swagger_docs.rb +322 -0
  93. data/lib/flapjack/gateways/jsonapi/methods/association_delete.rb +115 -0
  94. data/lib/flapjack/gateways/jsonapi/methods/association_get.rb +288 -0
  95. data/lib/flapjack/gateways/jsonapi/methods/association_patch.rb +178 -0
  96. data/lib/flapjack/gateways/jsonapi/methods/association_post.rb +116 -0
  97. data/lib/flapjack/gateways/jsonapi/methods/metrics.rb +71 -0
  98. data/lib/flapjack/gateways/jsonapi/methods/resource_delete.rb +119 -0
  99. data/lib/flapjack/gateways/jsonapi/methods/resource_get.rb +186 -0
  100. data/lib/flapjack/gateways/jsonapi/methods/resource_patch.rb +239 -0
  101. data/lib/flapjack/gateways/jsonapi/methods/resource_post.rb +197 -0
  102. data/lib/flapjack/gateways/jsonapi/middleware/array_param_fixer.rb +27 -0
  103. data/lib/flapjack/gateways/jsonapi/{rack → middleware}/json_params_parser.rb +7 -6
  104. data/lib/flapjack/gateways/jsonapi/middleware/request_timestamp.rb +18 -0
  105. data/lib/flapjack/gateways/oobetet.rb +222 -170
  106. data/lib/flapjack/gateways/pager_duty.rb +388 -0
  107. data/lib/flapjack/gateways/pager_duty/alert.text.erb +13 -0
  108. data/lib/flapjack/gateways/slack.rb +56 -48
  109. data/lib/flapjack/gateways/slack/alert.text.erb +1 -1
  110. data/lib/flapjack/gateways/slack/rollup.text.erb +1 -1
  111. data/lib/flapjack/gateways/sms_aspsms.rb +155 -0
  112. data/lib/flapjack/gateways/sms_aspsms/alert.text.erb +7 -0
  113. data/lib/flapjack/gateways/sms_aspsms/rollup.text.erb +2 -0
  114. data/lib/flapjack/gateways/sms_messagenet.rb +77 -57
  115. data/lib/flapjack/gateways/sms_messagenet/alert.text.erb +3 -2
  116. data/lib/flapjack/gateways/sms_nexmo.rb +53 -51
  117. data/lib/flapjack/gateways/sms_nexmo/alert.text.erb +2 -2
  118. data/lib/flapjack/gateways/sms_nexmo/rollup.text.erb +1 -1
  119. data/lib/flapjack/gateways/sms_twilio.rb +79 -62
  120. data/lib/flapjack/gateways/sms_twilio/alert.text.erb +3 -2
  121. data/lib/flapjack/gateways/web.rb +437 -345
  122. data/lib/flapjack/gateways/web/middleware/request_timestamp.rb +18 -0
  123. data/lib/flapjack/gateways/web/public/css/bootstrap.css +3793 -4340
  124. data/lib/flapjack/gateways/web/public/css/bootstrap.css.map +1 -0
  125. data/lib/flapjack/gateways/web/public/fonts/glyphicons-halflings-regular.eot +0 -0
  126. data/lib/flapjack/gateways/web/public/fonts/glyphicons-halflings-regular.svg +273 -214
  127. data/lib/flapjack/gateways/web/public/fonts/glyphicons-halflings-regular.ttf +0 -0
  128. data/lib/flapjack/gateways/web/public/fonts/glyphicons-halflings-regular.woff +0 -0
  129. data/lib/flapjack/gateways/web/public/fonts/glyphicons-halflings-regular.woff2 +0 -0
  130. data/lib/flapjack/gateways/web/public/js/bootstrap.js +1637 -1607
  131. data/lib/flapjack/gateways/web/public/js/self_stats.js +1 -2
  132. data/lib/flapjack/gateways/web/views/_pagination.html.erb +19 -0
  133. data/lib/flapjack/gateways/web/views/check.html.erb +159 -121
  134. data/lib/flapjack/gateways/web/views/checks.html.erb +82 -41
  135. data/lib/flapjack/gateways/web/views/contact.html.erb +59 -71
  136. data/lib/flapjack/gateways/web/views/contacts.html.erb +32 -8
  137. data/lib/flapjack/gateways/web/views/index.html.erb +2 -2
  138. data/lib/flapjack/gateways/web/views/{layout.erb → layout.html.erb} +7 -23
  139. data/lib/flapjack/gateways/web/views/self_stats.html.erb +32 -33
  140. data/lib/flapjack/gateways/web/views/tag.html.erb +32 -0
  141. data/lib/flapjack/gateways/web/views/tags.html.erb +51 -0
  142. data/lib/flapjack/logger.rb +34 -3
  143. data/lib/flapjack/notifier.rb +180 -112
  144. data/lib/flapjack/patches.rb +8 -63
  145. data/lib/flapjack/pikelet.rb +185 -143
  146. data/lib/flapjack/processor.rb +323 -191
  147. data/lib/flapjack/record_queue.rb +33 -0
  148. data/lib/flapjack/redis_proxy.rb +66 -0
  149. data/lib/flapjack/utility.rb +21 -15
  150. data/lib/flapjack/version.rb +2 -1
  151. data/libexec/httpbroker.go +218 -14
  152. data/libexec/oneoff.go +13 -10
  153. data/spec/lib/flapjack/configuration_spec.rb +286 -0
  154. data/spec/lib/flapjack/coordinator_spec.rb +103 -157
  155. data/spec/lib/flapjack/data/check_spec.rb +175 -0
  156. data/spec/lib/flapjack/data/contact_spec.rb +26 -349
  157. data/spec/lib/flapjack/data/event_spec.rb +76 -291
  158. data/spec/lib/flapjack/data/medium_spec.rb +19 -0
  159. data/spec/lib/flapjack/data/rule_spec.rb +43 -0
  160. data/spec/lib/flapjack/data/scheduled_maintenance_spec.rb +976 -0
  161. data/spec/lib/flapjack/data/unscheduled_maintenance_spec.rb +34 -0
  162. data/spec/lib/flapjack/gateways/aws_sns_spec.rb +111 -60
  163. data/spec/lib/flapjack/gateways/email_spec.rb +194 -161
  164. data/spec/lib/flapjack/gateways/jabber_spec.rb +961 -162
  165. data/spec/lib/flapjack/gateways/jsonapi/methods/check_links_spec.rb +155 -0
  166. data/spec/lib/flapjack/gateways/jsonapi/methods/checks_spec.rb +426 -0
  167. data/spec/lib/flapjack/gateways/jsonapi/methods/contact_links_spec.rb +217 -0
  168. data/spec/lib/flapjack/gateways/jsonapi/methods/contacts_spec.rb +425 -0
  169. data/spec/lib/flapjack/gateways/jsonapi/methods/events_spec.rb +271 -0
  170. data/spec/lib/flapjack/gateways/jsonapi/methods/media_spec.rb +257 -0
  171. data/spec/lib/flapjack/gateways/jsonapi/methods/medium_links_spec.rb +163 -0
  172. data/spec/lib/flapjack/gateways/jsonapi/methods/metrics_spec.rb +8 -0
  173. data/spec/lib/flapjack/gateways/jsonapi/methods/rule_links_spec.rb +212 -0
  174. data/spec/lib/flapjack/gateways/jsonapi/methods/rules_spec.rb +289 -0
  175. data/spec/lib/flapjack/gateways/jsonapi/methods/scheduled_maintenance_links_spec.rb +49 -0
  176. data/spec/lib/flapjack/gateways/jsonapi/methods/scheduled_maintenances_spec.rb +242 -0
  177. data/spec/lib/flapjack/gateways/jsonapi/methods/tag_links_spec.rb +274 -0
  178. data/spec/lib/flapjack/gateways/jsonapi/methods/tags_spec.rb +302 -0
  179. data/spec/lib/flapjack/gateways/jsonapi/methods/unscheduled_maintenance_links_spec.rb +49 -0
  180. data/spec/lib/flapjack/gateways/jsonapi/methods/unscheduled_maintenances_spec.rb +339 -0
  181. data/spec/lib/flapjack/gateways/jsonapi_spec.rb +1 -1
  182. data/spec/lib/flapjack/gateways/oobetet_spec.rb +151 -79
  183. data/spec/lib/flapjack/gateways/pager_duty_spec.rb +353 -0
  184. data/spec/lib/flapjack/gateways/slack_spec.rb +53 -53
  185. data/spec/lib/flapjack/gateways/sms_aspsms_spec.rb +106 -0
  186. data/spec/lib/flapjack/gateways/sms_messagenet_spec.rb +111 -54
  187. data/spec/lib/flapjack/gateways/sms_nexmo_spec.rb +50 -51
  188. data/spec/lib/flapjack/gateways/sms_twilio_spec.rb +108 -48
  189. data/spec/lib/flapjack/gateways/web_spec.rb +144 -216
  190. data/spec/lib/flapjack/notifier_spec.rb +132 -1
  191. data/spec/lib/flapjack/pikelet_spec.rb +111 -50
  192. data/spec/lib/flapjack/processor_spec.rb +210 -40
  193. data/spec/lib/flapjack/redis_proxy_spec.rb +45 -0
  194. data/spec/lib/flapjack/utility_spec.rb +11 -15
  195. data/spec/service_consumers/fixture_data.rb +547 -0
  196. data/spec/service_consumers/pact_helper.rb +21 -32
  197. data/spec/service_consumers/pacts/flapjack-diner_v2.0.json +4652 -0
  198. data/spec/service_consumers/provider_states_for_flapjack-diner.rb +279 -322
  199. data/spec/service_consumers/provider_support.rb +8 -0
  200. data/spec/spec_helper.rb +34 -44
  201. data/spec/support/erb_view_helper.rb +1 -1
  202. data/spec/support/factories.rb +58 -0
  203. data/spec/support/jsonapi_helper.rb +15 -26
  204. data/spec/support/mock_logger.rb +43 -0
  205. data/spec/support/xmpp_comparable.rb +24 -0
  206. data/src/flapjack/transport_test.go +30 -1
  207. data/tasks/dump_keys.rake +82 -0
  208. data/tasks/events.rake +7 -7
  209. data/tasks/support/flapjack_config_benchmark.toml +28 -0
  210. data/tasks/support/flapjack_config_benchmark.yaml +0 -2
  211. metadata +175 -222
  212. data/Guardfile +0 -14
  213. data/etc/flapjack_config.yaml.example +0 -477
  214. data/features/cli_flapjack-populator.feature +0 -90
  215. data/features/support/silent_system.rb +0 -4
  216. data/lib/flapjack/cli/import.rb +0 -108
  217. data/lib/flapjack/data/entity.rb +0 -652
  218. data/lib/flapjack/data/entity_check.rb +0 -1044
  219. data/lib/flapjack/data/message.rb +0 -56
  220. data/lib/flapjack/data/migration.rb +0 -234
  221. data/lib/flapjack/data/notification_rule.rb +0 -425
  222. data/lib/flapjack/data/semaphore.rb +0 -44
  223. data/lib/flapjack/data/tagged.rb +0 -48
  224. data/lib/flapjack/gateways/jsonapi/check_methods.rb +0 -206
  225. data/lib/flapjack/gateways/jsonapi/check_presenter.rb +0 -221
  226. data/lib/flapjack/gateways/jsonapi/contact_methods.rb +0 -186
  227. data/lib/flapjack/gateways/jsonapi/entity_methods.rb +0 -223
  228. data/lib/flapjack/gateways/jsonapi/medium_methods.rb +0 -185
  229. data/lib/flapjack/gateways/jsonapi/metrics_methods.rb +0 -132
  230. data/lib/flapjack/gateways/jsonapi/notification_rule_methods.rb +0 -141
  231. data/lib/flapjack/gateways/jsonapi/pagerduty_credential_methods.rb +0 -139
  232. data/lib/flapjack/gateways/jsonapi/report_methods.rb +0 -146
  233. data/lib/flapjack/gateways/pagerduty.rb +0 -318
  234. data/lib/flapjack/gateways/pagerduty/alert.text.erb +0 -10
  235. data/lib/flapjack/gateways/web/public/css/select2-bootstrap.css +0 -87
  236. data/lib/flapjack/gateways/web/public/css/select2.css +0 -615
  237. data/lib/flapjack/gateways/web/public/css/tablesort.css +0 -67
  238. data/lib/flapjack/gateways/web/public/img/select2-spinner.gif +0 -0
  239. data/lib/flapjack/gateways/web/public/img/select2.png +0 -0
  240. data/lib/flapjack/gateways/web/public/img/select2x2.png +0 -0
  241. data/lib/flapjack/gateways/web/public/js/backbone.js +0 -1581
  242. data/lib/flapjack/gateways/web/public/js/backbone.jsonapi.js +0 -322
  243. data/lib/flapjack/gateways/web/public/js/flapjack.js +0 -82
  244. data/lib/flapjack/gateways/web/public/js/jquery.tablesorter.js +0 -1640
  245. data/lib/flapjack/gateways/web/public/js/jquery.tablesorter.widgets.js +0 -1390
  246. data/lib/flapjack/gateways/web/public/js/modules/contact.js +0 -520
  247. data/lib/flapjack/gateways/web/public/js/modules/entity.js +0 -28
  248. data/lib/flapjack/gateways/web/public/js/modules/medium.js +0 -40
  249. data/lib/flapjack/gateways/web/public/js/select2.js +0 -3397
  250. data/lib/flapjack/gateways/web/public/js/tablesort.js +0 -44
  251. data/lib/flapjack/gateways/web/public/js/underscore.js +0 -1276
  252. data/lib/flapjack/gateways/web/views/edit_contacts.html.erb +0 -173
  253. data/lib/flapjack/gateways/web/views/entities.html.erb +0 -30
  254. data/lib/flapjack/gateways/web/views/entity.html.erb +0 -51
  255. data/lib/flapjack/rack_logger.rb +0 -47
  256. data/lib/flapjack/redis_pool.rb +0 -42
  257. data/spec/lib/flapjack/data/entity_check_spec.rb +0 -1418
  258. data/spec/lib/flapjack/data/entity_spec.rb +0 -872
  259. data/spec/lib/flapjack/data/message_spec.rb +0 -30
  260. data/spec/lib/flapjack/data/migration_spec.rb +0 -104
  261. data/spec/lib/flapjack/data/notification_rule_spec.rb +0 -232
  262. data/spec/lib/flapjack/data/notification_spec.rb +0 -53
  263. data/spec/lib/flapjack/data/semaphore_spec.rb +0 -24
  264. data/spec/lib/flapjack/filters/acknowledgement_spec.rb +0 -6
  265. data/spec/lib/flapjack/filters/delays_spec.rb +0 -6
  266. data/spec/lib/flapjack/filters/ok_spec.rb +0 -6
  267. data/spec/lib/flapjack/filters/scheduled_maintenance_spec.rb +0 -6
  268. data/spec/lib/flapjack/filters/unscheduled_maintenance_spec.rb +0 -6
  269. data/spec/lib/flapjack/gateways/jsonapi/check_methods_spec.rb +0 -315
  270. data/spec/lib/flapjack/gateways/jsonapi/check_presenter_spec.rb +0 -223
  271. data/spec/lib/flapjack/gateways/jsonapi/contact_methods_spec.rb +0 -131
  272. data/spec/lib/flapjack/gateways/jsonapi/entity_methods_spec.rb +0 -389
  273. data/spec/lib/flapjack/gateways/jsonapi/medium_methods_spec.rb +0 -231
  274. data/spec/lib/flapjack/gateways/jsonapi/notification_rule_methods_spec.rb +0 -169
  275. data/spec/lib/flapjack/gateways/jsonapi/pagerduty_credential_methods_spec.rb +0 -114
  276. data/spec/lib/flapjack/gateways/jsonapi/report_methods_spec.rb +0 -590
  277. data/spec/lib/flapjack/gateways/pagerduty_spec.rb +0 -249
  278. data/spec/lib/flapjack/gateways/web/views/check.html.erb_spec.rb +0 -21
  279. data/spec/lib/flapjack/gateways/web/views/contact.html.erb_spec.rb +0 -24
  280. data/spec/lib/flapjack/gateways/web/views/index.html.erb_spec.rb +0 -16
  281. data/spec/lib/flapjack/redis_pool_spec.rb +0 -29
  282. data/spec/service_consumers/pacts/flapjack-diner_v1.0.json +0 -4702
  283. data/tasks/entities.rake +0 -151
  284. data/tasks/profile.rake +0 -282
  285. data/tmp/acknowledge.rb +0 -13
  286. data/tmp/create_config_yaml.rb +0 -16
  287. data/tmp/create_event_ok.rb +0 -30
  288. data/tmp/create_event_unknown.rb +0 -30
  289. data/tmp/create_events_failure.rb +0 -34
  290. data/tmp/create_events_ok.rb +0 -32
  291. data/tmp/create_events_ok_fail_ack_ok.rb +0 -53
  292. data/tmp/create_events_ok_failure.rb +0 -41
  293. data/tmp/create_events_ok_failure_ack.rb +0 -53
  294. data/tmp/dummy_contacts.json +0 -43
  295. data/tmp/dummy_entities.json +0 -37
  296. data/tmp/generate_nagios_test_hosts.rb +0 -16
  297. data/tmp/notification_rules.rb +0 -73
  298. data/tmp/parse_config_yaml.rb +0 -7
  299. data/tmp/redis_find_spurious_unknown_states.rb +0 -52
  300. data/tmp/test_json_post.rb +0 -19
  301. data/tmp/test_notification_rules_api.rb +0 -171
@@ -7,16 +7,16 @@ namespace :events do
7
7
  $: << File.dirname(__FILE__) + '/../lib'
8
8
  end
9
9
 
10
+ require 'flapjack'
10
11
  require 'flapjack/configuration'
11
12
  require 'flapjack/data/event'
12
- require 'flapjack/data/entity_check'
13
13
 
14
14
  # FIXME: add arguments, make more flexible
15
15
  desc "send events to trigger some notifications"
16
16
  task :test_notification do
17
17
 
18
18
  FLAPJACK_ENV = ENV['FLAPJACK_ENV'] || 'development'
19
- config_file = File.join('etc', 'flapjack_config.yaml')
19
+ config_file = File.join('etc', 'flapjack_config.toml')
20
20
 
21
21
  config = Flapjack::Configuration.new
22
22
  config.load( config_file )
@@ -25,17 +25,17 @@ namespace :events do
25
25
  @redis_config = config.for_redis
26
26
 
27
27
  if @config_env.nil? || @config_env.empty?
28
- puts "No config data for environment '#{FLAPJACK_ENV}' found in '#{config_file}'"
28
+ puts "No config data found in '#{config_file}'"
29
29
  exit(false)
30
30
  end
31
31
 
32
- redis = Redis.new(@redis_config)
32
+ Flapjack.redis = Redis.new(@redis_config)
33
33
 
34
34
  Flapjack::Data::Event.add({'entity' => 'clientx-app-01',
35
35
  'check' => 'ping',
36
36
  'type' => 'service',
37
37
  'state' => 'ok',
38
- 'summary' => 'testing'}, :redis => redis)
38
+ 'summary' => 'testing'})
39
39
 
40
40
  sleep(8)
41
41
 
@@ -43,7 +43,7 @@ namespace :events do
43
43
  'check' => 'ping',
44
44
  'type' => 'service',
45
45
  'state' => 'critical',
46
- 'summary' => 'testing'}, :redis => redis)
46
+ 'summary' => 'testing'})
47
47
 
48
48
  sleep(8)
49
49
 
@@ -51,7 +51,7 @@ namespace :events do
51
51
  'check' => 'ping',
52
52
  'type' => 'service',
53
53
  'state' => 'ok',
54
- 'summary' => 'testing'}, :redis => redis)
54
+ 'summary' => 'testing'})
55
55
 
56
56
  end
57
57
 
@@ -0,0 +1,28 @@
1
+ pid_file = "tmp/pids/flapjack_test.pid"
2
+ log_file = "log/flapjack_test.log"
3
+ daemonize = false
4
+ [redis]
5
+ host = "127.0.0.1"
6
+ port = 6379
7
+ db = 14
8
+ [processor]
9
+ enabled = true
10
+ queue = "events"
11
+ notifier_queue = "notifications"
12
+ archive_events = "false"
13
+ events_archive_maxage = 10800
14
+ new_check_scheduled_maintenance_duration = "1 month"
15
+ exit_on_queue_empty = true
16
+ [logger]
17
+ level = "WARN"
18
+ [notifier]
19
+ enabled = true
20
+ queue = "notifications"
21
+ email_queue = "email_notifications"
22
+ sms_queue = "sms_notifications"
23
+ jabber_queue = "jabber_notifications"
24
+ pagerduty_queue = "pagerduty_notifications"
25
+ notification_log_file = "log/notification_test.log"
26
+ default_contact_timezone = "Australia/Broken_Hill"
27
+ [logger]
28
+ level = "WARN"
@@ -21,10 +21,8 @@ test:
21
21
  queue: notifications
22
22
  email_queue: email_notifications
23
23
  sms_queue: sms_notifications
24
- sms_nexmo_queue: sms_nexmo_notifications
25
24
  jabber_queue: jabber_notifications
26
25
  pagerduty_queue: pagerduty_notifications
27
- notification_log_file: log/notification_test.log
28
26
  default_contact_timezone: Australia/Broken_Hill
29
27
  logger:
30
28
  level: WARN
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: flapjack
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.6.0
4
+ version: 2.0.0b1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Lindsay Holmwood
@@ -11,80 +11,38 @@ authors:
11
11
  autorequire:
12
12
  bindir: bin
13
13
  cert_chain: []
14
- date: 2015-07-09 00:00:00.000000000 Z
14
+ date: 2015-12-10 00:00:00.000000000 Z
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
- name: dante
18
- requirement: !ruby/object:Gem::Requirement
19
- requirements:
20
- - - '='
21
- - !ruby/object:Gem::Version
22
- version: 0.2.0
23
- type: :runtime
24
- prerelease: false
25
- version_requirements: !ruby/object:Gem::Requirement
26
- requirements:
27
- - - '='
28
- - !ruby/object:Gem::Version
29
- version: 0.2.0
30
- - !ruby/object:Gem::Dependency
31
- name: oj
17
+ name: hiredis
32
18
  requirement: !ruby/object:Gem::Requirement
33
19
  requirements:
34
20
  - - ">="
35
21
  - !ruby/object:Gem::Version
36
- version: 2.9.0
22
+ version: '0'
37
23
  type: :runtime
38
24
  prerelease: false
39
25
  version_requirements: !ruby/object:Gem::Requirement
40
26
  requirements:
41
27
  - - ">="
42
28
  - !ruby/object:Gem::Version
43
- version: 2.9.0
44
- - !ruby/object:Gem::Dependency
45
- name: eventmachine
46
- requirement: !ruby/object:Gem::Requirement
47
- requirements:
48
- - - "~>"
49
- - !ruby/object:Gem::Version
50
- version: 1.0.0
51
- type: :runtime
52
- prerelease: false
53
- version_requirements: !ruby/object:Gem::Requirement
54
- requirements:
55
- - - "~>"
56
- - !ruby/object:Gem::Version
57
- version: 1.0.0
29
+ version: '0'
58
30
  - !ruby/object:Gem::Dependency
59
31
  name: redis
60
- requirement: !ruby/object:Gem::Requirement
61
- requirements:
62
- - - "~>"
63
- - !ruby/object:Gem::Version
64
- version: 3.0.6
65
- type: :runtime
66
- prerelease: false
67
- version_requirements: !ruby/object:Gem::Requirement
68
- requirements:
69
- - - "~>"
70
- - !ruby/object:Gem::Version
71
- version: 3.0.6
72
- - !ruby/object:Gem::Dependency
73
- name: hiredis
74
32
  requirement: !ruby/object:Gem::Requirement
75
33
  requirements:
76
34
  - - ">="
77
35
  - !ruby/object:Gem::Version
78
- version: '0'
36
+ version: 3.0.7
79
37
  type: :runtime
80
38
  prerelease: false
81
39
  version_requirements: !ruby/object:Gem::Requirement
82
40
  requirements:
83
41
  - - ">="
84
42
  - !ruby/object:Gem::Version
85
- version: '0'
43
+ version: 3.0.7
86
44
  - !ruby/object:Gem::Dependency
87
- name: em-hiredis
45
+ name: json-stream
88
46
  requirement: !ruby/object:Gem::Requirement
89
47
  requirements:
90
48
  - - ">="
@@ -98,21 +56,21 @@ dependencies:
98
56
  - !ruby/object:Gem::Version
99
57
  version: '0'
100
58
  - !ruby/object:Gem::Dependency
101
- name: em-synchrony
59
+ name: zermelo
102
60
  requirement: !ruby/object:Gem::Requirement
103
61
  requirements:
104
- - - "~>"
62
+ - - '='
105
63
  - !ruby/object:Gem::Version
106
- version: 1.0.2
64
+ version: 1.4.3
107
65
  type: :runtime
108
66
  prerelease: false
109
67
  version_requirements: !ruby/object:Gem::Requirement
110
68
  requirements:
111
- - - "~>"
69
+ - - '='
112
70
  - !ruby/object:Gem::Version
113
- version: 1.0.2
71
+ version: 1.4.3
114
72
  - !ruby/object:Gem::Dependency
115
- name: em-http-request
73
+ name: sinatra
116
74
  requirement: !ruby/object:Gem::Requirement
117
75
  requirements:
118
76
  - - ">="
@@ -126,7 +84,7 @@ dependencies:
126
84
  - !ruby/object:Gem::Version
127
85
  version: '0'
128
86
  - !ruby/object:Gem::Dependency
129
- name: sinatra
87
+ name: swagger-blocks
130
88
  requirement: !ruby/object:Gem::Requirement
131
89
  requirements:
132
90
  - - ">="
@@ -140,7 +98,7 @@ dependencies:
140
98
  - !ruby/object:Gem::Version
141
99
  version: '0'
142
100
  - !ruby/object:Gem::Dependency
143
- name: rack-fiber_pool
101
+ name: mail
144
102
  requirement: !ruby/object:Gem::Requirement
145
103
  requirements:
146
104
  - - ">="
@@ -154,47 +112,33 @@ dependencies:
154
112
  - !ruby/object:Gem::Version
155
113
  version: '0'
156
114
  - !ruby/object:Gem::Dependency
157
- name: thin
158
- requirement: !ruby/object:Gem::Requirement
159
- requirements:
160
- - - "~>"
161
- - !ruby/object:Gem::Version
162
- version: 1.6.1
163
- type: :runtime
164
- prerelease: false
165
- version_requirements: !ruby/object:Gem::Requirement
166
- requirements:
167
- - - "~>"
168
- - !ruby/object:Gem::Version
169
- version: 1.6.1
170
- - !ruby/object:Gem::Dependency
171
- name: mail
115
+ name: xmpp4r
172
116
  requirement: !ruby/object:Gem::Requirement
173
117
  requirements:
174
118
  - - ">="
175
119
  - !ruby/object:Gem::Version
176
- version: '0'
120
+ version: 0.5.5
177
121
  type: :runtime
178
122
  prerelease: false
179
123
  version_requirements: !ruby/object:Gem::Requirement
180
124
  requirements:
181
125
  - - ">="
182
126
  - !ruby/object:Gem::Version
183
- version: '0'
127
+ version: 0.5.5
184
128
  - !ruby/object:Gem::Dependency
185
- name: blather
129
+ name: nexmo
186
130
  requirement: !ruby/object:Gem::Requirement
187
131
  requirements:
188
- - - "~>"
132
+ - - '='
189
133
  - !ruby/object:Gem::Version
190
- version: 0.8.3
134
+ version: 2.0.0
191
135
  type: :runtime
192
136
  prerelease: false
193
137
  version_requirements: !ruby/object:Gem::Requirement
194
138
  requirements:
195
- - - "~>"
139
+ - - '='
196
140
  - !ruby/object:Gem::Version
197
- version: 0.8.3
141
+ version: 2.0.0
198
142
  - !ruby/object:Gem::Dependency
199
143
  name: chronic
200
144
  requirement: !ruby/object:Gem::Requirement
@@ -224,7 +168,7 @@ dependencies:
224
168
  - !ruby/object:Gem::Version
225
169
  version: '0'
226
170
  - !ruby/object:Gem::Dependency
227
- name: terminal-table
171
+ name: activesupport
228
172
  requirement: !ruby/object:Gem::Requirement
229
173
  requirements:
230
174
  - - ">="
@@ -238,7 +182,7 @@ dependencies:
238
182
  - !ruby/object:Gem::Version
239
183
  version: '0'
240
184
  - !ruby/object:Gem::Dependency
241
- name: activesupport
185
+ name: ice_cube
242
186
  requirement: !ruby/object:Gem::Requirement
243
187
  requirements:
244
188
  - - ">="
@@ -252,7 +196,7 @@ dependencies:
252
196
  - !ruby/object:Gem::Version
253
197
  version: '0'
254
198
  - !ruby/object:Gem::Dependency
255
- name: ice_cube
199
+ name: icalendar
256
200
  requirement: !ruby/object:Gem::Requirement
257
201
  requirements:
258
202
  - - ">="
@@ -294,7 +238,21 @@ dependencies:
294
238
  - !ruby/object:Gem::Version
295
239
  version: '0'
296
240
  - !ruby/object:Gem::Dependency
297
- name: rbtrace
241
+ name: gli
242
+ requirement: !ruby/object:Gem::Requirement
243
+ requirements:
244
+ - - '='
245
+ - !ruby/object:Gem::Version
246
+ version: 2.13.1
247
+ type: :runtime
248
+ prerelease: false
249
+ version_requirements: !ruby/object:Gem::Requirement
250
+ requirements:
251
+ - - '='
252
+ - !ruby/object:Gem::Version
253
+ version: 2.13.1
254
+ - !ruby/object:Gem::Dependency
255
+ name: terminal-table
298
256
  requirement: !ruby/object:Gem::Requirement
299
257
  requirements:
300
258
  - - ">="
@@ -308,7 +266,7 @@ dependencies:
308
266
  - !ruby/object:Gem::Version
309
267
  version: '0'
310
268
  - !ruby/object:Gem::Dependency
311
- name: rake
269
+ name: toml-rb
312
270
  requirement: !ruby/object:Gem::Requirement
313
271
  requirements:
314
272
  - - ">="
@@ -322,47 +280,47 @@ dependencies:
322
280
  - !ruby/object:Gem::Version
323
281
  version: '0'
324
282
  - !ruby/object:Gem::Dependency
325
- name: gli
283
+ name: puma
326
284
  requirement: !ruby/object:Gem::Requirement
327
285
  requirements:
328
- - - '='
286
+ - - ">="
329
287
  - !ruby/object:Gem::Version
330
- version: 2.12.0
288
+ version: '0'
331
289
  type: :runtime
332
290
  prerelease: false
333
291
  version_requirements: !ruby/object:Gem::Requirement
334
292
  requirements:
335
- - - '='
293
+ - - ">="
336
294
  - !ruby/object:Gem::Version
337
- version: 2.12.0
295
+ version: '0'
338
296
  - !ruby/object:Gem::Dependency
339
- name: nokogiri
297
+ name: flapjack-diner
340
298
  requirement: !ruby/object:Gem::Requirement
341
299
  requirements:
342
300
  - - '='
343
301
  - !ruby/object:Gem::Version
344
- version: 1.6.2.1
302
+ version: 2.0.0b1
345
303
  type: :runtime
346
304
  prerelease: false
347
305
  version_requirements: !ruby/object:Gem::Requirement
348
306
  requirements:
349
307
  - - '='
350
308
  - !ruby/object:Gem::Version
351
- version: 1.6.2.1
309
+ version: 2.0.0b1
352
310
  - !ruby/object:Gem::Dependency
353
- name: nexmo
311
+ name: rake
354
312
  requirement: !ruby/object:Gem::Requirement
355
313
  requirements:
356
- - - '='
314
+ - - ">="
357
315
  - !ruby/object:Gem::Version
358
- version: 2.0.0
359
- type: :runtime
316
+ version: '0'
317
+ type: :development
360
318
  prerelease: false
361
319
  version_requirements: !ruby/object:Gem::Requirement
362
320
  requirements:
363
- - - '='
321
+ - - ">="
364
322
  - !ruby/object:Gem::Version
365
- version: 2.0.0
323
+ version: '0'
366
324
  description: Flapjack is a distributed monitoring notification system that provides
367
325
  a scalable method for processing streams of events from Nagios and deciding who
368
326
  should be notified
@@ -381,18 +339,16 @@ files:
381
339
  - CONTRIBUTING.md
382
340
  - Dockerfile
383
341
  - Gemfile
384
- - Guardfile
385
342
  - LICENCE
386
343
  - README.md
387
344
  - Rakefile
388
345
  - bin/flapjack
389
346
  - build.sh
390
- - etc/flapjack_config.yaml.example
347
+ - etc/flapjack_config.toml.example
391
348
  - features/ack_after_sched_maint.feature
392
349
  - features/cli.feature
393
350
  - features/cli_flapjack-feed-events.feature
394
351
  - features/cli_flapjack-nagios-receiver.feature
395
- - features/cli_flapjack-populator.feature
396
352
  - features/cli_flapper.feature
397
353
  - features/cli_purge.feature
398
354
  - features/cli_receive-events.feature
@@ -411,29 +367,37 @@ files:
411
367
  - features/steps/time_travel_steps.rb
412
368
  - features/support/daemons.rb
413
369
  - features/support/env.rb
414
- - features/support/silent_system.rb
415
370
  - flapjack.gemspec
416
371
  - lib/flapjack.rb
417
372
  - lib/flapjack/cli/flapper.rb
418
- - lib/flapjack/cli/import.rb
419
373
  - lib/flapjack/cli/maintenance.rb
374
+ - lib/flapjack/cli/migrate.rb
420
375
  - lib/flapjack/cli/purge.rb
421
376
  - lib/flapjack/cli/receiver.rb
422
377
  - lib/flapjack/cli/server.rb
423
378
  - lib/flapjack/cli/simulate.rb
424
379
  - lib/flapjack/configuration.rb
425
380
  - lib/flapjack/coordinator.rb
381
+ - lib/flapjack/data/acknowledgement.rb
426
382
  - lib/flapjack/data/alert.rb
383
+ - lib/flapjack/data/check.rb
384
+ - lib/flapjack/data/condition.rb
427
385
  - lib/flapjack/data/contact.rb
428
- - lib/flapjack/data/entity.rb
429
- - lib/flapjack/data/entity_check.rb
430
386
  - lib/flapjack/data/event.rb
431
- - lib/flapjack/data/message.rb
432
- - lib/flapjack/data/migration.rb
387
+ - lib/flapjack/data/extensions/associations.rb
388
+ - lib/flapjack/data/extensions/short_name.rb
389
+ - lib/flapjack/data/medium.rb
390
+ - lib/flapjack/data/metrics.rb
433
391
  - lib/flapjack/data/notification.rb
434
- - lib/flapjack/data/notification_rule.rb
435
- - lib/flapjack/data/semaphore.rb
436
- - lib/flapjack/data/tagged.rb
392
+ - lib/flapjack/data/rule.rb
393
+ - lib/flapjack/data/scheduled_maintenance.rb
394
+ - lib/flapjack/data/state.rb
395
+ - lib/flapjack/data/statistic.rb
396
+ - lib/flapjack/data/tag.rb
397
+ - lib/flapjack/data/test_notification.rb
398
+ - lib/flapjack/data/unscheduled_maintenance.rb
399
+ - lib/flapjack/data/validators/id_validator.rb
400
+ - lib/flapjack/exceptions.rb
437
401
  - lib/flapjack/filters/acknowledgement.rb
438
402
  - lib/flapjack/filters/base.rb
439
403
  - lib/flapjack/filters/delays.rb
@@ -456,22 +420,34 @@ files:
456
420
  - lib/flapjack/gateways/jabber/alert.text.erb
457
421
  - lib/flapjack/gateways/jabber/rollup.text.erb
458
422
  - lib/flapjack/gateways/jsonapi.rb
459
- - lib/flapjack/gateways/jsonapi/check_methods.rb
460
- - lib/flapjack/gateways/jsonapi/check_presenter.rb
461
- - lib/flapjack/gateways/jsonapi/contact_methods.rb
462
- - lib/flapjack/gateways/jsonapi/entity_methods.rb
463
- - lib/flapjack/gateways/jsonapi/medium_methods.rb
464
- - lib/flapjack/gateways/jsonapi/metrics_methods.rb
465
- - lib/flapjack/gateways/jsonapi/notification_rule_methods.rb
466
- - lib/flapjack/gateways/jsonapi/pagerduty_credential_methods.rb
467
- - lib/flapjack/gateways/jsonapi/rack/json_params_parser.rb
468
- - lib/flapjack/gateways/jsonapi/report_methods.rb
423
+ - lib/flapjack/gateways/jsonapi/data/join_descriptor.rb
424
+ - lib/flapjack/gateways/jsonapi/data/method_descriptor.rb
425
+ - lib/flapjack/gateways/jsonapi/helpers/headers.rb
426
+ - lib/flapjack/gateways/jsonapi/helpers/miscellaneous.rb
427
+ - lib/flapjack/gateways/jsonapi/helpers/resources.rb
428
+ - lib/flapjack/gateways/jsonapi/helpers/serialiser.rb
429
+ - lib/flapjack/gateways/jsonapi/helpers/swagger_docs.rb
430
+ - lib/flapjack/gateways/jsonapi/methods/association_delete.rb
431
+ - lib/flapjack/gateways/jsonapi/methods/association_get.rb
432
+ - lib/flapjack/gateways/jsonapi/methods/association_patch.rb
433
+ - lib/flapjack/gateways/jsonapi/methods/association_post.rb
434
+ - lib/flapjack/gateways/jsonapi/methods/metrics.rb
435
+ - lib/flapjack/gateways/jsonapi/methods/resource_delete.rb
436
+ - lib/flapjack/gateways/jsonapi/methods/resource_get.rb
437
+ - lib/flapjack/gateways/jsonapi/methods/resource_patch.rb
438
+ - lib/flapjack/gateways/jsonapi/methods/resource_post.rb
439
+ - lib/flapjack/gateways/jsonapi/middleware/array_param_fixer.rb
440
+ - lib/flapjack/gateways/jsonapi/middleware/json_params_parser.rb
441
+ - lib/flapjack/gateways/jsonapi/middleware/request_timestamp.rb
469
442
  - lib/flapjack/gateways/oobetet.rb
470
- - lib/flapjack/gateways/pagerduty.rb
471
- - lib/flapjack/gateways/pagerduty/alert.text.erb
443
+ - lib/flapjack/gateways/pager_duty.rb
444
+ - lib/flapjack/gateways/pager_duty/alert.text.erb
472
445
  - lib/flapjack/gateways/slack.rb
473
446
  - lib/flapjack/gateways/slack/alert.text.erb
474
447
  - lib/flapjack/gateways/slack/rollup.text.erb
448
+ - lib/flapjack/gateways/sms_aspsms.rb
449
+ - lib/flapjack/gateways/sms_aspsms/alert.text.erb
450
+ - lib/flapjack/gateways/sms_aspsms/rollup.text.erb
475
451
  - lib/flapjack/gateways/sms_messagenet.rb
476
452
  - lib/flapjack/gateways/sms_messagenet/alert.text.erb
477
453
  - lib/flapjack/gateways/sms_messagenet/rollup.text.erb
@@ -482,13 +458,12 @@ files:
482
458
  - lib/flapjack/gateways/sms_twilio/alert.text.erb
483
459
  - lib/flapjack/gateways/sms_twilio/rollup.text.erb
484
460
  - lib/flapjack/gateways/web.rb
461
+ - lib/flapjack/gateways/web/middleware/request_timestamp.rb
485
462
  - lib/flapjack/gateways/web/public/css/bootstrap.css
463
+ - lib/flapjack/gateways/web/public/css/bootstrap.css.map
486
464
  - lib/flapjack/gateways/web/public/css/font-awesome.css
487
465
  - lib/flapjack/gateways/web/public/css/nv.d3.css
488
466
  - lib/flapjack/gateways/web/public/css/screen.css
489
- - lib/flapjack/gateways/web/public/css/select2-bootstrap.css
490
- - lib/flapjack/gateways/web/public/css/select2.css
491
- - lib/flapjack/gateways/web/public/css/tablesort.css
492
467
  - lib/flapjack/gateways/web/public/fonts/FontAwesome.otf
493
468
  - lib/flapjack/gateways/web/public/fonts/fontawesome-webfont.eot
494
469
  - lib/flapjack/gateways/web/public/fonts/fontawesome-webfont.svg
@@ -498,6 +473,7 @@ files:
498
473
  - lib/flapjack/gateways/web/public/fonts/glyphicons-halflings-regular.svg
499
474
  - lib/flapjack/gateways/web/public/fonts/glyphicons-halflings-regular.ttf
500
475
  - lib/flapjack/gateways/web/public/fonts/glyphicons-halflings-regular.woff
476
+ - lib/flapjack/gateways/web/public/fonts/glyphicons-halflings-regular.woff2
501
477
  - lib/flapjack/gateways/web/public/img/flapjack-2013-notext-transparent-25-25.png
502
478
  - lib/flapjack/gateways/web/public/img/flapjack-2013-notext-transparent-25-40.png
503
479
  - lib/flapjack/gateways/web/public/img/flapjack-2013-notext-transparent-300-300.png
@@ -508,124 +484,98 @@ files:
508
484
  - lib/flapjack/gateways/web/public/img/flapjack_white_bg_400_353.jpeg
509
485
  - lib/flapjack/gateways/web/public/img/glyphicons-halflings-white.png
510
486
  - lib/flapjack/gateways/web/public/img/glyphicons-halflings.png
511
- - lib/flapjack/gateways/web/public/img/select2-spinner.gif
512
- - lib/flapjack/gateways/web/public/img/select2.png
513
- - lib/flapjack/gateways/web/public/img/select2x2.png
514
- - lib/flapjack/gateways/web/public/js/backbone.js
515
- - lib/flapjack/gateways/web/public/js/backbone.jsonapi.js
516
487
  - lib/flapjack/gateways/web/public/js/bootstrap.js
517
488
  - lib/flapjack/gateways/web/public/js/d3.v3.js
518
- - lib/flapjack/gateways/web/public/js/flapjack.js
519
489
  - lib/flapjack/gateways/web/public/js/jquery-1.10.2.js
520
- - lib/flapjack/gateways/web/public/js/jquery.tablesorter.js
521
- - lib/flapjack/gateways/web/public/js/jquery.tablesorter.widgets.js
522
- - lib/flapjack/gateways/web/public/js/modules/contact.js
523
- - lib/flapjack/gateways/web/public/js/modules/entity.js
524
- - lib/flapjack/gateways/web/public/js/modules/medium.js
525
490
  - lib/flapjack/gateways/web/public/js/moment.js
526
491
  - lib/flapjack/gateways/web/public/js/nv.d3.js
527
- - lib/flapjack/gateways/web/public/js/select2.js
528
492
  - lib/flapjack/gateways/web/public/js/self_stats.js
529
- - lib/flapjack/gateways/web/public/js/tablesort.js
530
- - lib/flapjack/gateways/web/public/js/underscore.js
493
+ - lib/flapjack/gateways/web/views/_pagination.html.erb
531
494
  - lib/flapjack/gateways/web/views/check.html.erb
532
495
  - lib/flapjack/gateways/web/views/checks.html.erb
533
496
  - lib/flapjack/gateways/web/views/contact.html.erb
534
497
  - lib/flapjack/gateways/web/views/contacts.html.erb
535
- - lib/flapjack/gateways/web/views/edit_contacts.html.erb
536
- - lib/flapjack/gateways/web/views/entities.html.erb
537
- - lib/flapjack/gateways/web/views/entity.html.erb
538
498
  - lib/flapjack/gateways/web/views/index.html.erb
539
- - lib/flapjack/gateways/web/views/layout.erb
499
+ - lib/flapjack/gateways/web/views/layout.html.erb
540
500
  - lib/flapjack/gateways/web/views/self_stats.html.erb
501
+ - lib/flapjack/gateways/web/views/tag.html.erb
502
+ - lib/flapjack/gateways/web/views/tags.html.erb
541
503
  - lib/flapjack/logger.rb
542
504
  - lib/flapjack/notifier.rb
543
505
  - lib/flapjack/patches.rb
544
506
  - lib/flapjack/pikelet.rb
545
507
  - lib/flapjack/processor.rb
546
- - lib/flapjack/rack_logger.rb
547
- - lib/flapjack/redis_pool.rb
508
+ - lib/flapjack/record_queue.rb
509
+ - lib/flapjack/redis_proxy.rb
548
510
  - lib/flapjack/utility.rb
549
511
  - lib/flapjack/version.rb
550
512
  - libexec/httpbroker.go
551
513
  - libexec/oneoff.go
552
514
  - log/.gitkeep
515
+ - spec/lib/flapjack/configuration_spec.rb
553
516
  - spec/lib/flapjack/coordinator_spec.rb
517
+ - spec/lib/flapjack/data/check_spec.rb
554
518
  - spec/lib/flapjack/data/contact_spec.rb
555
- - spec/lib/flapjack/data/entity_check_spec.rb
556
- - spec/lib/flapjack/data/entity_spec.rb
557
519
  - spec/lib/flapjack/data/event_spec.rb
558
- - spec/lib/flapjack/data/message_spec.rb
559
- - spec/lib/flapjack/data/migration_spec.rb
560
- - spec/lib/flapjack/data/notification_rule_spec.rb
561
- - spec/lib/flapjack/data/notification_spec.rb
562
- - spec/lib/flapjack/data/semaphore_spec.rb
563
- - spec/lib/flapjack/filters/acknowledgement_spec.rb
564
- - spec/lib/flapjack/filters/delays_spec.rb
565
- - spec/lib/flapjack/filters/ok_spec.rb
566
- - spec/lib/flapjack/filters/scheduled_maintenance_spec.rb
567
- - spec/lib/flapjack/filters/unscheduled_maintenance_spec.rb
520
+ - spec/lib/flapjack/data/medium_spec.rb
521
+ - spec/lib/flapjack/data/rule_spec.rb
522
+ - spec/lib/flapjack/data/scheduled_maintenance_spec.rb
523
+ - spec/lib/flapjack/data/unscheduled_maintenance_spec.rb
568
524
  - spec/lib/flapjack/gateways/aws_sns_spec.rb
569
525
  - spec/lib/flapjack/gateways/email_spec.rb
570
526
  - spec/lib/flapjack/gateways/jabber_spec.rb
571
- - spec/lib/flapjack/gateways/jsonapi/check_methods_spec.rb
572
- - spec/lib/flapjack/gateways/jsonapi/check_presenter_spec.rb
573
- - spec/lib/flapjack/gateways/jsonapi/contact_methods_spec.rb
574
- - spec/lib/flapjack/gateways/jsonapi/entity_methods_spec.rb
575
- - spec/lib/flapjack/gateways/jsonapi/medium_methods_spec.rb
576
- - spec/lib/flapjack/gateways/jsonapi/notification_rule_methods_spec.rb
577
- - spec/lib/flapjack/gateways/jsonapi/pagerduty_credential_methods_spec.rb
578
- - spec/lib/flapjack/gateways/jsonapi/report_methods_spec.rb
527
+ - spec/lib/flapjack/gateways/jsonapi/methods/check_links_spec.rb
528
+ - spec/lib/flapjack/gateways/jsonapi/methods/checks_spec.rb
529
+ - spec/lib/flapjack/gateways/jsonapi/methods/contact_links_spec.rb
530
+ - spec/lib/flapjack/gateways/jsonapi/methods/contacts_spec.rb
531
+ - spec/lib/flapjack/gateways/jsonapi/methods/events_spec.rb
532
+ - spec/lib/flapjack/gateways/jsonapi/methods/media_spec.rb
533
+ - spec/lib/flapjack/gateways/jsonapi/methods/medium_links_spec.rb
534
+ - spec/lib/flapjack/gateways/jsonapi/methods/metrics_spec.rb
535
+ - spec/lib/flapjack/gateways/jsonapi/methods/rule_links_spec.rb
536
+ - spec/lib/flapjack/gateways/jsonapi/methods/rules_spec.rb
537
+ - spec/lib/flapjack/gateways/jsonapi/methods/scheduled_maintenance_links_spec.rb
538
+ - spec/lib/flapjack/gateways/jsonapi/methods/scheduled_maintenances_spec.rb
539
+ - spec/lib/flapjack/gateways/jsonapi/methods/tag_links_spec.rb
540
+ - spec/lib/flapjack/gateways/jsonapi/methods/tags_spec.rb
541
+ - spec/lib/flapjack/gateways/jsonapi/methods/unscheduled_maintenance_links_spec.rb
542
+ - spec/lib/flapjack/gateways/jsonapi/methods/unscheduled_maintenances_spec.rb
579
543
  - spec/lib/flapjack/gateways/jsonapi_spec.rb
580
544
  - spec/lib/flapjack/gateways/oobetet_spec.rb
581
- - spec/lib/flapjack/gateways/pagerduty_spec.rb
545
+ - spec/lib/flapjack/gateways/pager_duty_spec.rb
582
546
  - spec/lib/flapjack/gateways/slack_spec.rb
547
+ - spec/lib/flapjack/gateways/sms_aspsms_spec.rb
583
548
  - spec/lib/flapjack/gateways/sms_messagenet_spec.rb
584
549
  - spec/lib/flapjack/gateways/sms_nexmo_spec.rb
585
550
  - spec/lib/flapjack/gateways/sms_twilio_spec.rb
586
- - spec/lib/flapjack/gateways/web/views/check.html.erb_spec.rb
587
- - spec/lib/flapjack/gateways/web/views/contact.html.erb_spec.rb
588
- - spec/lib/flapjack/gateways/web/views/index.html.erb_spec.rb
589
551
  - spec/lib/flapjack/gateways/web_spec.rb
590
552
  - spec/lib/flapjack/logger_spec.rb
591
553
  - spec/lib/flapjack/notifier_spec.rb
592
554
  - spec/lib/flapjack/pikelet_spec.rb
593
555
  - spec/lib/flapjack/processor_spec.rb
594
- - spec/lib/flapjack/redis_pool_spec.rb
556
+ - spec/lib/flapjack/redis_proxy_spec.rb
595
557
  - spec/lib/flapjack/utility_spec.rb
558
+ - spec/service_consumers/fixture_data.rb
596
559
  - spec/service_consumers/pact_helper.rb
597
- - spec/service_consumers/pacts/flapjack-diner_v1.0.json
560
+ - spec/service_consumers/pacts/flapjack-diner_v2.0.json
598
561
  - spec/service_consumers/provider_states_for_flapjack-diner.rb
562
+ - spec/service_consumers/provider_support.rb
599
563
  - spec/spec_helper.rb
600
564
  - spec/support/erb_view_helper.rb
565
+ - spec/support/factories.rb
601
566
  - spec/support/jsonapi_helper.rb
567
+ - spec/support/mock_logger.rb
602
568
  - spec/support/profile_all_formatter.rb
603
569
  - spec/support/uncolored_doc_formatter.rb
570
+ - spec/support/xmpp_comparable.rb
604
571
  - src/flapjack/event.go
605
572
  - src/flapjack/event_test.go
606
573
  - src/flapjack/transport.go
607
574
  - src/flapjack/transport_test.go
608
- - tasks/entities.rake
575
+ - tasks/dump_keys.rake
609
576
  - tasks/events.rake
610
- - tasks/profile.rake
577
+ - tasks/support/flapjack_config_benchmark.toml
611
578
  - tasks/support/flapjack_config_benchmark.yaml
612
- - tmp/acknowledge.rb
613
- - tmp/create_config_yaml.rb
614
- - tmp/create_event_ok.rb
615
- - tmp/create_event_unknown.rb
616
- - tmp/create_events_failure.rb
617
- - tmp/create_events_ok.rb
618
- - tmp/create_events_ok_fail_ack_ok.rb
619
- - tmp/create_events_ok_failure.rb
620
- - tmp/create_events_ok_failure_ack.rb
621
- - tmp/dummy_contacts.json
622
- - tmp/dummy_entities.json
623
- - tmp/generate_nagios_test_hosts.rb
624
- - tmp/notification_rules.rb
625
- - tmp/parse_config_yaml.rb
626
- - tmp/redis_find_spurious_unknown_states.rb
627
- - tmp/test_json_post.rb
628
- - tmp/test_notification_rules_api.rb
629
579
  homepage: http://flapjack.io/
630
580
  licenses:
631
581
  - MIT
@@ -641,12 +591,12 @@ required_ruby_version: !ruby/object:Gem::Requirement
641
591
  version: '0'
642
592
  required_rubygems_version: !ruby/object:Gem::Requirement
643
593
  requirements:
644
- - - ">="
594
+ - - ">"
645
595
  - !ruby/object:Gem::Version
646
- version: '0'
596
+ version: 1.3.1
647
597
  requirements: []
648
598
  rubyforge_project:
649
- rubygems_version: 2.4.5
599
+ rubygems_version: 2.4.5.1
650
600
  signing_key:
651
601
  specification_version: 4
652
602
  summary: Intelligent, scalable, distributed monitoring notification system.
@@ -655,7 +605,6 @@ test_files:
655
605
  - features/cli.feature
656
606
  - features/cli_flapjack-feed-events.feature
657
607
  - features/cli_flapjack-nagios-receiver.feature
658
- - features/cli_flapjack-populator.feature
659
608
  - features/cli_flapper.feature
660
609
  - features/cli_purge.feature
661
610
  - features/cli_receive-events.feature
@@ -674,55 +623,59 @@ test_files:
674
623
  - features/steps/time_travel_steps.rb
675
624
  - features/support/daemons.rb
676
625
  - features/support/env.rb
677
- - features/support/silent_system.rb
626
+ - spec/lib/flapjack/configuration_spec.rb
678
627
  - spec/lib/flapjack/coordinator_spec.rb
628
+ - spec/lib/flapjack/data/check_spec.rb
679
629
  - spec/lib/flapjack/data/contact_spec.rb
680
- - spec/lib/flapjack/data/entity_check_spec.rb
681
- - spec/lib/flapjack/data/entity_spec.rb
682
630
  - spec/lib/flapjack/data/event_spec.rb
683
- - spec/lib/flapjack/data/message_spec.rb
684
- - spec/lib/flapjack/data/migration_spec.rb
685
- - spec/lib/flapjack/data/notification_rule_spec.rb
686
- - spec/lib/flapjack/data/notification_spec.rb
687
- - spec/lib/flapjack/data/semaphore_spec.rb
688
- - spec/lib/flapjack/filters/acknowledgement_spec.rb
689
- - spec/lib/flapjack/filters/delays_spec.rb
690
- - spec/lib/flapjack/filters/ok_spec.rb
691
- - spec/lib/flapjack/filters/scheduled_maintenance_spec.rb
692
- - spec/lib/flapjack/filters/unscheduled_maintenance_spec.rb
631
+ - spec/lib/flapjack/data/medium_spec.rb
632
+ - spec/lib/flapjack/data/rule_spec.rb
633
+ - spec/lib/flapjack/data/scheduled_maintenance_spec.rb
634
+ - spec/lib/flapjack/data/unscheduled_maintenance_spec.rb
693
635
  - spec/lib/flapjack/gateways/aws_sns_spec.rb
694
636
  - spec/lib/flapjack/gateways/email_spec.rb
695
637
  - spec/lib/flapjack/gateways/jabber_spec.rb
696
- - spec/lib/flapjack/gateways/jsonapi/check_methods_spec.rb
697
- - spec/lib/flapjack/gateways/jsonapi/check_presenter_spec.rb
698
- - spec/lib/flapjack/gateways/jsonapi/contact_methods_spec.rb
699
- - spec/lib/flapjack/gateways/jsonapi/entity_methods_spec.rb
700
- - spec/lib/flapjack/gateways/jsonapi/medium_methods_spec.rb
701
- - spec/lib/flapjack/gateways/jsonapi/notification_rule_methods_spec.rb
702
- - spec/lib/flapjack/gateways/jsonapi/pagerduty_credential_methods_spec.rb
703
- - spec/lib/flapjack/gateways/jsonapi/report_methods_spec.rb
638
+ - spec/lib/flapjack/gateways/jsonapi/methods/check_links_spec.rb
639
+ - spec/lib/flapjack/gateways/jsonapi/methods/checks_spec.rb
640
+ - spec/lib/flapjack/gateways/jsonapi/methods/contact_links_spec.rb
641
+ - spec/lib/flapjack/gateways/jsonapi/methods/contacts_spec.rb
642
+ - spec/lib/flapjack/gateways/jsonapi/methods/events_spec.rb
643
+ - spec/lib/flapjack/gateways/jsonapi/methods/media_spec.rb
644
+ - spec/lib/flapjack/gateways/jsonapi/methods/medium_links_spec.rb
645
+ - spec/lib/flapjack/gateways/jsonapi/methods/metrics_spec.rb
646
+ - spec/lib/flapjack/gateways/jsonapi/methods/rule_links_spec.rb
647
+ - spec/lib/flapjack/gateways/jsonapi/methods/rules_spec.rb
648
+ - spec/lib/flapjack/gateways/jsonapi/methods/scheduled_maintenance_links_spec.rb
649
+ - spec/lib/flapjack/gateways/jsonapi/methods/scheduled_maintenances_spec.rb
650
+ - spec/lib/flapjack/gateways/jsonapi/methods/tag_links_spec.rb
651
+ - spec/lib/flapjack/gateways/jsonapi/methods/tags_spec.rb
652
+ - spec/lib/flapjack/gateways/jsonapi/methods/unscheduled_maintenance_links_spec.rb
653
+ - spec/lib/flapjack/gateways/jsonapi/methods/unscheduled_maintenances_spec.rb
704
654
  - spec/lib/flapjack/gateways/jsonapi_spec.rb
705
655
  - spec/lib/flapjack/gateways/oobetet_spec.rb
706
- - spec/lib/flapjack/gateways/pagerduty_spec.rb
656
+ - spec/lib/flapjack/gateways/pager_duty_spec.rb
707
657
  - spec/lib/flapjack/gateways/slack_spec.rb
658
+ - spec/lib/flapjack/gateways/sms_aspsms_spec.rb
708
659
  - spec/lib/flapjack/gateways/sms_messagenet_spec.rb
709
660
  - spec/lib/flapjack/gateways/sms_nexmo_spec.rb
710
661
  - spec/lib/flapjack/gateways/sms_twilio_spec.rb
711
- - spec/lib/flapjack/gateways/web/views/check.html.erb_spec.rb
712
- - spec/lib/flapjack/gateways/web/views/contact.html.erb_spec.rb
713
- - spec/lib/flapjack/gateways/web/views/index.html.erb_spec.rb
714
662
  - spec/lib/flapjack/gateways/web_spec.rb
715
663
  - spec/lib/flapjack/logger_spec.rb
716
664
  - spec/lib/flapjack/notifier_spec.rb
717
665
  - spec/lib/flapjack/pikelet_spec.rb
718
666
  - spec/lib/flapjack/processor_spec.rb
719
- - spec/lib/flapjack/redis_pool_spec.rb
667
+ - spec/lib/flapjack/redis_proxy_spec.rb
720
668
  - spec/lib/flapjack/utility_spec.rb
669
+ - spec/service_consumers/fixture_data.rb
721
670
  - spec/service_consumers/pact_helper.rb
722
- - spec/service_consumers/pacts/flapjack-diner_v1.0.json
671
+ - spec/service_consumers/pacts/flapjack-diner_v2.0.json
723
672
  - spec/service_consumers/provider_states_for_flapjack-diner.rb
673
+ - spec/service_consumers/provider_support.rb
724
674
  - spec/spec_helper.rb
725
675
  - spec/support/erb_view_helper.rb
676
+ - spec/support/factories.rb
726
677
  - spec/support/jsonapi_helper.rb
678
+ - spec/support/mock_logger.rb
727
679
  - spec/support/profile_all_formatter.rb
728
680
  - spec/support/uncolored_doc_formatter.rb
681
+ - spec/support/xmpp_comparable.rb