sonic-screwdriver 1.4.0 → 2.2.1

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 (84) hide show
  1. checksums.yaml +4 -4
  2. data/.circleci/bin/commit_docs.sh +26 -0
  3. data/.circleci/config.yml +72 -0
  4. data/.gitignore +2 -1
  5. data/CHANGELOG.md +29 -3
  6. data/Gemfile +3 -3
  7. data/Guardfile +17 -10
  8. data/LICENSE.txt +2 -2
  9. data/README.md +25 -28
  10. data/Rakefile +9 -2
  11. data/docs/_config.yml +3 -0
  12. data/docs/_docs/help.md +1 -1
  13. data/docs/_docs/install-bastion.md +5 -15
  14. data/docs/_docs/install.md +3 -13
  15. data/docs/_docs/next-steps.md +1 -1
  16. data/docs/_docs/settings.md +42 -56
  17. data/docs/_docs/tutorial-ecs-exec.md +16 -20
  18. data/docs/_docs/tutorial-ecs-sh.md +73 -0
  19. data/docs/_docs/tutorial-execute.md +106 -38
  20. data/docs/_docs/tutorial-ssh.md +15 -19
  21. data/docs/_docs/why-ec2-run-command.md +1 -1
  22. data/docs/_includes/commands.html +5 -5
  23. data/docs/_includes/content.html +5 -0
  24. data/docs/_includes/css/main.css +15 -9
  25. data/docs/_includes/css/sonic.css +7 -5
  26. data/docs/_includes/example.html +4 -4
  27. data/docs/_includes/footer.html +6 -4
  28. data/docs/_includes/reference.md +1 -0
  29. data/docs/_includes/subnav.html +2 -1
  30. data/docs/_reference/sonic-completion.md +44 -0
  31. data/docs/_reference/sonic-completion_script.md +25 -0
  32. data/docs/_reference/sonic-ecs-exec.md +30 -0
  33. data/docs/_reference/sonic-ecs-help.md +21 -0
  34. data/docs/_reference/sonic-ecs-sh.md +35 -0
  35. data/docs/_reference/sonic-ecs.md +25 -0
  36. data/docs/_reference/sonic-execute.md +85 -0
  37. data/docs/_reference/sonic-list.md +40 -0
  38. data/docs/_reference/sonic-ssh.md +86 -0
  39. data/docs/_reference/sonic-version.md +21 -0
  40. data/docs/bin/web +1 -1
  41. data/docs/img/tutorials/ec2-console-run-command.png +0 -0
  42. data/docs/quick-start.md +17 -22
  43. data/docs/reference.md +12 -0
  44. data/{bin → exe}/sonic +3 -3
  45. data/lib/bash_scripts/docker-exec.sh +1 -0
  46. data/lib/bash_scripts/docker-run.sh +8 -1
  47. data/lib/sonic.rb +11 -3
  48. data/lib/sonic/{aws_services.rb → aws_service.rb} +6 -1
  49. data/lib/sonic/base_command.rb +82 -0
  50. data/lib/sonic/checks.rb +2 -2
  51. data/lib/sonic/cli.rb +41 -29
  52. data/lib/sonic/command.rb +8 -22
  53. data/lib/sonic/completer.rb +161 -0
  54. data/lib/sonic/completer/script.rb +6 -0
  55. data/lib/sonic/completer/script.sh +10 -0
  56. data/lib/sonic/core.rb +15 -0
  57. data/lib/sonic/default/settings.yml +9 -16
  58. data/lib/sonic/docker.rb +30 -2
  59. data/lib/sonic/ecs.rb +22 -0
  60. data/lib/sonic/execute.rb +203 -51
  61. data/lib/sonic/help.rb +9 -0
  62. data/lib/sonic/help/command/send.md +10 -0
  63. data/lib/sonic/help/completion.md +22 -0
  64. data/lib/sonic/help/completion_script.md +3 -0
  65. data/lib/sonic/help/ecs/exec.md +8 -0
  66. data/lib/sonic/help/ecs/sh.md +13 -0
  67. data/lib/sonic/help/execute.md +59 -0
  68. data/lib/sonic/help/list.md +17 -0
  69. data/lib/sonic/help/ssh.md +60 -0
  70. data/lib/sonic/list.rb +5 -2
  71. data/lib/sonic/setting.rb +47 -0
  72. data/lib/sonic/ssh.rb +42 -23
  73. data/lib/sonic/ssh/identifier_detector.rb +7 -3
  74. data/lib/sonic/ui.rb +2 -2
  75. data/lib/sonic/version.rb +1 -1
  76. data/sonic.gemspec +14 -9
  77. data/spec/lib/cli_spec.rb +11 -11
  78. data/spec/lib/sonic/execute_spec.rb +1 -2
  79. data/spec/spec_helper.rb +18 -10
  80. metadata +115 -19
  81. data/Gemfile.lock +0 -134
  82. data/docs/_docs/tutorial-ecs-run.md +0 -100
  83. data/lib/sonic/cli/help.rb +0 -152
  84. data/lib/sonic/settings.rb +0 -115
