snowman-io 0.0.4 → 0.0.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (101) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +3 -0
  3. data/README.md +4 -6
  4. data/bin/snowman +1 -1
  5. data/lib/config/mongoid.yml +5 -0
  6. data/lib/snowman-io.rb +62 -30
  7. data/lib/snowman-io/aggregate.rb +97 -0
  8. data/lib/snowman-io/api.rb +33 -65
  9. data/lib/snowman-io/api/agent.rb +27 -0
  10. data/lib/snowman-io/api/apps.rb +45 -0
  11. data/lib/snowman-io/api/auth_helpers.rb +76 -0
  12. data/lib/snowman-io/api/checks.rb +59 -0
  13. data/lib/snowman-io/api/extra/meteor.rb +45 -0
  14. data/lib/snowman-io/api/fridge.rb +14 -0
  15. data/lib/snowman-io/api/info.rb +30 -0
  16. data/lib/snowman-io/api/metrics.rb +115 -0
  17. data/lib/snowman-io/api/users.rb +231 -0
  18. data/lib/snowman-io/cli.rb +69 -0
  19. data/lib/snowman-io/launcher.rb +12 -11
  20. data/lib/snowman-io/loop/check_processor.rb +29 -0
  21. data/lib/snowman-io/loop/checks.rb +59 -0
  22. data/lib/snowman-io/loop/main.rb +43 -0
  23. data/lib/snowman-io/loop/ping.rb +25 -0
  24. data/lib/snowman-io/migration.rb +79 -0
  25. data/lib/snowman-io/models/aggregation.rb +15 -0
  26. data/lib/snowman-io/models/app.rb +61 -0
  27. data/lib/snowman-io/models/check.rb +48 -0
  28. data/lib/snowman-io/models/concerns/tokenable.rb +15 -0
  29. data/lib/snowman-io/models/data_point.rb +9 -0
  30. data/lib/snowman-io/models/deleted.rb +9 -0
  31. data/lib/snowman-io/models/following.rb +8 -0
  32. data/lib/snowman-io/models/metric.rb +36 -0
  33. data/lib/snowman-io/models/setting.rb +24 -0
  34. data/lib/snowman-io/models/user.rb +73 -0
  35. data/lib/snowman-io/options.rb +11 -3
  36. data/lib/snowman-io/report_mailer.rb +88 -0
  37. data/lib/snowman-io/reports.rb +16 -0
  38. data/lib/snowman-io/ui/AUTO_GENERATED_FOLDER +2 -0
  39. data/lib/snowman-io/ui/assets/ui-0e39dafcb798020fb855e325931c8451.css +1 -0
  40. data/lib/snowman-io/ui/assets/ui-d30809d0ae0a003d841fa95a352d624b.js +9 -0
  41. data/lib/snowman-io/ui/assets/vendor-7edfd1432c1bbd806306d5583c75b1fc.css +5 -0
  42. data/lib/snowman-io/ui/assets/vendor-c22e2ccc87c9bc7609b95939c308bc7f.js +24 -0
  43. data/lib/snowman-io/{api/public/bootstrap → ui/bootstrap-3.3.1}/css/bootstrap-theme.css +0 -0
  44. data/lib/snowman-io/{api/public/bootstrap → ui/bootstrap-3.3.1}/css/bootstrap-theme.css.map +0 -0
  45. data/lib/snowman-io/{api/public/bootstrap → ui/bootstrap-3.3.1}/css/bootstrap-theme.min.css +0 -0
  46. data/lib/snowman-io/{api/public/bootstrap → ui/bootstrap-3.3.1}/css/bootstrap.css +0 -0
  47. data/lib/snowman-io/{api/public/bootstrap → ui/bootstrap-3.3.1}/css/bootstrap.css.map +0 -0
  48. data/lib/snowman-io/{api/public/bootstrap → ui/bootstrap-3.3.1}/css/bootstrap.min.css +0 -0
  49. data/lib/snowman-io/{api/public/bootstrap → ui/bootstrap-3.3.1}/fonts/glyphicons-halflings-regular.eot +0 -0
  50. data/lib/snowman-io/{api/public/bootstrap → ui/bootstrap-3.3.1}/fonts/glyphicons-halflings-regular.svg +0 -0
  51. data/lib/snowman-io/{api/public/bootstrap → ui/bootstrap-3.3.1}/fonts/glyphicons-halflings-regular.ttf +0 -0
  52. data/lib/snowman-io/{api/public/bootstrap → ui/bootstrap-3.3.1}/fonts/glyphicons-halflings-regular.woff +0 -0
  53. data/lib/snowman-io/{api/public/bootstrap → ui/bootstrap-3.3.1}/js/bootstrap.js +0 -0
  54. data/lib/snowman-io/{api/public/bootstrap → ui/bootstrap-3.3.1}/js/bootstrap.min.js +0 -0
  55. data/lib/snowman-io/{api/public/bootstrap → ui/bootstrap-3.3.1}/js/npm.js +0 -0
  56. data/lib/snowman-io/ui/crossdomain.xml +15 -0
  57. data/lib/snowman-io/ui/fonts/glyphicons-halflings-regular.eot +0 -0
  58. data/lib/snowman-io/ui/fonts/glyphicons-halflings-regular.svg +229 -0
  59. data/lib/snowman-io/ui/fonts/glyphicons-halflings-regular.ttf +0 -0
  60. data/lib/snowman-io/ui/fonts/glyphicons-halflings-regular.woff +0 -0
  61. data/lib/snowman-io/ui/index.html +175 -0
  62. data/lib/snowman-io/ui/robots.txt +2 -0
  63. data/lib/snowman-io/utils.rb +66 -0
  64. data/lib/snowman-io/version.rb +1 -1
  65. data/lib/snowman-io/views/layouts/custom.css +42 -0
  66. data/lib/snowman-io/views/layouts/main.html.erb +38 -0
  67. data/lib/snowman-io/views/layouts/styles.css +264 -0
  68. data/lib/snowman-io/views/layouts/transactional-email-templates-LICENSE +21 -0
  69. data/lib/snowman-io/views/report_mailer/check_triggered.html.erb +16 -0
  70. data/lib/snowman-io/views/report_mailer/checks/_human_last_value_limit.html.erb +2 -0
  71. data/lib/snowman-io/views/report_mailer/checks/_human_prev_day_datapoints_limit.html.erb +2 -0
  72. data/lib/snowman-io/views/report_mailer/daily_report.html.erb +40 -0
  73. data/lib/snowman-io/views/report_mailer/restore_password.html.erb +28 -0
  74. data/lib/snowman-io/views/report_mailer/send_invite.html.erb +32 -0
  75. data/lib/snowman-io/web.rb +28 -0
  76. data/lib/snowman-io/web_server.rb +107 -0
  77. data/snowman-io.gemspec +15 -5
  78. metadata +220 -49
  79. data/lib/snowman-io/api/public/README.md +0 -36
  80. data/lib/snowman-io/api/public/css/normalize.css +0 -406
  81. data/lib/snowman-io/api/public/css/style.css +0 -4
  82. data/lib/snowman-io/api/public/js/app.js +0 -13
  83. data/lib/snowman-io/api/public/js/libs/ember-1.8.1.js +0 -49740
  84. data/lib/snowman-io/api/public/js/libs/handlebars-v1.3.0.js +0 -2746
  85. data/lib/snowman-io/api/public/js/libs/jquery-1.10.2.js +0 -9789
  86. data/lib/snowman-io/api/public/tests/runner.css +0 -14
  87. data/lib/snowman-io/api/public/tests/runner.js +0 -13
  88. data/lib/snowman-io/api/public/tests/tests.js +0 -30
  89. data/lib/snowman-io/api/public/tests/vendor/qunit-1.12.0.css +0 -244
  90. data/lib/snowman-io/api/public/tests/vendor/qunit-1.12.0.js +0 -2212
  91. data/lib/snowman-io/api/views/index.erb +0 -26
  92. data/lib/snowman-io/api/views/layout.erb +0 -24
  93. data/lib/snowman-io/api/views/login.erb +0 -21
  94. data/lib/snowman-io/api/views/unpacking.erb +0 -21
  95. data/lib/snowman-io/check.rb +0 -49
  96. data/lib/snowman-io/check_result.rb +0 -15
  97. data/lib/snowman-io/checks/hosted_graphite.rb +0 -23
  98. data/lib/snowman-io/handler.rb +0 -27
  99. data/lib/snowman-io/notifiers/slack.rb +0 -76
  100. data/lib/snowman-io/processor.rb +0 -32
  101. data/lib/snowman-io/scheduler.rb +0 -42
