esp_sdk 2.0.0 → 2.1.0

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 (148) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +1 -0
  3. data/CHANGELOG.md +6 -1
  4. data/Gemfile.lock +11 -1
  5. data/README.md +287 -28
  6. data/bin/esp +15 -0
  7. data/esp_sdk.gemspec +2 -0
  8. data/lib/esp/aws_clients.rb +60 -0
  9. data/lib/esp/commands/add_external_account.rb +57 -0
  10. data/lib/esp/commands/commands_tasks.rb +106 -0
  11. data/lib/esp/commands/console.rb +68 -0
  12. data/lib/esp/extensions/active_resource/formats/json_api_format.rb +12 -4
  13. data/lib/esp/extensions/active_resource/paginated_collection.rb +5 -5
  14. data/lib/esp/extensions/active_resource/validations.rb +1 -1
  15. data/lib/esp/external_account_creator.rb +77 -0
  16. data/lib/esp/resources/alert.rb +30 -34
  17. data/lib/esp/resources/cloud_trail_event.rb +5 -0
  18. data/lib/esp/resources/contact_request.rb +6 -5
  19. data/lib/esp/resources/custom_signature.rb +32 -56
  20. data/lib/esp/resources/dashboard.rb +8 -1
  21. data/lib/esp/resources/external_account.rb +27 -19
  22. data/lib/esp/resources/organization.rb +27 -3
  23. data/lib/esp/resources/region.rb +15 -3
  24. data/lib/esp/resources/report.rb +28 -24
  25. data/lib/esp/resources/resource.rb +26 -10
  26. data/lib/esp/resources/service.rb +5 -0
  27. data/lib/esp/resources/signature.rb +28 -12
  28. data/lib/esp/resources/stat.rb +21 -2
  29. data/lib/esp/resources/stat_custom_signature.rb +30 -4
  30. data/lib/esp/resources/stat_region.rb +29 -3
  31. data/lib/esp/resources/stat_service.rb +29 -3
  32. data/lib/esp/resources/stat_signature.rb +29 -3
  33. data/lib/esp/resources/sub_organization.rb +27 -3
  34. data/lib/esp/resources/suppression/region.rb +14 -32
  35. data/lib/esp/resources/suppression/signature.rb +14 -40
  36. data/lib/esp/resources/suppression/unique_identifier.rb +8 -6
  37. data/lib/esp/resources/suppression.rb +43 -5
  38. data/lib/esp/resources/tag.rb +5 -0
  39. data/lib/esp/resources/team.rb +33 -9
  40. data/lib/esp/resources/user.rb +29 -3
  41. data/lib/esp/version.rb +1 -1
  42. data/lib/esp.rb +25 -5
  43. data/test/esp/aws_clients_test.rb +101 -0
  44. data/test/esp/extensions/active_resource/formats/json_api_format_test.rb +26 -12
  45. data/test/esp/extensions/active_resource/paginated_collection_test.rb +93 -72
  46. data/test/esp/extensions/active_resource/validations_test.rb +2 -12
  47. data/test/esp/external_account_creator_test.rb +153 -0
  48. data/test/esp/resources/alert_test.rb +71 -33
  49. data/test/esp/resources/cloud_trail_event_test.rb +9 -1
  50. data/test/esp/resources/contact_request_test.rb +8 -0
  51. data/test/esp/resources/custom_signature_test.rb +8 -0
  52. data/test/esp/resources/dashboard_test.rb +8 -0
  53. data/test/esp/resources/external_account_test.rb +8 -0
  54. data/test/esp/resources/metadata_test.rb +1 -1
  55. data/test/esp/resources/organization_test.rb +8 -0
  56. data/test/esp/resources/region_test.rb +12 -4
  57. data/test/esp/resources/report_test.rb +13 -4
  58. data/test/esp/resources/resource_test.rb +208 -64
  59. data/test/esp/resources/service_test.rb +8 -0
  60. data/test/esp/resources/signature_test.rb +15 -9
  61. data/test/esp/resources/stat_custom_signature_test.rb +9 -1
  62. data/test/esp/resources/stat_region_test.rb +23 -1
  63. data/test/esp/resources/stat_service_test.rb +23 -1
  64. data/test/esp/resources/stat_signature_test.rb +23 -1
  65. data/test/esp/resources/stat_test.rb +52 -8
  66. data/test/esp/resources/sub_organization_test.rb +8 -0
  67. data/test/esp/resources/suppression/region_test.rb +10 -2
  68. data/test/esp/resources/suppression/signature_test.rb +10 -2
  69. data/test/esp/resources/suppression/unique_identifier_test.rb +10 -2
  70. data/test/esp/resources/suppression_test.rb +74 -14
  71. data/test/esp/resources/tag_test.rb +9 -1
  72. data/test/esp/resources/team_test.rb +8 -0
  73. data/test/esp/resources/user_test.rb +49 -19
  74. data/test/esp_test.rb +19 -1
  75. data/test/factories/alerts.rb +70 -0
  76. data/test/factories/organizations.rb +2 -2
  77. data/test/factories/regions.rb +1 -1
  78. data/test/factories/sub_organizations.rb +1 -1
  79. data/test/factories/suppressions.rb +109 -3
  80. data/test/factories/users.rb +65 -2
  81. data/test/test_helper.rb +9 -8
  82. metadata +41 -69
  83. data/bin/esp_console +0 -67
  84. data/rdoc/ActiveResource/Formats.html +0 -178
  85. data/rdoc/ActiveResource/PaginatedCollection.html +0 -912
  86. data/rdoc/ActiveResource.html +0 -182
  87. data/rdoc/ESP/Alert.html +0 -808
  88. data/rdoc/ESP/CloudTrailEvent.html +0 -377
  89. data/rdoc/ESP/ContactRequest.html +0 -368
  90. data/rdoc/ESP/CustomSignature.html +0 -748
  91. data/rdoc/ESP/Dashboard.html +0 -357
  92. data/rdoc/ESP/ExternalAccount.html +0 -567
  93. data/rdoc/ESP/Metadata.html +0 -411
  94. data/rdoc/ESP/Organization.html +0 -592
  95. data/rdoc/ESP/Region.html +0 -401
  96. data/rdoc/ESP/Report.html +0 -624
  97. data/rdoc/ESP/Service.html +0 -382
  98. data/rdoc/ESP/Signature.html +0 -557
  99. data/rdoc/ESP/Stat.html +0 -1780
  100. data/rdoc/ESP/StatCustomSignature.html +0 -1601
  101. data/rdoc/ESP/StatRegion.html +0 -1600
  102. data/rdoc/ESP/StatService.html +0 -1600
  103. data/rdoc/ESP/StatSignature.html +0 -1600
  104. data/rdoc/ESP/SubOrganization.html +0 -542
  105. data/rdoc/ESP/Suppression/Region.html +0 -456
  106. data/rdoc/ESP/Suppression/Signature.html +0 -472
  107. data/rdoc/ESP/Suppression/UniqueIdentifier.html +0 -419
  108. data/rdoc/ESP/Suppression.html +0 -651
  109. data/rdoc/ESP/Tag.html +0 -373
  110. data/rdoc/ESP/Team.html +0 -586
  111. data/rdoc/ESP/User.html +0 -485
  112. data/rdoc/ESP.html +0 -549
  113. data/rdoc/README_md.html +0 -503
  114. data/rdoc/created.rid +0 -31
  115. data/rdoc/images/add.png +0 -0
  116. data/rdoc/images/arrow_up.png +0 -0
  117. data/rdoc/images/brick.png +0 -0
  118. data/rdoc/images/brick_link.png +0 -0
  119. data/rdoc/images/bug.png +0 -0
  120. data/rdoc/images/bullet_black.png +0 -0
  121. data/rdoc/images/bullet_toggle_minus.png +0 -0
  122. data/rdoc/images/bullet_toggle_plus.png +0 -0
  123. data/rdoc/images/date.png +0 -0
  124. data/rdoc/images/delete.png +0 -0
  125. data/rdoc/images/find.png +0 -0
  126. data/rdoc/images/loadingAnimation.gif +0 -0
  127. data/rdoc/images/macFFBgHack.png +0 -0
  128. data/rdoc/images/package.png +0 -0
  129. data/rdoc/images/page_green.png +0 -0
  130. data/rdoc/images/page_white_text.png +0 -0
  131. data/rdoc/images/page_white_width.png +0 -0
  132. data/rdoc/images/plugin.png +0 -0
  133. data/rdoc/images/ruby.png +0 -0
  134. data/rdoc/images/tag_blue.png +0 -0
  135. data/rdoc/images/tag_green.png +0 -0
  136. data/rdoc/images/transparent.png +0 -0
  137. data/rdoc/images/wrench.png +0 -0
  138. data/rdoc/images/wrench_orange.png +0 -0
  139. data/rdoc/images/zoom.png +0 -0
  140. data/rdoc/index.html +0 -136
  141. data/rdoc/js/darkfish.js +0 -155
  142. data/rdoc/js/jquery.js +0 -4
  143. data/rdoc/js/navigation.js +0 -142
  144. data/rdoc/js/search.js +0 -94
  145. data/rdoc/js/search_index.js +0 -1
  146. data/rdoc/js/searcher.js +0 -228
  147. data/rdoc/rdoc.css +0 -595
  148. data/rdoc/table_of_contents.html +0 -942