data/lib/sonic/ui.rb CHANGED
@@ -19,10 +19,10 @@ module Sonic
19
19
  puts msg unless mute
20
20
  end
21
21
  def error(msg='')
22
- say "ERROR: #{msg}".colorize(:red)
22
+ say "ERROR: #{msg}".color(:red)
23
23
  end
24
24
  def warn(msg='')
25
- say "WARN: #{msg}".colorize(:yellow)
25
+ say "WARN: #{msg}".color(:yellow)
26
26
  end
27
27
  end
28
28
  end
data/lib/sonic/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Sonic
2
- VERSION = "1.4.0"
2
+ VERSION = "2.2.1"
3
3
  end
data/sonic.gemspec CHANGED
@@ -1,34 +1,39 @@
1
1
  # coding: utf-8
2
- lib = File.expand_path('../lib', __FILE__)
2
+ lib = File.expand_path("../lib", __FILE__)
3
3
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
- require 'sonic/version'
4
+ require "sonic/version"
5
5
 
6
6
  Gem::Specification.new do |spec|
7
7
  spec.name = "sonic-screwdriver"
8
8
  spec.version = Sonic::VERSION
9
9
  spec.authors = ["Tung Nguyen"]
10
10
  spec.email = ["tung@boltops.com"]
11
- spec.description = %q{Multi-functional tool to manage AWS infrastructure}
12
- spec.summary = %q{Multi-functional tool to manage AWS infrastructure}
11
+ spec.summary = "Multi-functional tool to manage AWS infrastructure"
13
12
  spec.homepage = "http://sonic-screwdriver.cloud/"
14
13
  spec.license = "MIT"
15
14
 
16
15
  spec.files = `git ls-files`.split($/)
17
- spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
16
+ spec.bindir = "exe"
17
+ spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
18
18
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
19
19
  spec.require_paths = ["lib"]
20
20
 
21
- spec.add_dependency "thor"
22
- spec.add_dependency "hashie"
23
- spec.add_dependency "colorize"
21
+ spec.add_dependency "activesupport"
24
22
  spec.add_dependency "aws-sdk-ec2"
25
23
  spec.add_dependency "aws-sdk-ecs"
24
+ spec.add_dependency "aws-sdk-s3"
26
25
  spec.add_dependency "aws-sdk-ssm"
26
+ spec.add_dependency "hashie"
27
+ spec.add_dependency "memoist"
28
+ spec.add_dependency "rainbow"
29
+ spec.add_dependency "thor"
27
30
  spec.add_dependency "tty-prompt"
28
31
 
29
32
  spec.add_development_dependency "bundler"
30
- spec.add_development_dependency "rake"
33
+ spec.add_development_dependency "byebug"
31
34
  spec.add_development_dependency "guard"
32
35
  spec.add_development_dependency "guard-bundler"
33
36
  spec.add_development_dependency "guard-rspec"
37
+ spec.add_development_dependency "rake"
38
+ spec.add_development_dependency "cli_markdown"
34
39
  end
data/spec/lib/cli_spec.rb CHANGED
@@ -1,28 +1,28 @@
1
- require 'spec_helper'
1
+ require "spec_helper"
2
2
 
3
- # to run specs with what's remembered from vcr
4
- # $ rake
5
- #
6
- # to run specs with new fresh data from aws api calls
7
- # $ rake clean:vcr ; time rake
8
3
  describe Sonic::CLI do
9
4
  before(:all) do
10
- @args = "--project-root spec/fixtures/project --noop"
5
+ @args = "--noop"
11
6
  end
12
7
 
13
8
  describe "sonic" do
14
9
  it "ssh should print out ssh command to be ran" do
