hobo-inviqa 0.0.7 → 0.0.8

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 (57) hide show
  1. checksums.yaml +15 -0
  2. data/.editorconfig +10 -0
  3. data/Gemfile.lock +19 -4
  4. data/Guardfile +2 -2
  5. data/Hobofile +5 -1
  6. data/README.md +8 -32
  7. data/bin/hobo +12 -18
  8. data/hobo.gemspec +3 -0
  9. data/lib/hobo.rb +8 -1
  10. data/lib/hobo/cli.rb +14 -3
  11. data/lib/hobo/error_handlers/debug.rb +5 -2
  12. data/lib/hobo/error_handlers/exit_code_map.rb +16 -0
  13. data/lib/hobo/error_handlers/friendly.rb +8 -8
  14. data/lib/hobo/errors.rb +11 -1
  15. data/lib/hobo/helper/http_download.rb +41 -0
  16. data/lib/hobo/helper/shell.rb +3 -2
  17. data/lib/hobo/helper/vm_command.rb +235 -14
  18. data/lib/hobo/lib/host_check.rb +20 -6
  19. data/lib/hobo/lib/host_check/deps.rb +22 -4
  20. data/lib/hobo/lib/host_check/git.rb +41 -17
  21. data/lib/hobo/lib/host_check/ruby.rb +30 -20
  22. data/lib/hobo/lib/host_check/vagrant.rb +37 -6
  23. data/lib/hobo/lib/s3sync.rb +22 -44
  24. data/lib/hobo/lib/seed/project.rb +10 -6
  25. data/lib/hobo/patches/slop.rb +21 -2
  26. data/lib/hobo/tasks/assets.rb +12 -15
  27. data/lib/hobo/tasks/config.rb +15 -0
  28. data/lib/hobo/tasks/deps.rb +37 -6
  29. data/lib/hobo/tasks/system.rb +15 -0
  30. data/lib/hobo/tasks/system/completions.rb +76 -0
  31. data/lib/hobo/tasks/tools.rb +10 -6
  32. data/lib/hobo/tasks/vm.rb +64 -11
  33. data/lib/hobo/ui.rb +27 -10
  34. data/lib/hobo/util.rb +36 -2
  35. data/lib/hobo/version.rb +2 -2
  36. data/spec/hobo/asset_applicator_spec.rb +2 -2
  37. data/spec/hobo/cli_spec.rb +40 -24
  38. data/spec/hobo/config/file_spec.rb +1 -3
  39. data/spec/hobo/error_handlers/debug_spec.rb +39 -5
  40. data/spec/hobo/error_handlers/friendly_spec.rb +38 -21
  41. data/spec/hobo/help_formatter_spec.rb +3 -3
  42. data/spec/hobo/helpers/file_locator_spec.rb +2 -2
  43. data/spec/hobo/helpers/shell_spec.rb +2 -2
  44. data/spec/hobo/helpers/vm_command_spec.rb +54 -21
  45. data/spec/hobo/lib/s3sync_spec.rb +6 -3
  46. data/spec/hobo/lib/seed/project_spec.rb +2 -3
  47. data/spec/hobo/lib/seed/replacer_spec.rb +1 -2
  48. data/spec/hobo/lib/seed/seed_spec.rb +2 -3
  49. data/spec/hobo/logging_spec.rb +2 -2
  50. data/spec/hobo/metadata_spec.rb +2 -2
  51. data/spec/hobo/null_spec.rb +2 -2
  52. data/spec/hobo/paths_spec.rb +1 -2
  53. data/spec/hobo/ui_spec.rb +104 -20
  54. data/spec/hobo/util_spec.rb +75 -0
  55. data/spec/spec_helper.rb +1 -0
  56. metadata +55 -46
  57. data/lib/hobo/tasks/host.rb +0 -19
@@ -1,7 +1,10 @@
1
- require 'hobo/logging'
2
- require 'hobo/lib/s3sync'
1
+ require 'spec_helper'
3
2
 
4
3
  describe Hobo::Lib::S3Sync do