@@ -1,419 +0,0 @@
1
- <!DOCTYPE html>
2
-
3
- <html>
4
- <head>
5
- <meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
6
-
7
- <title>class ESP::Suppression::UniqueIdentifier - ESPSDK</title>
8
-
9
- <link type="text/css" media="screen" href="../../rdoc.css" rel="stylesheet">
10
-
11
- <script type="text/javascript">
12
- var rdoc_rel_prefix = "../../";
13
- </script>
14
-
15
- <script type="text/javascript" charset="utf-8" src="../../js/jquery.js"></script>
16
- <script type="text/javascript" charset="utf-8" src="../../js/navigation.js"></script>
17
- <script type="text/javascript" charset="utf-8" src="../../js/search_index.js"></script>
18
- <script type="text/javascript" charset="utf-8" src="../../js/search.js"></script>
19
- <script type="text/javascript" charset="utf-8" src="../../js/searcher.js"></script>
20
- <script type="text/javascript" charset="utf-8" src="../../js/darkfish.js"></script>
21
-
22
-
23
- <body id="top" class="class">
24
- <nav id="metadata">
25
- <nav id="home-section" class="section">
26
- <h3 class="section-header">
27
- <a href="../../index.html">Home</a>
28
- <a href="../../table_of_contents.html#classes">Classes</a>
29
- <a href="../../table_of_contents.html#methods">Methods</a>
30
- </h3>
31
- </nav>
32
-
33
-
34
- <nav id="search-section" class="section project-section" class="initially-hidden">
35
- <form action="#" method="get" accept-charset="utf-8">
36
- <h3 class="section-header">
37
- <input type="text" name="search" placeholder="Search" id="search-field"
38
- title="Type to search, Up and Down to navigate, Enter to load">
39
- </h3>
40
- </form>
41
-
42
- <ul id="search-results" class="initially-hidden"></ul>
43
- </nav>
44
-
45
-
46
-
47
-
48
- <div id="file-metadata">
49
- <nav id="file-list-section" class="section">
50
- <h3 class="section-header">Defined In</h3>
51
- <ul>
52
- <li>lib/esp/resources/suppression/unique_identifier.rb
53
- </ul>
54
- </nav>
55
-
56
-
57
- </div>
58
-
59
- <div id="class-metadata">
60
-
61
- <nav id="parent-class-section" class="section">
62
- <h3 class="section-header">Parent</h3>
63
-
64
- <p class="link">ESP::Resource
65
-
66
- </nav>
67
-
68
-
69
-
70
- <!-- Method Quickref -->
71
- <nav id="method-list-section" class="section">
72
- <h3 class="section-header">Methods</h3>
73
-
74
- <ul class="link-list">
75
-
76
- <li ><a href="#method-c-create">::create</a>
77
-
78
- <li ><a href="#method-c-find">::find</a>
79
-
80
- <li ><a href="#method-i-destroy">#destroy</a>
81
-
82
- <li ><a href="#method-i-save">#save</a>
83
-
84
- <li ><a href="#method-i-update">#update</a>
85
-
86
- </ul>
87
- </nav>
88
-
89
- </div>
90
-
91
- <div id="project-metadata">
92
- <nav id="fileindex-section" class="section project-section">
93
- <h3 class="section-header">Pages</h3>
94
-
95
- <ul>
96
-
97
- <li class="file"><a href="../../README_md.html">README</a>
98
-
99
- </ul>
100
- </nav>
101
-
102
- <nav id="classindex-section" class="section project-section">
103
- <h3 class="section-header">Class and Module Index</h3>
104
-
105
- <ul class="link-list">
106
-
107
- <li><a href="../../ActiveResource.html">ActiveResource</a>
108
-
109
- <li><a href="../../ActiveResource/Formats.html">ActiveResource::Formats</a>
110
-
111
- <li><a href="../../ActiveResource/PaginatedCollection.html">ActiveResource::PaginatedCollection</a>
112
-
113
- <li><a href="../../ESP.html">ESP</a>
114
-
115
- <li><a href="../../ESP/Alert.html">ESP::Alert</a>
116
-
117
- <li><a href="../../ESP/CloudTrailEvent.html">ESP::CloudTrailEvent</a>
118
-
119
- <li><a href="../../ESP/ContactRequest.html">ESP::ContactRequest</a>
120
-
121
- <li><a href="../../ESP/CustomSignature.html">ESP::CustomSignature</a>
122
-
123
- <li><a href="../../ESP/Dashboard.html">ESP::Dashboard</a>
124
-
125
- <li><a href="../../ESP/ExternalAccount.html">ESP::ExternalAccount</a>
126
-
127
- <li><a href="../../ESP/Metadata.html">ESP::Metadata</a>
128
-
129
- <li><a href="../../ESP/Organization.html">ESP::Organization</a>
130
-
131
- <li><a href="../../ESP/Region.html">ESP::Region</a>
132
-
133
- <li><a href="../../ESP/Report.html">ESP::Report</a>
134
-
135
- <li><a href="../../ESP/Service.html">ESP::Service</a>
136
-
137
- <li><a href="../../ESP/Signature.html">ESP::Signature</a>
138
-
139
- <li><a href="../../ESP/Stat.html">ESP::Stat</a>
140
-
141
- <li><a href="../../ESP/StatCustomSignature.html">ESP::StatCustomSignature</a>
142
-
143
- <li><a href="../../ESP/StatRegion.html">ESP::StatRegion</a>
144
-
145
- <li><a href="../../ESP/StatService.html">ESP::StatService</a>
146
-
147
- <li><a href="../../ESP/StatSignature.html">ESP::StatSignature</a>
148
-
149
- <li><a href="../../ESP/SubOrganization.html">ESP::SubOrganization</a>
150
-
151
- <li><a href="../../ESP/Suppression.html">ESP::Suppression</a>
152
-
153
- <li><a href="../../ESP/Suppression/Region.html">ESP::Suppression::Region</a>
154
-
155
- <li><a href="../../ESP/Suppression/Signature.html">ESP::Suppression::Signature</a>
156
-
157
- <li><a href="../../ESP/Suppression/UniqueIdentifier.html">ESP::Suppression::UniqueIdentifier</a>
158
-
159
- <li><a href="../../ESP/Tag.html">ESP::Tag</a>
160
-
161
- <li><a href="../../ESP/Team.html">ESP::Team</a>
162
-
163
- <li><a href="../../ESP/User.html">ESP::User</a>
164
-
165
- </ul>
166
- </nav>
167
-
168
- </div>
169
- </nav>
170
-
171
- <div id="documentation">
172
- <h1 class="class">class ESP::Suppression::UniqueIdentifier</h1>
173
-
174
- <div id="description" class="description">
175
-
176
- </div><!-- description -->
177
-
178
-
179
-
180
-
181
- <section id="5Buntitled-5D" class="documentation-section">
182
-
183
-
184
-
185
-
186
-
187
-
188
-
189
-
190
- <!-- Methods -->
191
-
192
- <section id="public-class-5Buntitled-5D-method-details" class="method-section section">
193
- <h3 class="section-header">Public Class Methods</h3>
194
-
195
-
196
- <div id="method-c-create" class="method-detail ">
197
-
198
-
199
- <div class="method-heading">
200
- <span class="method-callseq">
201
- create(attributes={})
202
- </span>
203
-
204
- <span class="method-click-advice">click to toggle source</span>
205
-
206
- </div>
207
-
208
-
209
-
210
- <div class="method-description">
211
-
212
- <p>Create a suppression for a unique identifier.</p>
213
-
214
- <p>Pass an <code>alert_id</code>, the suppression will be created based on
215
- that alert.</p>
216
-
217
- <h4 id="method-c-create-label-Parameter">Parameter<span><a href="#method-c-create-label-Parameter">&para;</a> <a href="#documentation">&uarr;</a></span></h4>
218
-
219
- <p><code>attributes</code> | Required | A hash of unique identifier
220
- suppression attributes</p>
221
-
222
- <h4 id="method-c-create-label-Attributes">Attributes<span><a href="#method-c-create-label-Attributes">&para;</a> <a href="#documentation">&uarr;</a></span></h4>
223
-
224
- <p><code>alert_id</code> | Required | The id for the alert you want to create
225
- a suppression for.</p>
226
-
227
- <p><code>reason</code> | Required | The reason for creating the suppression.</p>
228
-
229
- <h4 id="method-c-create-label-Example">Example<span><a href="#method-c-create-label-Example">&para;</a> <a href="#documentation">&uarr;</a></span></h4>
230
-
231
- <pre>create(alert_id: 5, reason: &#39;My very good reason for creating this suppression&#39;)</pre>
232
-
233
-
234
-
235
-
236
- <div class="method-source-code" id="create-source">
237
- <pre><span class="ruby-comment"># File lib/esp/resources/suppression/unique_identifier.rb, line 44</span>
238
- </pre>
239
- </div><!-- create-source -->
240
-
241
- </div>
242
-
243
-
244
-
245
-
246
- </div><!-- create-method -->
247
-
248
-
249
- <div id="method-c-find" class="method-detail ">
250
-
251
- <div class="method-heading">
252
- <span class="method-name">find</span><span
253
- class="method-args">(*)</span>
254
-
255
- <span class="method-click-advice">click to toggle source</span>
256
-
257
- </div>
258
-
259
-
260
- <div class="method-description">
261
-
262
- <p>Not Implemented. You cannot search for <a
263
- href="UniqueIdentifier.html">Suppression::UniqueIdentifier</a>.</p>
264
-
265
- <p>Regular ARELlike methods are disabled. Use the <a
266
- href="../Suppression.html">ESP::Suppression</a> object to search
267
- suppressions.</p>
268
-
269
-
270
-
271
-
272
- <div class="method-source-code" id="find-source">
273
- <pre><span class="ruby-comment"># File lib/esp/resources/suppression/unique_identifier.rb, line 9</span>
274
- <span class="ruby-keyword">def</span> <span class="ruby-keyword">self</span>.<span class="ruby-identifier">find</span>(<span class="ruby-operator">*</span>)
275
- <span class="ruby-identifier">fail</span> <span class="ruby-constant">ESP</span><span class="ruby-operator">::</span><span class="ruby-constant">NotImplementedError</span>, <span class="ruby-string">&#39;Regular ARELlike methods are disabled. Use the ESP::Suppression object to search suppressions&#39;</span>
276
- <span class="ruby-keyword">end</span></pre>
277
- </div><!-- find-source -->
278
-
279
- </div>
280
-
281
-
282
-
283
-
284
- </div><!-- find-method -->
285
-
286
-
287
- </section><!-- public-class-method-details -->
288
-
289
- <section id="public-instance-5Buntitled-5D-method-details" class="method-section section">
290
- <h3 class="section-header">Public Instance Methods</h3>
291
-
292
-
293
- <div id="method-i-destroy" class="method-detail ">
294
-
295
- <div class="method-heading">
296
- <span class="method-name">destroy</span><span
297
- class="method-args">()</span>
298
-
299
- <span class="method-click-advice">click to toggle source</span>
300
-
301
- </div>
302
-
303
-
304
- <div class="method-description">
305
-
306
- <p>Not Implemented. You cannot destroy a <a
307
- href="UniqueIdentifier.html">Suppression::UniqueIdentifier</a>.</p>
308
-
309
-
310
-
311
-
312
- <div class="method-source-code" id="destroy-source">
313
- <pre><span class="ruby-comment"># File lib/esp/resources/suppression/unique_identifier.rb, line 19</span>
314
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">destroy</span>
315
- <span class="ruby-identifier">fail</span> <span class="ruby-constant">ESP</span><span class="ruby-operator">::</span><span class="ruby-constant">NotImplementedError</span>
316
- <span class="ruby-keyword">end</span></pre>
317
- </div><!-- destroy-source -->
318
-
319
- </div>
320
-
321
-
322
-
323
-
324
- </div><!-- destroy-method -->
325
-
326
-
327
- <div id="method-i-save" class="method-detail ">
328
-
329
- <div class="method-heading">
330
- <span class="method-name">save</span><span
331
- class="method-args">()</span>
332
-
333
- <span class="method-click-advice">click to toggle source</span>
334
-
335
- </div>
336
-
337
-
338
- <div class="method-description">
339
-
340
- <p>Create a suppression for a unique identifier.</p>
341
-
342
- <p>Set an <code>alert_id</code>, the suppression will be created based on that
343
- alert.</p>
344
-
345
- <h4 id="method-i-save-label-Attributes">Attributes<span><a href="#method-i-save-label-Attributes">&para;</a> <a href="#documentation">&uarr;</a></span></h4>
346
-
347
- <p><code>alert_id</code> | Required | The id for the alert you want to create
348
- a suppression for.</p>
349
-
350
- <p><code>reason</code> | Required | The reason for creating the suppression.</p>
351
-
352
- <h4 id="method-i-save-label-Example">Example<span><a href="#method-i-save-label-Example">&para;</a> <a href="#documentation">&uarr;</a></span></h4>
353
-
354
- <pre>suppression = new(alert_id: 5, reason: &#39;My very good reason for creating this suppression&#39;)
355
- suppression.save</pre>
356
-
357
-
358
-
359
-
360
- <div class="method-source-code" id="save-source">
361
- <pre><span class="ruby-comment"># File lib/esp/resources/suppression/unique_identifier.rb, line 58</span>
362
- </pre>
363
- </div><!-- save-source -->
364
-
365
- </div>
366
-
367
-
368
-
369
-
370
- </div><!-- save-method -->
371
-
372
-
373
- <div id="method-i-update" class="method-detail ">
374
-
375
- <div class="method-heading">
376
- <span class="method-name">update</span><span
377
- class="method-args">()</span>
378
-
379
- <span class="method-click-advice">click to toggle source</span>
380
-
381
- </div>
382
-
383
-
384
- <div class="method-description">
385
-
386
- <p>Not Implemented. You cannot update a <a
387
- href="UniqueIdentifier.html">Suppression::UniqueIdentifier</a>.</p>
388
-
389
-
390
-
391
-
392
- <div class="method-source-code" id="update-source">
393
- <pre><span class="ruby-comment"># File lib/esp/resources/suppression/unique_identifier.rb, line 14</span>
394
- <span class="ruby-keyword">def</span> <span class="ruby-identifier">update</span>
395
- <span class="ruby-identifier">fail</span> <span class="ruby-constant">ESP</span><span class="ruby-operator">::</span><span class="ruby-constant">NotImplementedError</span>
396
- <span class="ruby-keyword">end</span></pre>
397
- </div><!-- update-source -->
398
-
399
- </div>
400
-
401
-
402
-
403
-
404
- </div><!-- update-method -->
405
-
406
-
407
- </section><!-- public-instance-method-details -->
408
-
409
- </section><!-- 5Buntitled-5D -->
410
-
411
- </div><!-- documentation -->
412
-
413
-
414
- <footer id="validator-badges">
415
- <p><a href="http://validator.w3.org/check/referer">[Validate]</a>
416
- <p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 4.0.0.
417
- <p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
418
- </footer>
419
-