15
- out = execute("bin/sonic ssh #{@args} --cluster default my-service")
10
+ out = execute("exe/sonic ssh #{@args} --cluster default my-service")
16
11
  expect(out).to include("=> ssh")
17
12
  end
18
13
 
19
- it "execute should print that command has been sent" do
20
- out = execute("bin/sonic execute #{@args} 1,2,3 uptime")
14
+ it "execute should print that command has been sent --instance-ids" do
15
+ out = execute("exe/sonic execute #{@args} --instance-ids i-1,i-2,i-3 uptime")
16
+ expect(out).to include("Command sent")
17
+ end
18
+
19
+ it "execute should print that command has been sent --tags" do
20
+ out = execute("exe/sonic execute #{@args} --tags Name=value uptime")
21
21
  expect(out).to include("Command sent")
22
22
  end
23
23
 
24
24
  it "list should list running instances" do
25
- out = execute("bin/sonic list #{@args} --header 1,2,3")
25
+ out = execute("exe/sonic list #{@args} --header 1,2,3")
26
26
  expect(out).to include("No instances found")
27
27
  end
28
28
  end
@@ -3,8 +3,7 @@ require 'spec_helper'
3
3
  describe Sonic::Execute do
4
4
  before(:each) do
5
5
  @options = {
6
- project_root: "spec/fixtures/project",
7
- filter: "i-066b140d9479e9681,i-09482b1a6e330fbf7"
6
+ instance_ids: "i-066b140d9479e9681,i-09482b1a6e330fbf7"
8
7
  }
9
8
  end
10
9
 
data/spec/spec_helper.rb CHANGED
@@ -1,24 +1,32 @@
1
- ENV['TEST'] = '1'
1
+ ENV["TEST"] = "1"
2
2
  # Ensures aws api never called. Fixture home folder does not contain ~/.aws/credentails
3
- ENV['HOME'] = "spec/fixtures/home"
3
+ ENV["HOME"] = "spec/fixtures/home"
4
+ ENV["SONIC_ROOT"] = "spec/fixtures/project"
4
5
 
5
- # Ensures aws api never called. Fixture home folder does not contain ~/.aws/credentails
6
- ENV['HOME'] = "spec/fixtures/home"
6
+ # CodeClimate test coverage: https://docs.codeclimate.com/docs/configuring-test-coverage
7
+ # require 'simplecov'
8
+ # SimpleCov.start
7
9
 
8
10
  require "pp"
9
-
10
- root = File.expand_path('../../', __FILE__)
11
+ require "byebug"
12
+ root = File.expand_path("../", File.dirname(__FILE__))
11
13
  require "#{root}/lib/sonic"
12
14
 
13
- module Helpers
15
+ module Helper
14
16
  def execute(cmd)
15
- puts "Running: #{cmd}" if ENV['DEBUG']
17
+ puts "Running: #{cmd}" if show_command?
16
18
  out = `#{cmd}`
17
- puts out if ENV['DEBUG']
19
+ puts out if show_command?
18
20
  out
19
21
  end
22
+
23
+ # Added SHOW_COMMAND because DEBUG is also used by other libraries like
24
+ # bundler and it shows its internal debugging logging also.
25
+ def show_command?
26
+ ENV['DEBUG'] || ENV['SHOW_COMMAND']
27
+ end
20
28
  end
21
29
 
22
30
  RSpec.configure do |c|
23
- c.include Helpers
31
+ c.include Helper
24
32
  end
metadata CHANGED
@@ -1,17 +1,17 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sonic-screwdriver
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.4.0
4
+ version: 2.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tung Nguyen
8
8
  autorequire:
9
- bindir: bin
9
+ bindir: exe
10
10
  cert_chain: []
11
- date: 2018-02-12 00:00:00.000000000 Z
11
+ date: 2021-04-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: thor
14
+ name: activesupport
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
17
  - - ">="
@@ -25,7 +25,7 @@ dependencies:
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0'
27
27
  - !ruby/object:Gem::Dependency
28
- name: hashie
28
+ name: aws-sdk-ec2
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - ">="
@@ -39,7 +39,7 @@ dependencies:
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
41
41
  - !ruby/object:Gem::Dependency
42
- name: colorize
42
+ name: aws-sdk-ecs
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - ">="
@@ -53,7 +53,7 @@ dependencies:
53
53
  - !ruby/object:Gem::Version