4
+ before do
5
+ AWS.stub!
6
+ end
7
+
5
8
  describe "sync" do
6
9
  it "should synchronize s3 files to local"
7
10
  it "should synchronize local files to s3"
@@ -10,4 +13,4 @@ describe Hobo::Lib::S3Sync do
10
13
  it "should remove files that do not exist in source"
11
14
  it "should update progress as files are transferred"
12
15
  end
13
- end
16
+ end
@@ -1,5 +1,4 @@
1
1
  require 'spec_helper'
2
- require 'hobo'
3
2
 
4
3
  describe Hobo::Lib::Seed::Project do
5
4
  pwd = nil
@@ -12,7 +11,7 @@ describe Hobo::Lib::Seed::Project do
12
11
  Dir.chdir tmp_dir
13
12
  FileUtils.mkdir_p "project_path"
14
13
  FileUtils.touch "project_path/test"
15
- Hobo.ui = Hobo::Ui.new
14
+ Hobo.ui = double(Hobo::Ui).as_null_object
16
15
  default_config = {
17
16
  :config_class => double(Hobo::Config::File).as_null_object,
18
17
  :replacer => double(Hobo::Lib::Seed::Replacer.new).as_null_object
@@ -79,4 +78,4 @@ describe Hobo::Lib::Seed::Project do
79
78
  it "should set hostname in config"
80
79
  it "should set asset bucket in config"
81
80
  end
82
- end
81
+ end
@@ -1,5 +1,4 @@
1
- require "spec_helper"
2
- require "hobo/lib/seed/replacer"
1
+ require 'spec_helper'
3
2
 
4
3
  describe Hobo::Lib::Seed::Replacer do
5
4
  before do
@@ -1,5 +1,4 @@
1
1
  require 'spec_helper'
2
- require 'hobo'
3
2
 
4
3
  describe Hobo::Lib::Seed::Seed do
5
4
  pwd = nil
@@ -9,7 +8,7 @@ describe Hobo::Lib::Seed::Seed do
9
8
  tmp_dir = Dir.mktmpdir
10
9
  pwd = Dir.pwd
11
10
  Dir.chdir tmp_dir
12
- Hobo.ui = Hobo::Ui.new
11
+ Hobo.ui = double(Hobo::Ui).as_null_object
13
12
  end
14
13
 
15
14
  after do
@@ -91,4 +90,4 @@ describe Hobo::Lib::Seed::Seed do
91
90
  seed.version.should eq `cd seeds/seed_4 && git rev-parse --short HEAD`.strip
92
91
  end
93
92
  end
94
- end
93
+ end
@@ -1,4 +1,4 @@
1
- require 'hobo/logging'
1
+ require 'spec_helper'
2
2
 
3
3
  describe Hobo::Logging do
4
4
  before do
@@ -25,4 +25,4 @@ describe Hobo::Logging do
25
25
  Hobo::Logging.logger.level.should eq Logger::WARN
26
26
  end
27
27
  end
28
- end
28
+ end
@@ -1,4 +1,4 @@
1
- require 'hobo/metadata'
1
+ require 'spec_helper'
2
2
 
3
3
  describe Hobo::Metadata do
4
4
  before do
@@ -53,4 +53,4 @@ describe Hobo::Metadata do
53
53
  Hobo::Metadata.store.should eq({ :type => "default" })
54
54
  end
55
55
  end
56
- end
56
+ end
@@ -1,4 +1,4 @@
1
- require 'hobo/null'
1
+ require 'spec_helper'
2
2
 
3
3
  describe Hobo::Null do
4
4
  it "should return itself for any method call" do
@@ -28,4 +28,4 @@ describe Hobo::Null do
28
28
  maybe(1).should eq 1
29
29
  end
30
30
  end
31
- end
31
+ end
@@ -1,5 +1,4 @@
1
1
  require 'spec_helper'
2
- require 'hobo/paths'
3
2
 
4
3
  describe Hobo do
5
4
  describe 'project_path' do
@@ -74,4 +73,4 @@ describe Hobo do
74
73
  Hobo.user_config_file.should eq File.join(Hobo.config_path, 'config.yaml')
75
74
  end
76
75
  end
77
- end
76
+ end
data/spec/hobo/ui_spec.rb CHANGED
@@ -1,9 +1,27 @@
1
- require 'highline'
2
- require 'hobo/ui'
1
+ require 'spec_helper'
3
2
 
4
3
  describe Hobo::Ui do
4
+ def test_ui opts = {}
5
+ opts = {
6
+ :answer => "",
7
+ :output => StringIO.new,
8
+ :error => StringIO.new,
9
+ :eof => false
10
+ }.merge(opts)
11
+
12
+ input = StringIO.new
13
+ input << opts[:answer]
14
+ input.rewind unless opts[:eof]
15
+ Hobo.ui = ui = Hobo::Ui.new(input, opts[:output], opts[:error])
16
+ ui.interactive = true
17
+ return ui
18
+ end
19
+
5
20
  before do
6
21
  HighLine.use_color = false
22
+ Hobo.logger = Logger.new(nil)
23
+ Hobo.logger.level = Logger::WARN
24
+ double(Hobo.logger)
7
25
  end
8
26
 
9
27
  describe "initialization" do
@@ -11,19 +29,55 @@ describe Hobo::Ui do
11
29
  end
12
30
 
13
31
  describe "ask" do
14
- it "should return default if in non-interactive mode"
15
- it "should raise error if no default provided in non-interactive mode"
16
- it "should format prompt to include default if provided"
17
- it "should use default answer if given answer is empty"
18
- it "should handle stdin EOF (Ctrl+d)"
32
+ it "should return default if in non-interactive mode" do
33
+ ui = test_ui()
34
+ ui.interactive = false
35
+ ui.ask("Question", :default => "default").should match "default"
36
+ end
37
+
38
+ it "should raise error if no default provided in non-interactive mode" do
39
+ ui = test_ui(:answer => "Answer\n")
40
+ ui.interactive = false
41
+ expect { ui.ask("Question") }.to raise_exception(Hobo::NonInteractiveError)
42
+ end
43
+
44
+ it "should format prompt to include default if provided" do
45
+ output = StringIO.new
46
+ output.should_receive(:write).with(/Question \[default\]:/)
47
+ test_ui(:output => output).ask("Question", :default => "default")
48
+ end
49
+
50
+ it "should use default answer if given answer is empty" do
51
+ test_ui(:answer => "\n").ask("Question", :default => "default").should match "default"
52
+ end
53
+
54
+ it "should handle stdin EOF (Ctrl+d)" do
55
+ test_ui(:eof => true).ask("Question").should be_empty
56
+ end
57
+
58
+ it "should always return an instance of String" do
59
+ test_ui(:answer => "Answer\n").ask("Question").should be_an_instance_of String
60
+ test_ui(:answer => "\n").ask("Question", :default => "").should be_an_instance_of String
61
+ test_ui(:answer => "\x04").ask("Question").should be_an_instance_of String
62
+ end
19
63
  end
20
64
 
21
65
  describe "color" do
22
- it "should format message with ansi style"
66
+ it "should format message with ansi style" do
67
+ ui = test_ui
68
+ ui.use_color true
69
+ ui.color("test", :red).should match /\e\[31mtest\e\[0m/
70
+ end
23
71
  end
24
72
 
25
73
  describe "use_color" do
26
- it "should set the use of color"
74
+ it "should set the use of color" do
75
+ ui = test_ui
76
+ ui.use_color true
77
+ ui.color("test", :red).should match /\e\[31mtest\e\[0m/
78
+ ui.use_color false
79
+ ui.color("test", :red).should match /^test$/
80
+ end
27
81
  end
28
82
 
29
83
  describe "color_scheme" do
@@ -33,36 +87,66 @@ describe Hobo::Ui do
33
87
 
34
88
  describe "debug" do
35
89
  it "should send message to stdout" do
36
- $stdout.should receive(:puts).with("test")
37
- Hobo::Ui.new.debug("test")
90
+ output = StringIO.new
91
+ output.should receive(:puts).with("test")
92
+ test_ui(:output => output).debug("test")
93
+ end
94
+
95
+ it "should log to logger" do
96
+ Hobo.logger.should_receive(:debug).with("test")
97
+ test_ui.debug("test")
38
98
  end
39
99
  end
40
100
 
41
101
  describe "info" do
42
102
  it "should send message to stdout" do
43
- $stdout.should receive(:puts).with("test")
44
- Hobo::Ui.new.info("test")
103
+ output = StringIO.new
104
+ output.should receive(:puts).with("test")
105
+ test_ui(:output => output).info("test")
106
+ end
107
+
108
+ it "should log to logger" do
109
+ Hobo.logger.should_receive(:debug).with("test")
110
+ test_ui.info("test")
45
111
  end
46
112
  end
47
113
 
48
114
  describe "warning" do
49
115
  it "should send message to stderr" do
50
- $stderr.should receive(:puts).with("test")
51
- Hobo::Ui.new.warning("test")
116
+ error = StringIO.new
117
+ error.should receive(:puts).with("test")
118
+ test_ui(:error => error).warning("test")
119
+ end
120
+
121
+ it "should log to logger" do
122
+ Hobo.logger.should_receive(:debug).with("test")
123
+ test_ui.warning("test")
52
124
  end
53
125
  end
54
126
 
55
127
  describe "error" do
56
128
  it "should send message to stderr" do
57
- $stderr.should receive(:puts).with("test")
58
- Hobo::Ui.new.error("test")
129
+ error = StringIO.new
130
+ error.should receive(:puts).with("test")
131
+ test_ui(:error => error).error("test")
132
+ end
133
+
134
+ it "should log to logger" do
135
+ Hobo.logger.should_receive(:debug).with("test")
136
+ test_ui.error("test")
59
137
  end
60
138
  end
61
139
 
62
140
  describe "success" do
63
141
  it "should send message to stdout" do
64
- $stdout.should receive(:puts).with("test")
65
- Hobo::Ui.new.success("test")
142
+ output = StringIO.new
143
+ output.should receive(:puts).with("test")
144
+ test_ui(:output => output).success("test")
145
+ end
146
+
147
+ it "should log to logger" do
148
+ Hobo.logger.should_receive(:debug).with("test")
149
+ test_ui.success("test")
66
150
  end
67
151
  end
68
- end
152
+ end
@@ -0,0 +1,75 @@
1
+ require 'spec_helper'
2
+
3
+ describe Hobo do
4
+ describe "in_project?" do
5
+ it "should return true if project path detected" do
6
+ Hobo.project_path = "test"
7
+ Hobo.in_project?.should be true
8
+ end
9
+
10
+ it "should return false if no project path detected" do
11
+ Hobo.project_path = false
12
+ Hobo.in_project?.should be false
13
+ end
14
+ end
15
+
16
+ describe "progress" do
17
+ def progress_mock file, increment, total, type
18
+ out = double(StringIO.new).as_null_object
19
+ out.stub(:tty?).and_return(true)
20
+ Hobo.progress(file, increment, total, type, :throttle_rate => nil, :output => out)
21
+ end
22
+
23
+ before do
24
+ Hobo.project_bar_cache = {}
25
+ end
26
+
27
+ it "should create new progress bar if one does not exist" do
28
+ bar = progress_mock("test", 0, 10, :update)
29
+ bar.to_s.should match /^test.*0%/
30
+ end
31
+
32
+ it "should force width to 79 if windows" do
33
+ Gem.should_receive(:win_platform?).and_return(true)
34
+ bar = progress_mock("test:79", 0, 10, :update)
35
+ bar.to_s.length.should eq 79
36
+ end
37
+
38
+ it "should update progress bar if type :update" do
39
+ bar = progress_mock("test:update", 0, 10, :update)
40
+ bar.to_s.should match /^test:update.*0%/
41
+
42
+ Hobo.progress("test:update", 1, 10, :update)
43
+ bar.to_s.should match /^test.update.*10%/
44
+ end
45
+
46
+ it "should increment progress by specified amount if type :update" do
47
+ bar = progress_mock("test:increment", 0, 10, :update)
48
+ bar.to_s.should match /^test:increment.*0%/
49
+
50
+ Hobo.progress("test:increment", 1, 10, :update)
51
+ bar.to_s.should match /^test:increment.*10%/
52
+
53
+ Hobo.progress("test:increment", 1, 10, :update)
54
+ bar.to_s.should match /^test:increment.*20%/
55
+ end
56
+
57
+ it "should finalize progress bar if type :finish" do
58
+ bar = progress_mock("test:finish", 0, 10, :update)
59
+ bar.to_s.should match /^test:finish.*0%/
60
+ Hobo.progress("test:finish", 10, 10, :update)
61
+ Hobo.progress("test:finish", 10, 10, :finish)
62
+ bar.to_s.should match /^test:finish.*100%.*Time/
63
+ end
64
+
65
+ it "should set fixed format" do
66
+ bar = progress_mock("test:format", 1, 10, :update)
67
+ bar.to_s.should match /^test:format \[=+\s+\]\s+10%\s+ETA: 00:00:00/
68
+ end
69
+
70
+ it "should use filename as title" do
71
+ bar = progress_mock("some/path/to/filename.ext", 1, 10, :update)
72
+ bar.to_s.should match /^filename\.ext/
73
+ end
74
+ end
75
+ end
data/spec/spec_helper.rb CHANGED
@@ -1,3 +1,4 @@
1
+ require 'hobo'
1
2
  require 'fakefs/safe'
2
3
  #require 'rr'
3
4
 
metadata CHANGED
@@ -1,20 +1,18 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hobo-inviqa
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.7
5
- prerelease:
4
+ version: 0.0.8
6
5
  platform: ruby
7
6
  authors:
8
7
  - Mike Simons
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2014-02-18 00:00:00.000000000 Z
11
+ date: 2014-03-07 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: slop
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
17
  - - ~>
20
18
  - !ruby/object:Gem::Version
@@ -22,7 +20,6 @@ dependencies:
22
20
  type: :runtime
23
21
  prerelease: false
24
22
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
23
  requirements:
27
24
  - - ~>
28
25
  - !ruby/object:Gem::Version
@@ -30,7 +27,6 @@ dependencies:
30
27
  - !ruby/object:Gem::Dependency
31
28
  name: highline
32
29
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
30
  requirements:
35
31
  - - ~>
36
32
  - !ruby/object:Gem::Version
@@ -38,7 +34,6 @@ dependencies:
38
34
  type: :runtime
39
35
  prerelease: false
40
36
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
37
  requirements:
43
38
  - - ~>
44
39
  - !ruby/object:Gem::Version
@@ -46,7 +41,6 @@ dependencies:
46
41
  - !ruby/object:Gem::Dependency
47
42
  name: rake
48
43
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
44
  requirements:
51
45
  - - ~>
52
46
  - !ruby/object:Gem::Version
@@ -54,7 +48,6 @@ dependencies:
54
48
  type: :runtime
55
49
  prerelease: false
56
50
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
51
  requirements:
59
52
  - - ~>
60
53
  - !ruby/object:Gem::Version
@@ -62,7 +55,6 @@ dependencies:
62
55
  - !ruby/object:Gem::Dependency
63
56
  name: rake-hooks
64
57
  requirement: !ruby/object:Gem::Requirement
65
- none: false
66
58
  requirements:
67
59
  - - ~>
68
60
  - !ruby/object:Gem::Version
@@ -70,7 +62,6 @@ dependencies:
70
62
  type: :runtime
71
63
  prerelease: false
72
64
  version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
65
  requirements:
75
66
  - - ~>
76
67
  - !ruby/object:Gem::Version
@@ -78,7 +69,6 @@ dependencies:
78
69
  - !ruby/object:Gem::Dependency
79
70
  name: bundler
80
71
  requirement: !ruby/object:Gem::Requirement
81
- none: false
82
72
  requirements:
83
73
  - - ~>
84
74
  - !ruby/object:Gem::Version
@@ -86,7 +76,6 @@ dependencies:
86
76
  type: :runtime
87
77
  prerelease: false
88
78
  version_requirements: !ruby/object:Gem::Requirement
89
- none: false
90
79
  requirements:
91
80
  - - ~>
92
81
  - !ruby/object:Gem::Version
@@ -94,7 +83,6 @@ dependencies:
94
83
  - !ruby/object:Gem::Dependency
95
84
  name: deepstruct
96
85
  requirement: !ruby/object:Gem::Requirement
97
- none: false
98
86
  requirements:
99
87
  - - ~>
100
88
  - !ruby/object:Gem::Version
@@ -102,7 +90,6 @@ dependencies:
102
90
  type: :runtime
103
91
  prerelease: false
104
92
  version_requirements: !ruby/object:Gem::Requirement
105
- none: false
106
93
  requirements:
107
94
  - - ~>
108
95
  - !ruby/object:Gem::Version
@@ -110,7 +97,6 @@ dependencies:
110
97
  - !ruby/object:Gem::Dependency
111
98
  name: semantic
112
99
  requirement: !ruby/object:Gem::Requirement
113
- none: false
114
100
  requirements:
115
101
  - - ~>
116
102
  - !ruby/object:Gem::Version
@@ -118,7 +104,6 @@ dependencies:
118
104
  type: :runtime
119
105
  prerelease: false
120
106
  version_requirements: !ruby/object:Gem::Requirement
121
- none: false
122
107
  requirements:
123
108
  - - ~>
124
109
  - !ruby/object:Gem::Version
@@ -126,7 +111,6 @@ dependencies:
126
111
  - !ruby/object:Gem::Dependency
127
112
  name: aws-sdk
128
113
  requirement: !ruby/object:Gem::Requirement
129
- none: false
130
114
  requirements:
131
115
  - - ~>
132
116
  - !ruby/object:Gem::Version
@@ -134,7 +118,6 @@ dependencies:
134
118
  type: :runtime
135
119
  prerelease: false
136
120
  version_requirements: !ruby/object:Gem::Requirement
137
- none: false
138
121
  requirements:
139
122
  - - ~>
140
123
  - !ruby/object:Gem::Version
@@ -142,7 +125,6 @@ dependencies:
142
125
  - !ruby/object:Gem::Dependency
143
126
  name: ruby-progressbar
144
127
  requirement: !ruby/object:Gem::Requirement
145
- none: false
146
128
  requirements:
147
129
  - - ~>
148
130
  - !ruby/object:Gem::Version
@@ -150,15 +132,55 @@ dependencies:
150
132
  type: :runtime
151
133
  prerelease: false
152
134
  version_requirements: !ruby/object:Gem::Requirement
153
- none: false
154
135
  requirements:
155
136
  - - ~>
156
137
  - !ruby/object:Gem::Version
157
138
  version: 1.4.1
139
+ - !ruby/object:Gem::Dependency
140
+ name: teerb
141
+ requirement: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - ~>
144
+ - !ruby/object:Gem::Version
145
+ version: 0.0.1
146
+ type: :runtime
147
+ prerelease: false
148
+ version_requirements: !ruby/object:Gem::Requirement
149
+ requirements:
150
+ - - ~>
151
+ - !ruby/object:Gem::Version
152
+ version: 0.0.1
153
+ - !ruby/object:Gem::Dependency
154
+ name: os
155
+ requirement: !ruby/object:Gem::Requirement
156
+ requirements:
157
+ - - ~>
158
+ - !ruby/object:Gem::Version
159
+ version: 0.9.6
160
+ type: :runtime
161
+ prerelease: false
162
+ version_requirements: !ruby/object:Gem::Requirement
163
+ requirements:
164
+ - - ~>
165
+ - !ruby/object:Gem::Version
166
+ version: 0.9.6
167
+ - !ruby/object:Gem::Dependency
168
+ name: net-ssh-simple
169
+ requirement: !ruby/object:Gem::Requirement
170
+ requirements:
171
+ - - ~>
172
+ - !ruby/object:Gem::Version
173
+ version: 1.6.3
174
+ type: :runtime
175
+ prerelease: false
176
+ version_requirements: !ruby/object:Gem::Requirement
177
+ requirements:
178
+ - - ~>
179
+ - !ruby/object:Gem::Version
180
+ version: 1.6.3
158
181
  - !ruby/object:Gem::Dependency
159
182
  name: aruba
160
183
  requirement: !ruby/object:Gem::Requirement
161
- none: false
162
184
  requirements:
163
185
  - - ~>
164
186
  - !ruby/object:Gem::Version
@@ -166,7 +188,6 @@ dependencies:
166
188
  type: :development
167
189
  prerelease: false
168
190
  version_requirements: !ruby/object:Gem::Requirement
169
- none: false
170
191
  requirements:
171
192
  - - ~>
172
193
  - !ruby/object:Gem::Version
@@ -174,7 +195,6 @@ dependencies:
174
195
  - !ruby/object:Gem::Dependency
175
196
  name: rspec
176
197
  requirement: !ruby/object:Gem::Requirement
177
- none: false
178
198
  requirements:
179
199
  - - ~>
180
200
  - !ruby/object:Gem::Version
@@ -182,7 +202,6 @@ dependencies:
182
202
  type: :development
183
203
  prerelease: false
184
204
  version_requirements: !ruby/object:Gem::Requirement
185
- none: false
186
205
  requirements:
187
206
  - - ~>
188
207
  - !ruby/object:Gem::Version
@@ -190,7 +209,6 @@ dependencies:
190
209
  - !ruby/object:Gem::Dependency
191
210
  name: fakefs
192
211
  requirement: !ruby/object:Gem::Requirement
193
- none: false
194
212
  requirements:
195
213
  - - ~>
196
214
  - !ruby/object:Gem::Version
@@ -198,7 +216,6 @@ dependencies:
198
216
  type: :development
199
217
  prerelease: false
200
218
  version_requirements: !ruby/object:Gem::Requirement
201
- none: false
202
219
  requirements:
203
220
  - - ~>
204
221
  - !ruby/object:Gem::Version
@@ -206,7 +223,6 @@ dependencies:
206
223
  - !ruby/object:Gem::Dependency
207
224
  name: rr
208
225
  requirement: !ruby/object:Gem::Requirement
209
- none: false
210
226
  requirements:
211
227
  - - ~>
212
228
  - !ruby/object:Gem::Version
@@ -214,7 +230,6 @@ dependencies:
214
230
  type: :development
215
231
  prerelease: false
216
232
  version_requirements: !ruby/object:Gem::Requirement
217
- none: false
218
233
  requirements:
219
234
  - - ~>
220
235
  - !ruby/object:Gem::Version
@@ -222,7 +237,6 @@ dependencies:
222
237
  - !ruby/object:Gem::Dependency
223
238
  name: guard
224
239
  requirement: !ruby/object:Gem::Requirement
225
- none: false
226
240
  requirements:
227
241
  - - ~>
228
242
  - !ruby/object:Gem::Version
@@ -230,7 +244,6 @@ dependencies:
230
244
  type: :development
231
245
  prerelease: false
232
246
  version_requirements: !ruby/object:Gem::Requirement
233
- none: false
234
247
  requirements:
235
248
  - - ~>
236
249
  - !ruby/object:Gem::Version
@@ -238,7 +251,6 @@ dependencies:
238
251
  - !ruby/object:Gem::Dependency
239
252
  name: guard-rspec
240
253
  requirement: !ruby/object:Gem::Requirement
241
- none: false
242
254
  requirements:
243
255
  - - ~>
244
256
  - !ruby/object:Gem::Version
@@ -246,7 +258,6 @@ dependencies:
246
258
  type: :development
247
259
  prerelease: false
248
260
  version_requirements: !ruby/object:Gem::Requirement
249
- none: false
250
261
  requirements:
251
262
  - - ~>
252
263
  - !ruby/object:Gem::Version
@@ -254,7 +265,6 @@ dependencies:
254
265
  - !ruby/object:Gem::Dependency
255
266
  name: guard-cucumber
256
267
  requirement: !ruby/object:Gem::Requirement
257
- none: false
258
268
  requirements:
259
269
  - - ~>
260
270
  - !ruby/object:Gem::Version
@@ -262,7 +272,6 @@ dependencies:
262
272
  type: :development
263
273
  prerelease: false
264
274
  version_requirements: !ruby/object:Gem::Requirement
265
- none: false
266
275
  requirements:
267
276
  - - ~>
268
277
  - !ruby/object:Gem::Version
@@ -275,6 +284,7 @@ executables:
275
284
  extensions: []
276
285
  extra_rdoc_files: []
277
286
  files:
287
+ - .editorconfig
278
288
  - Gemfile
279
289
  - Gemfile.lock
280
290
  - Guardfile
@@ -296,10 +306,12 @@ files:
296
306
  - lib/hobo/config.rb
297
307
  - lib/hobo/config/file.rb
298
308
  - lib/hobo/error_handlers/debug.rb
309
+ - lib/hobo/error_handlers/exit_code_map.rb
299
310
  - lib/hobo/error_handlers/friendly.rb
300
311
  - lib/hobo/errors.rb
301
312
  - lib/hobo/help_formatter.rb
302
313
  - lib/hobo/helper/file_locator.rb
314
+ - lib/hobo/helper/http_download.rb
303
315
  - lib/hobo/helper/shell.rb
304
316
  - lib/hobo/helper/vm_command.rb
305
317
  - lib/hobo/lib/host_check.rb
@@ -319,10 +331,12 @@ files:
319
331
  - lib/hobo/patches/slop.rb
320
332
  - lib/hobo/paths.rb
321
333
  - lib/hobo/tasks/assets.rb
334
+ - lib/hobo/tasks/config.rb
322
335
  - lib/hobo/tasks/debug.rb
323
336
  - lib/hobo/tasks/deps.rb
324
- - lib/hobo/tasks/host.rb
325
337
  - lib/hobo/tasks/seed.rb
338
+ - lib/hobo/tasks/system.rb
339
+ - lib/hobo/tasks/system/completions.rb
326
340
  - lib/hobo/tasks/tools.rb
327
341
  - lib/hobo/tasks/vm.rb
328
342
  - lib/hobo/ui.rb
@@ -348,36 +362,30 @@ files:
348
362
  - spec/hobo/patches/rake_spec.rb
349
363
  - spec/hobo/paths_spec.rb
350
364
  - spec/hobo/ui_spec.rb
365
+ - spec/hobo/util_spec.rb
351
366
  - spec/spec_helper.rb
352
367
  homepage: ''
353
368
  licenses: []
369
+ metadata: {}
354
370
  post_install_message:
355
371
  rdoc_options: []
356
372
  require_paths:
357
373
  - lib
358
374
  required_ruby_version: !ruby/object:Gem::Requirement
359
- none: false
360
375
  requirements:
361
376
  - - ! '>='
362
377
  - !ruby/object:Gem::Version
363
378
  version: '0'
364
- segments:
365
- - 0
366
- hash: -317158295052344104
367
379
  required_rubygems_version: !ruby/object:Gem::Requirement
368
- none: false
369
380
  requirements:
370
381
  - - ! '>='
371
382
  - !ruby/object:Gem::Version
372
383
  version: '0'
373
- segments:
374
- - 0
375
- hash: -317158295052344104
376
384
  requirements: []
377
385
  rubyforge_project:
378
- rubygems_version: 1.8.23
386
+ rubygems_version: 2.2.2
379
387
  signing_key:
380
- specification_version: 3
388
+ specification_version: 4
381
389
  summary: Inviqan toolbelt
382
390
  test_files:
383
391
  - features/deps.feature
@@ -407,4 +415,5 @@ test_files:
407
415
  - spec/hobo/patches/rake_spec.rb
408
416
  - spec/hobo/paths_spec.rb
409
417
  - spec/hobo/ui_spec.rb
418
+ - spec/hobo/util_spec.rb
410
419
  - spec/spec_helper.rb