@@ -1,36 +0,0 @@
1
- starter-kit
2
- ===========
3
-
4
- A starter kit for Ember
5
-
6
- Your Ember.js project is almost ready! Here's how to get started:
7
-
8
- - Start writing your app in `js/app.js`.
9
-
10
- - Describe your application HTML in `index.html`.
11
-
12
- - During development, you can link to `js/libs/ember-*.js` to get the
13
- unminified version of Ember.js.
14
-
15
- - Add CSS to `css/style.css`.
16
-
17
- - Open `index.html` in your browser.
18
-
19
- Tests
20
- =====
21
-
22
- This starter kit comes with an integration test sample, written for QUnit runner.
23
-
24
- You can run the tests by opening the `index.html?test` page in your browser.
25
-
26
- The test is located in the `tests/tests.js` file. You can see how such an
27
- integration test should be written, using QUnit assertions and ember-testing helpers.
28
-
29
- For more information about ember-testing package see [ember-testing](http://emberjs.com/guides/testing/integration/).
30
-
31
- For more information about the QUnit testing framework, see [QUnit](http://qunitjs.com/).
32
-
33
- Contact
34
- ====
35
-
36
- [www.emberjs.com](http://www.emberjs.com)
@@ -1,406 +0,0 @@
1
- /*! normalize.css v2.1.3 | MIT License | git.io/normalize */
2
-
3
- /* ==========================================================================
4
- HTML5 display definitions
5
- ========================================================================== */
6
-
7
- /**
8
- * Correct `block` display not defined in IE 8/9.
9
- */
10
-
11
- article,
12
- aside,
13
- details,
14
- figcaption,
15
- figure,
16
- footer,
17
- header,
18
- hgroup,
19
- main,
20
- nav,
21
- section,
22
- summary {
23
- display: block;
24
- }
25
-
26
- /**
27
- * Correct `inline-block` display not defined in IE 8/9.
28
- */
29
-
30
- audio,
31
- canvas,
32
- video {
33
- display: inline-block;
34
- }
35
-
36
- /**
37
- * Prevent modern browsers from displaying `audio` without controls.
38
- * Remove excess height in iOS 5 devices.
39
- */
40
-
41
- audio:not([controls]) {
42
- display: none;
43
- height: 0;
44
- }
45
-
46
- /**
47
- * Address `[hidden]` styling not present in IE 8/9.
48
- * Hide the `template` element in IE, Safari, and Firefox < 22.
49
- */
50
-
51
- [hidden],
52
- template {
53
- display: none;
54
- }
55
-
56
- /* ==========================================================================
57
- Base
58
- ========================================================================== */
59
-
60
- /**
61
- * 1. Set default font family to sans-serif.
62
- * 2. Prevent iOS text size adjust after orientation change, without disabling
63
- * user zoom.
64
- */
65
-
66
- html {
67
- font-family: sans-serif; /* 1 */
68
- -ms-text-size-adjust: 100%; /* 2 */
69
- -webkit-text-size-adjust: 100%; /* 2 */
70
- }
71
-
72
- /**
73
- * Remove default margin.
74
- */
75
-
76
- body {
77
- margin: 0;
78
- }
79
-
80
- /* ==========================================================================
81
- Links
82
- ========================================================================== */
83
-
84
- /**
85
- * Remove the gray background color from active links in IE 10.
86
- */
87
-
88
- a {
89
- background: transparent;
90
- }
91
-
92
- /**
93
- * Address `outline` inconsistency between Chrome and other browsers.
94
- */
95
-
96
- a:focus {
97
- outline: thin dotted;
98
- }
99
-
100
- /**
101
- * Improve readability when focused and also mouse hovered in all browsers.
102
- */
103
-
104
- a:active,
105
- a:hover {
106
- outline: 0;
107
- }
108
-
109
- /* ==========================================================================
110
- Typography
111
- ========================================================================== */
112
-
113
- /**
114
- * Address variable `h1` font-size and margin within `section` and `article`
115
- * contexts in Firefox 4+, Safari 5, and Chrome.
116
- */
117
-
118
- h1 {
119
- font-size: 2em;
120
- margin: 0.67em 0;
121
- }
122
-
123
- /**
124
- * Address styling not present in IE 8/9, Safari 5, and Chrome.
125
- */
126
-
127
- abbr[title] {
128
- border-bottom: 1px dotted;
129
- }
130
-
131
- /**
132
- * Address style set to `bolder` in Firefox 4+, Safari 5, and Chrome.
133
- */
134
-
135
- b,
136
- strong {
137
- font-weight: bold;
138
- }
139
-
140
- /**
141
- * Address styling not present in Safari 5 and Chrome.
142
- */
143
-
144
- dfn {
145
- font-style: italic;
146
- }
147
-
148
- /**
149
- * Address differences between Firefox and other browsers.
150
- */
151
-
152
- hr {
153
- -moz-box-sizing: content-box;
154
- box-sizing: content-box;
155
- height: 0;
156
- }
157
-
158
- /**
159
- * Address styling not present in IE 8/9.
160
- */
161
-
162
- mark {
163
- background: #ff0;
164
- color: #000;
165
- }
166
-
167
- /**
168
- * Correct font family set oddly in Safari 5 and Chrome.
169
- */
170
-
171
- code,
172
- kbd,
173
- pre,
174
- samp {
175
- font-family: monospace, serif;
176
- font-size: 1em;
177
- }
178
-
179
- /**
180
- * Improve readability of pre-formatted text in all browsers.
181
- */
182
-
183
- pre {
184
- white-space: pre-wrap;
185
- }
186
-
187
- /**
188
- * Set consistent quote types.
189
- */
190
-
191
- q {
192
- quotes: "\201C" "\201D" "\2018" "\2019";
193
- }
194
-
195
- /**
196
- * Address inconsistent and variable font size in all browsers.
197
- */
198
-
199
- small {
200
- font-size: 80%;
201
- }
202
-
203
- /**
204
- * Prevent `sub` and `sup` affecting `line-height` in all browsers.
205
- */
206
-
207
- sub,
208
- sup {
209
- font-size: 75%;
210
- line-height: 0;
211
- position: relative;
212
- vertical-align: baseline;
213
- }
214
-
215
- sup {
216
- top: -0.5em;
217
- }
218
-
219
- sub {
220
- bottom: -0.25em;
221
- }
222
-
223
- /* ==========================================================================
224
- Embedded content
225
- ========================================================================== */
226
-
227
- /**
228
- * Remove border when inside `a` element in IE 8/9.
229
- */
230
-
231
- img {
232
- border: 0;
233
- }
234
-
235
- /**
236
- * Correct overflow displayed oddly in IE 9.
237
- */
238
-
239
- svg:not(:root) {
240
- overflow: hidden;
241
- }
242
-
243
- /* ==========================================================================
244
- Figures
245
- ========================================================================== */
246
-
247
- /**
248
- * Address margin not present in IE 8/9 and Safari 5.
249
- */
250
-
251
- figure {
252
- margin: 0;
253
- }
254
-
255
- /* ==========================================================================
256
- Forms
257
- ========================================================================== */
258
-
259
- /**
260
- * Define consistent border, margin, and padding.
261
- */
262
-
263
- fieldset {
264
- border: 1px solid #c0c0c0;
265
- margin: 0 2px;
266
- padding: 0.35em 0.625em 0.75em;
267
- }
268
-
269
- /**
270
- * 1. Correct `color` not being inherited in IE 8/9.
271
- * 2. Remove padding so people aren't caught out if they zero out fieldsets.
272
- */
273
-
274
- legend {
275
- border: 0; /* 1 */
276
- padding: 0; /* 2 */
277
- }
278
-
279
- /**
280
- * 1. Correct font family not being inherited in all browsers.
281
- * 2. Correct font size not being inherited in all browsers.
282
- * 3. Address margins set differently in Firefox 4+, Safari 5, and Chrome.
283
- */
284
-
285
- button,
286
- input,
287
- select,
288
- textarea {
289
- font-family: inherit; /* 1 */
290
- font-size: 100%; /* 2 */
291
- margin: 0; /* 3 */
292
- }
293
-
294
- /**
295
- * Address Firefox 4+ setting `line-height` on `input` using `!important` in
296
- * the UA stylesheet.
297
- */
298
-
299
- button,
300
- input {
301
- line-height: normal;
302
- }
303
-
304
- /**
305
- * Address inconsistent `text-transform` inheritance for `button` and `select`.
306
- * All other form control elements do not inherit `text-transform` values.
307
- * Correct `button` style inheritance in Chrome, Safari 5+, and IE 8+.
308
- * Correct `select` style inheritance in Firefox 4+ and Opera.
309
- */
310
-
311
- button,
312
- select {
313
- text-transform: none;
314
- }
315
-
316
- /**
317
- * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
318
- * and `video` controls.
319
- * 2. Correct inability to style clickable `input` types in iOS.
320
- * 3. Improve usability and consistency of cursor style between image-type
321
- * `input` and others.
322
- */
323
-
324
- button,
325
- html input[type="button"], /* 1 */
326
- input[type="reset"],
327
- input[type="submit"] {
328
- -webkit-appearance: button; /* 2 */
329
- cursor: pointer; /* 3 */
330
- }
331
-
332
- /**
333
- * Re-set default cursor for disabled elements.
334
- */
335
-
336
- button[disabled],
337
- html input[disabled] {
338
- cursor: default;
339
- }
340
-
341
- /**
342
- * 1. Address box sizing set to `content-box` in IE 8/9/10.
343
- * 2. Remove excess padding in IE 8/9/10.
344
- */
345
-
346
- input[type="checkbox"],
347
- input[type="radio"] {
348
- box-sizing: border-box; /* 1 */
349
- padding: 0; /* 2 */
350
- }
351
-
352
- /**
353
- * 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome.
354
- * 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome
355
- * (include `-moz` to future-proof).
356
- */
357
-
358
- input[type="search"] {
359
- -webkit-appearance: textfield; /* 1 */
360
- -moz-box-sizing: content-box;
361
- -webkit-box-sizing: content-box; /* 2 */
362
- box-sizing: content-box;
363
- }
364
-
365
- /**
366
- * Remove inner padding and search cancel button in Safari 5 and Chrome
367
- * on OS X.
368
- */
369
-
370
- input[type="search"]::-webkit-search-cancel-button,
371
- input[type="search"]::-webkit-search-decoration {
372
- -webkit-appearance: none;
373
- }
374
-
375
- /**
376
- * Remove inner padding and border in Firefox 4+.
377
- */
378
-
379
- button::-moz-focus-inner,
380
- input::-moz-focus-inner {
381
- border: 0;
382
- padding: 0;
383
- }
384
-
385
- /**
386
- * 1. Remove default vertical scrollbar in IE 8/9.
387
- * 2. Improve readability and alignment in all browsers.
388
- */
389
-
390
- textarea {
391
- overflow: auto; /* 1 */
392
- vertical-align: top; /* 2 */
393
- }
394
-
395
- /* ==========================================================================
396
- Tables
397
- ========================================================================== */
398
-
399
- /**
400
- * Remove most spacing between table cells.
401
- */
402
-
403
- table {
404
- border-collapse: collapse;
405
- border-spacing: 0;
406
- }
@@ -1,4 +0,0 @@
1
- /* Put your CSS here */
2
- .ember-application {
3
- margin: 20px;
4
- }
@@ -1,13 +0,0 @@
1
- App = Ember.Application.create();
2
-
3
- App.Router.map(function() {
4
- // put your routes here
5
- });
6
-
7
- App.IndexRoute = Ember.Route.extend({
8
- model: function() {
9
- return {
10
- version: $('meta[name=snowman-io-version]').attr("content")
11
- };
12
- }
13
- });