54
54
  version: '0'
55
55
  - !ruby/object:Gem::Dependency
56
- name: aws-sdk-ec2
56
+ name: aws-sdk-s3
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - ">="
@@ -67,7 +67,7 @@ dependencies:
67
67
  - !ruby/object:Gem::Version
68
68
  version: '0'
69
69
  - !ruby/object:Gem::Dependency
70
- name: aws-sdk-ecs
70
+ name: aws-sdk-ssm
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
73
  - - ">="
@@ -81,7 +81,49 @@ dependencies:
81
81
  - !ruby/object:Gem::Version
82
82
  version: '0'
83
83
  - !ruby/object:Gem::Dependency
84
- name: aws-sdk-ssm
84
+ name: hashie
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ">="
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
90
+ type: :runtime
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ">="
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
97
+ - !ruby/object:Gem::Dependency
98
+ name: memoist
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ">="
102
+ - !ruby/object:Gem::Version
103
+ version: '0'
104
+ type: :runtime
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - ">="
109
+ - !ruby/object:Gem::Version
110
+ version: '0'
111
+ - !ruby/object:Gem::Dependency
112
+ name: rainbow
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - ">="
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
118
+ type: :runtime
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - ">="
123
+ - !ruby/object:Gem::Version
124
+ version: '0'
125
+ - !ruby/object:Gem::Dependency
126
+ name: thor
85
127
  requirement: !ruby/object:Gem::Requirement
86
128
  requirements:
87
129
  - - ">="
@@ -123,7 +165,7 @@ dependencies:
123
165
  - !ruby/object:Gem::Version
124
166
  version: '0'
125
167
  - !ruby/object:Gem::Dependency
126
- name: rake
168
+ name: byebug
127
169
  requirement: !ruby/object:Gem::Requirement
128
170
  requirements:
129
171
  - - ">="
@@ -178,7 +220,35 @@ dependencies:
178
220
  - - ">="
179
221
  - !ruby/object:Gem::Version
180
222
  version: '0'
181
- description: Multi-functional tool to manage AWS infrastructure
223
+ - !ruby/object:Gem::Dependency
224
+ name: rake
225
+ requirement: !ruby/object:Gem::Requirement
226
+ requirements:
227
+ - - ">="
228
+ - !ruby/object:Gem::Version
229
+ version: '0'
230
+ type: :development
231
+ prerelease: false
232
+ version_requirements: !ruby/object:Gem::Requirement
233
+ requirements:
234
+ - - ">="
235
+ - !ruby/object:Gem::Version
236
+ version: '0'
237
+ - !ruby/object:Gem::Dependency
238
+ name: cli_markdown
239
+ requirement: !ruby/object:Gem::Requirement
240
+ requirements:
241
+ - - ">="
242
+ - !ruby/object:Gem::Version
243
+ version: '0'
244
+ type: :development
245
+ prerelease: false
246
+ version_requirements: !ruby/object:Gem::Requirement
247
+ requirements:
248
+ - - ">="
249
+ - !ruby/object:Gem::Version
250
+ version: '0'
251
+ description:
182
252
  email:
183
253
  - tung@boltops.com
184
254
  executables:
@@ -186,17 +256,17 @@ executables:
186
256
  extensions: []
187
257
  extra_rdoc_files: []
188
258
  files:
259
+ - ".circleci/bin/commit_docs.sh"
260
+ - ".circleci/config.yml"
189
261
  - ".gitignore"
190
262
  - ".rspec"
191
263
  - CHANGELOG.md
192
264
  - CONTRIBUTING.md
193
265
  - Gemfile
194
- - Gemfile.lock
195
266
  - Guardfile
196
267
  - LICENSE.txt
197
268
  - README.md
198
269
  - Rakefile
199
- - bin/sonic
200
270
  - docs/.gitignore
201
271
  - docs/CNAME
202
272
  - docs/Gemfile
@@ -210,7 +280,7 @@ files:
210
280
  - docs/_docs/next-steps.md
211
281
  - docs/_docs/settings.md
212
282
  - docs/_docs/tutorial-ecs-exec.md
213
- - docs/_docs/tutorial-ecs-run.md
283
+ - docs/_docs/tutorial-ecs-sh.md
214
284
  - docs/_docs/tutorial-execute.md
215
285
  - docs/_docs/tutorial-list.md
216
286
  - docs/_docs/tutorial-ssh.md
@@ -241,11 +311,22 @@ files:
241
311
  - docs/_includes/modals.html
242
312
  - docs/_includes/nav.html
243
313
  - docs/_includes/quotes.html
314
+ - docs/_includes/reference.md
244
315
  - docs/_includes/subnav.html
245
316
  - docs/_includes/ufo-ship-options.md
246
317
  - docs/_includes/uses.html
247
318
  - docs/_layouts/default.html
248
319
  - docs/_layouts/style.css
320
+ - docs/_reference/sonic-completion.md
321
+ - docs/_reference/sonic-completion_script.md
322
+ - docs/_reference/sonic-ecs-exec.md
323
+ - docs/_reference/sonic-ecs-help.md
324
+ - docs/_reference/sonic-ecs-sh.md
325
+ - docs/_reference/sonic-ecs.md
326
+ - docs/_reference/sonic-execute.md
327
+ - docs/_reference/sonic-list.md
328
+ - docs/_reference/sonic-ssh.md
329
+ - docs/_reference/sonic-version.md
249
330
  - docs/articles.md
250
331
  - docs/bin/web
251
332
  - docs/css/font-awesome/css/font-awesome.css
@@ -275,20 +356,36 @@ files:
275
356
  - docs/js/jquery.easing.min.js
276
357
  - docs/js/nav.js
277
358
  - docs/quick-start.md
359
+ - docs/reference.md
278
360
  - docs/style.css
361
+ - exe/sonic
279
362
  - lib/bash_scripts/docker-exec.sh
280
363
  - lib/bash_scripts/docker-run.sh
281
364
  - lib/sonic.rb
282
- - lib/sonic/aws_services.rb
365
+ - lib/sonic/aws_service.rb
366
+ - lib/sonic/base_command.rb
283
367
  - lib/sonic/checks.rb
284
368
  - lib/sonic/cli.rb
285
- - lib/sonic/cli/help.rb
286
369
  - lib/sonic/command.rb
370
+ - lib/sonic/completer.rb
371
+ - lib/sonic/completer/script.rb
372
+ - lib/sonic/completer/script.sh
373
+ - lib/sonic/core.rb
287
374
  - lib/sonic/default/settings.yml
288
375
  - lib/sonic/docker.rb
376
+ - lib/sonic/ecs.rb
289
377
  - lib/sonic/execute.rb
378
+ - lib/sonic/help.rb
379
+ - lib/sonic/help/command/send.md
380
+ - lib/sonic/help/completion.md
381
+ - lib/sonic/help/completion_script.md
382
+ - lib/sonic/help/ecs/exec.md
383
+ - lib/sonic/help/ecs/sh.md
384
+ - lib/sonic/help/execute.md
385
+ - lib/sonic/help/list.md
386
+ - lib/sonic/help/ssh.md
290
387
  - lib/sonic/list.rb
291
- - lib/sonic/settings.rb
388
+ - lib/sonic/setting.rb
292
389
  - lib/sonic/ssh.rb
293
390
  - lib/sonic/ssh/cli_options.rb
294
391
  - lib/sonic/ssh/ec2_tag.rb
@@ -322,8 +419,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
322
419
  - !ruby/object:Gem::Version
323
420
  version: '0'
324
421
  requirements: []
325
- rubyforge_project:
326
- rubygems_version: 2.7.3
422
+ rubygems_version: 3.2.5
327
423
  signing_key:
328
424
  specification_version: 4
329
425
  summary: Multi-functional tool to manage AWS infrastructure
data/Gemfile.lock DELETED
@@ -1,134 +0,0 @@
1
- PATH
2
- remote: .
3
- specs:
4
- sonic-screwdriver (1.3.2)
5
- aws-sdk-ec2
6
- aws-sdk-ecs
7
- aws-sdk-ssm
8
- colorize
9
- hashie
10
- thor
11
- tty-prompt
12
-
13
- GEM
14
- remote: https://rubygems.org/
15
- specs:
16
- aws-partitions (1.59.0)
17
- aws-sdk-core (3.15.0)
18
- aws-partitions (~> 1.0)
19
- aws-sigv4 (~> 1.0)
20
- jmespath (~> 1.0)
21
- aws-sdk-ec2 (1.26.0)
22
- aws-sdk-core (~> 3)
23
- aws-sigv4 (~> 1.0)
24
- aws-sdk-ecs (1.8.0)
25
- aws-sdk-core (~> 3)
26
- aws-sigv4 (~> 1.0)
27
- aws-sdk-ssm (1.7.0)
28
- aws-sdk-core (~> 3)
29
- aws-sigv4 (~> 1.0)
30
- aws-sigv4 (1.0.2)
31
- codeclimate-test-reporter (1.0.8)
32
- simplecov (<= 0.13)
33
- coderay (1.1.2)
34
- colorize (0.8.1)
35
- diff-lcs (1.3)
36
- docile (1.1.5)
37
- equatable (0.5.0)
38
- ffi (1.9.21)
39
- formatador (0.2.5)
40
- guard (2.14.2)
41
- formatador (>= 0.2.4)
42
- listen (>= 2.7, < 4.0)
43
- lumberjack (>= 1.0.12, < 2.0)
44
- nenv (~> 0.1)
45
- notiffany (~> 0.0)
46
- pry (>= 0.9.12)
47
- shellany (~> 0.0)
48
- thor (>= 0.18.1)
49
- guard-bundler (2.1.0)
50
- bundler (~> 1.0)
51
- guard (~> 2.2)
52
- guard-compat (~> 1.1)
53
- guard-compat (1.2.1)
54
- guard-rspec (4.7.3)
55
- guard (~> 2.1)
56
- guard-compat (~> 1.1)
57
- rspec (>= 2.99.0, < 4.0)
58
- hashie (3.5.7)
59
- hitimes (1.2.6)
60
- jmespath (1.3.1)
61
- json (2.1.0)
62
- listen (3.1.5)
63
- rb-fsevent (~> 0.9, >= 0.9.4)
64
- rb-inotify (~> 0.9, >= 0.9.7)
65
- ruby_dep (~> 1.2)
66
- lumberjack (1.0.12)
67
- method_source (0.9.0)
68
- necromancer (0.4.0)
69
- nenv (0.3.0)
70
- notiffany (0.1.1)
71
- nenv (~> 0.1)
72
- shellany (~> 0.0)
73
- pastel (0.7.2)
74
- equatable (~> 0.5.0)
75
- tty-color (~> 0.4.0)
76
- pry (0.11.3)
77
- coderay (~> 1.1.0)
78
- method_source (~> 0.9.0)
79
- rake (12.3.0)
80
- rb-fsevent (0.10.2)
81
- rb-inotify (0.9.10)
82
- ffi (>= 0.5.0, < 2)
83
- rspec (3.7.0)
84
- rspec-core (~> 3.7.0)
85
- rspec-expectations (~> 3.7.0)
86
- rspec-mocks (~> 3.7.0)
87
- rspec-core (3.7.1)
88
- rspec-support (~> 3.7.0)
89
- rspec-expectations (3.7.0)
90
- diff-lcs (>= 1.2.0, < 2.0)
91
- rspec-support (~> 3.7.0)
92
- rspec-mocks (3.7.0)
93
- diff-lcs (>= 1.2.0, < 2.0)
94
- rspec-support (~> 3.7.0)
95
- rspec-support (3.7.1)
96
- ruby_dep (1.5.0)
97
- shellany (0.0.1)
98
- simplecov (0.13.0)
99
- docile (~> 1.1.0)
100
- json (>= 1.8, < 3)
101
- simplecov-html (~> 0.10.0)
102
- simplecov-html (0.10.2)
103
- thor (0.20.0)
104
- timers (4.1.2)
105
- hitimes
106
- tty-color (0.4.2)
107
- tty-cursor (0.5.0)
108
- tty-prompt (0.15.0)
109
- necromancer (~> 0.4.0)
110
- pastel (~> 0.7.0)
111
- timers (~> 4.0)
112
- tty-cursor (~> 0.5.0)
113
- tty-reader (~> 0.2.0)
114
- tty-reader (0.2.0)
115
- tty-cursor (~> 0.5.0)
116
- tty-screen (~> 0.6.4)
117
- wisper (~> 2.0.0)
118
- tty-screen (0.6.4)
119
- wisper (2.0.0)
120
-
121
- PLATFORMS
122
- ruby
123
-
124
- DEPENDENCIES
125
- bundler
126
- codeclimate-test-reporter
127
- guard
128
- guard-bundler
129
- guard-rspec
130
- rake
131
- sonic-screwdriver!
132
-
133
- BUNDLED WITH
134
- 1.16.1