furnish-vagrant 0.0.3 → 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,15 @@
1
+ ---
2
+ !binary "U0hBMQ==":
3
+ metadata.gz: !binary |-
4
+ YTVhMzE5YTgzNzdmMzMxMGQ3OTY3MjllMjdiMTI2YTFlODI5N2JhZA==
5
+ data.tar.gz: !binary |-
6
+ MjBkNTAwMWFjYjE5MTcxMjQyY2FhZjc5NTNlOTFjNTIwN2IyYjZiZg==
7
+ !binary "U0hBNTEy":
8
+ metadata.gz: !binary |-
9
+ ZmEwYTNlODUxNTljNjFmZGIxYTE4N2ZhOTNiZDQyMjA1ZTFiOTI3NTEwM2Rj
10
+ YzlmOGY5YjQzYzM2MzJiYzBiMTg2MmYwMzFhMjRhNzM3MjRjZTJhMTk0NmU3
11
+ YzAxZGIxZWI2MmQzZWNkOWQwMTMyYzhjNWQ2YWM1Y2IzMDUwZDY=
12
+ data.tar.gz: !binary |-
13
+ YjdmY2QxODY4ODU5MzVjYzFkZTBmODgwN2MyNTQ2Mjg3ZWU5MzgxZGFjMmU3
14
+ Y2JmYjE5NzNhZDM3YjEyZTkwNThhMWUwMzZkOTI2OTRlNTc3MTc2MzZiZTE4
15
+ NGU1NThlN2JjNGVkYmI2NzU5OTJjNzA3Y2YwYzQ3OWUyYjk3MjE=
data/CHANGELOG.md CHANGED
@@ -1,3 +1,6 @@
1
+ * 0.1.0 (04/10/2013)
2
+ * Update provisioner to use furnish 0.1.0 and Furnish::Provisioner::API.
3
+ * Ensure function on ruby 2.0.
1
4
  * 0.0.3 (03/25/2013)
2
5
  * Update dependency to vagrant-prison 0.2.0.
3
6
  * 0.0.2 (03/25/2013)
data/Gemfile CHANGED
@@ -2,5 +2,3 @@ source 'https://rubygems.org'
2
2
 
3
3
  # Specify your gem's dependencies in furnish-vagrant.gemspec
4
4
  gemspec
5
-
6
- gem 'guard-rake', :git => "https://github.com/erikh/guard-rake", :branch => "failure_ok"
data/Guardfile CHANGED
@@ -5,6 +5,6 @@ guard 'minitest' do
5
5
  watch(%r!^test/helper\.rb!) { "test" }
6
6
  end
7
7
 
8
- guard 'rake', :failure_ok => true, :run_on_all => false, :task => 'rdoc_cov' do
8
+ guard 'rake', :run_on_all => false, :task => 'rdoc_cov' do
9
9
  watch(%r!^lib/(.*)([^/]+)\.rb!)
10
10
  end
@@ -18,13 +18,13 @@ Gem::Specification.new do |gem|
18
18
  gem.require_paths = ["lib"]
19
19
 
20
20
  gem.add_dependency 'vagrant-prison', '~> 0.2.0'
21
- gem.add_dependency 'furnish', '~> 0.0.4'
21
+ gem.add_dependency 'furnish', '~> 0.1.0'
22
22
 
23
- gem.add_development_dependency 'furnish-ip', '~> 0.0.3'
23
+ gem.add_development_dependency 'furnish-ip', '~> 0.1.0'
24
24
  gem.add_development_dependency 'rake'
25
25
  gem.add_development_dependency 'minitest', '~> 4.5.0'
26
26
  gem.add_development_dependency 'guard-minitest'
27
- gem.add_development_dependency 'guard-rake'
27
+ gem.add_development_dependency 'guard-rake', '~> 0.0.8'
28
28
  gem.add_development_dependency 'rdoc', '~> 4'
29
29
  gem.add_development_dependency 'rb-fsevent'
30
30
  gem.add_development_dependency 'simplecov'
@@ -1,5 +1,7 @@
1
1
  require 'vagrant/prison'
2
2
  require 'furnish/vagrant/ui'
3
+ require 'furnish/provisioners/api'
4
+ require 'set'
3
5
 
4
6
  module Furnish # :nodoc:
5
7
  module Provisioner # :nodoc:
@@ -20,17 +22,82 @@ module Furnish # :nodoc:
20
22
  # See Furnish::IP (furnish-ip) gem for a provisioner which can be used to
21
23
  # deal with IP allocation and vagrant.
22
24
  #
23
- class Vagrant
24
- # Furnish provisioner requirement; name of Furnish::ProvisionerGroup
25
- attr_accessor :name
25
+ class Vagrant < API
26
+ ##
27
+ # :attr: box_url
28
+ #
29
+ # Specifies vagrant's box_url. If specified, and #box is not, #box will
30
+ # be extracted from this value.
31
+ #
32
+ # Boxes will be downloaded on demand if they do not already exist.
33
+ #
34
+ furnish_property :box_url,
35
+ "Vagrant's box_url argument",
36
+ String
26
37
 
27
- # Vagrant's box_url argument. box will be coerced from this if it is not
28
- # supplied.
29
- attr_accessor :box_url
38
+ ##
39
+ # :attr: box
40
+ #
41
+ # Specified a vagrant box name. Will be used for all VMs, will be used
42
+ # from #box_url if unset.
43
+ #
44
+ furnish_property :box,
45
+ "Vagrant's box argument. Will be extracted from box_url if unset.",
46
+ String
30
47
 
31
- # Vagrant's box argument. if not supplied, will come from box_url. One of
32
- # box or box_url must exist for provisioning to succeed.
33
- attr_accessor :box
48
+ ##
49
+ # :attr: number_of_servers
50
+ #
51
+ # The integer number of boxes to bring up for this provision.
52
+ #
53
+ # Takes a list of IPs from a previous provisioner's :ips result. This
54
+ # :ips does not yield a count that matches this number, provisioning will
55
+ # fail.
56
+ furnish_property :number_of_servers,
57
+ "The number of boxes to bring up for this provision",
58
+ Integer
59
+
60
+ ##
61
+ # :attr: db_name
62
+ #
63
+ # A tag that namespaces the VMs provisioned here.
64
+ #
65
+ # The default is "default".
66
+ furnish_property :db_name,
67
+ "'default' by default, a tag namespacing this set of provisions",
68
+ String
69
+
70
+ ##
71
+ # :attr: customizations
72
+ #
73
+ # An array of strings, or array of array of strings, which are passed to
74
+ # vagrant's vm.customize for each block. These are usually parameters
75
+ # passed directly to VBoxManage.
76
+ #
77
+ # Example:
78
+ #
79
+ # # one customization
80
+ # Furnish::Provisioners::Vagrant.new(
81
+ # :customizations => ["modifyvm", :id, "--memory", 1024]
82
+ # )
83
+ #
84
+ # # multiple customizations
85
+ # Furnish::Provisioners::Vagrant.new(
86
+ # :customizations => [
87
+ # [ "modifyvm", :id, "--memory", 1024 ]
88
+ # [ "modifyvm", :id, "--cpus", 4 ]
89
+ # ]
90
+ # )
91
+ #
92
+ furnish_property :customizations,
93
+ "an array of arguments that would go to vm.customize. If an array of arrays are supplied, vm.customize is called for each inner array with it as the argument.",
94
+ Array
95
+
96
+ configure_startup do
97
+ requires :ips, "A set of IP addresses to use for the host-only networks.", Set
98
+ end
99
+
100
+ configure_shutdown { accepts_from_any true }
34
101
 
35
102
  #
36
103
  # Construct a new vagrant provisioner -- takes a hash of arguments.
@@ -43,13 +110,7 @@ module Furnish # :nodoc:
43
110
  # * :customziations - an array of arguments that would go to vm.customize. If an array of arrays are supplied, vm.customize is called for each inner array with it as the argument.
44
111
  #
45
112
  def initialize(args)
46
- unless args.kind_of?(Hash)
47
- raise ArgumentError, "arguments must be a hash"
48
- end
49
-
50
- args.each do |k,v|
51
- instance_variable_set("@#{k}", v)
52
- end
113
+ super
53
114
 
54
115
  normalize_box_args
55
116
  normalize_customizations
@@ -63,13 +124,13 @@ module Furnish # :nodoc:
63
124
  # Helper method to structure supplied customizations.
64
125
  #
65
126
  def normalize_customizations
66
- if @customizations
67
- unless @customizations.kind_of?(Array)
127
+ if customizations
128
+ unless customizations.kind_of?(Array)
68
129
  raise ArgumentError, "customizations must be an array of customizations, or array of array of multiple customizations."
69
130
  end
70
131
 
71
- unless @customizations.all? { |x| x.kind_of?(Array) }
72
- @customizations = [@customizations]
132
+ unless customizations.all? { |x| x.kind_of?(Array) }
133
+ @customizations = [customizations]
73
134
  end
74
135
  end
75
136
  end
@@ -78,71 +139,71 @@ module Furnish # :nodoc:
78
139
  # Helper method to coerce box and box_url into something normal.
79
140
  #
80
141
  def normalize_box_args
81
- if @box_url
82
- @box = File.basename(@box_url).gsub(/\.box$/, '')
142
+ if box_url
143
+ @box = File.basename(box_url).gsub(/\.box$/, '')
83
144
  end
84
145
 
85
- unless @box
146
+ unless box
86
147
  raise ArgumentError, "#{self.class} must be configured with a box or box_url."
87
148
  end
88
149
  end
89
150
 
90
151
  #
91
- # Provision with vagrant. Expects a list of IP addresses used as its
152
+ # Provision with vagrant. Expects a set of IP addresses used as its
92
153
  # arguments.
93
154
  #
94
- # During provisioning, the startup method is expected to get a list of IP
95
- # addresses to configure vagrant's boxes with as a part of a host-only
96
- # network. If the number of servers and the number of IP addresses received
97
- # are not equal, provisioning will fail.
155
+ # During provisioning, the startup method is expected to get a set of IP
156
+ # addresses via :ips to configure vagrant's boxes with as a part of a
157
+ # host-only network. If the number of servers and the number of IP
158
+ # addresses received are not equal, provisioning will fail.
98
159
  #
99
- def startup(*args)
100
- ips = args.first
160
+ def startup(args={})
161
+ ips = args[:ips]
101
162
 
102
- if ips.count != @number_of_servers
163
+ if ips.count != number_of_servers
103
164
  raise "The number of requested IP addresses does not match the number of requested servers"
104
165
  end
105
166
 
106
167
  @prison = ::Vagrant::Prison.new(Dir.mktmpdir, false)
107
168
 
108
- @prison.name = name
169
+ @prison.name = furnish_group_name
109
170
 
110
171
  @prison.configure do |config|
111
- config.vm.box_url = @box_url
112
- config.vm.box = @box
172
+ config.vm.box_url = box_url
173
+ config.vm.box = box
113
174
 
114
- if @customizations
115
- @customizations.each { |c| config.vm.customize c }
175
+ if customizations
176
+ customizations.each { |c| config.vm.customize c }
116
177
  end
117
178
 
118
179
  ips.each_with_index do |ip, x|
119
- config.vm.define "#{name}-#{x}" do |this_config|
180
+ config.vm.define "#{furnish_group_name}-#{x}" do |this_config|
120
181
  this_config.vm.network :hostonly, ip
121
182
  end
122
183
  end
123
184
  end
124
185
 
125
186
  @prison.construct(:ui_class => Furnish::Vagrant::UI)
126
- @db[name] = @prison # eager save in case start has issues
187
+ @db[furnish_group_name] = @prison # eager save in case start has issues
127
188
 
128
- return @prison.start ? ips : false
189
+ return @prison.start ? { } : false
129
190
  ensure
130
- @db[name] = @prison
191
+ @db[furnish_group_name] = @prison
131
192
  end
132
193
 
133
194
  #
134
195
  # Deprovision with Vagrant.
135
196
  #
136
- def shutdown
137
- @prison ||= @db[name]
197
+ def shutdown(args={})
198
+ @prison ||= @db[furnish_group_name]
138
199
 
139
200
  if @prison
140
201
  @prison.configure_environment(:ui_class => Furnish::Vagrant::UI)
141
202
  @prison.cleanup
142
203
  end
143
204
 
144
- @db.delete(name)
145
- return true
205
+ @db.delete(furnish_group_name)
206
+ return { }
146
207
  end
147
208
 
148
209
  #
@@ -150,7 +211,7 @@ module Furnish # :nodoc:
150
211
  # prison directory used for this provision.
151
212
  #
152
213
  def report
153
- ["#{@number_of_servers} servers; prison dir: #{@prison.dir}"]
214
+ ["#{number_of_servers} servers", "prison dir: #{@prison.dir || "unprovisioned"}"]
154
215
  end
155
216
  end
156
217
  end
@@ -1,6 +1,6 @@
1
1
  module Furnish
2
2
  module Vagrant
3
3
  # The version of furnish-vagrant.
4
- VERSION = '0.0.3'
4
+ VERSION = '0.1.0'
5
5
  end
6
6
  end
data/test/test_vagrant.rb CHANGED
@@ -16,6 +16,7 @@ class TestVagrant < Furnish::TestCase
16
16
  Furnish::Vagrant::UI.debug_level = 0
17
17
 
18
18
  @sched = Furnish::Scheduler.new
19
+ @klass = Furnish::Provisioner::Vagrant
19
20
  sched.serial = true
20
21
  setup_ip
21
22
  end
@@ -58,10 +59,14 @@ class TestVagrant < Furnish::TestCase
58
59
  @ip.allocate("10.10.10.1")
59
60
  end
60
61
 
62
+ def make_auto_ip(num, ip=@ip)
63
+ Furnish::Provisioner::AutoIP.new(:ip => ip, :number_of_addresses => num)
64
+ end
65
+
61
66
  def make_provisioner(num=1)
62
67
  [
63
- Furnish::Provisioner::AutoIP.new(@ip, num),
64
- Furnish::Provisioner::Vagrant.new(
68
+ make_auto_ip(num),
69
+ @klass.new(
65
70
  :box_url => BOX_URL,
66
71
  :number_of_servers => num
67
72
  )
@@ -70,35 +75,86 @@ class TestVagrant < Furnish::TestCase
70
75
 
71
76
  def test_constructor
72
77
  assert_raises(ArgumentError, "arguments must be a hash") do
73
- Furnish::Provisioner::Vagrant.new(nil)
78
+ @klass.new(nil)
74
79
  end
75
80
 
76
81
  assert_raises(ArgumentError, "Furnish::Provisioner::Vagrant must be configured with a box or box_url") do
77
- Furnish::Provisioner::Vagrant.new({})
82
+ @klass.new({})
78
83
  end
79
84
 
80
- assert(Furnish::Provisioner::Vagrant.new(:box_url => BOX_URL))
81
- assert(Furnish::Provisioner::Vagrant.new(:box => "precise64"))
85
+ assert(@klass.new(:box_url => BOX_URL))
86
+ assert(@klass.new(:box => "precise64"))
82
87
 
83
88
  assert_raises(ArgumentError, "customizations must be an array of customizations, or array of array of multiple customizations.") do
84
- Furnish::Provisioner::Vagrant.new(:box_url => BOX_URL, :customizations => 1)
89
+ @klass.new(:box_url => BOX_URL, :customizations => 1)
85
90
  end
86
91
 
87
92
  assert(
88
- Furnish::Provisioner::Vagrant.new(
93
+ @klass.new(
89
94
  :box_url => BOX_URL,
90
95
  :customizations => %w[one two three]
91
96
  )
92
97
  )
93
98
 
94
99
  assert(
95
- Furnish::Provisioner::Vagrant.new(
100
+ @klass.new(
96
101
  :box_url => BOX_URL,
97
102
  :customizations => [%w[one two three], %w[four five six]]
98
103
  )
99
104
  )
100
105
  end
101
106
 
107
+ def test_properties
108
+ assert_equal(
109
+ {
110
+ :box_url => {
111
+ :description => "Vagrant's box_url argument",
112
+ :type => String
113
+ },
114
+
115
+ :box => {
116
+ :description => "Vagrant's box argument. Will be extracted from box_url if unset.",
117
+ :type => String
118
+ },
119
+
120
+ :number_of_servers => {
121
+ :description => "The number of boxes to bring up for this provision",
122
+ :type => Integer
123
+ },
124
+
125
+ :db_name => {
126
+ :description => "'default' by default, a tag namespacing this set of provisions",
127
+ :type => String
128
+ },
129
+
130
+ :customizations => {
131
+ :description => "an array of arguments that would go to vm.customize. If an array of arrays are supplied, vm.customize is called for each inner array with it as the argument.",
132
+ :type => Array
133
+ }
134
+ },
135
+ @klass.furnish_properties
136
+ )
137
+ end
138
+
139
+ def test_protocol
140
+ assert_equal(
141
+ {
142
+ :ips => {
143
+ :description => "A set of IP addresses to use for the host-only networks.",
144
+ :type => Set
145
+ }
146
+ },
147
+ @klass.startup_protocol[:requires]
148
+ )
149
+
150
+ assert_empty(@klass.startup_protocol[:accepts])
151
+ assert_empty(@klass.startup_protocol[:yields])
152
+ assert_empty(@klass.shutdown_protocol[:accepts])
153
+ assert_empty(@klass.shutdown_protocol[:yields])
154
+ assert_empty(@klass.shutdown_protocol[:requires])
155
+ assert(@klass.shutdown_protocol[:accepts_from_any])
156
+ end
157
+
102
158
  def test_basic_provision
103
159
  sched.schedule_provision('test1', make_provisioner, [])
104
160
  sched.run
@@ -118,22 +174,34 @@ class TestVagrant < Furnish::TestCase
118
174
  assert_equal(3, @ip.group_ips('test2').count, '3 machines and IPs were allocated for test2 group')
119
175
 
120
176
  assert_match(
121
- /^1 servers; prison dir: /,
177
+ /^1 servers/,
122
178
  sched.vm.groups['test1'].last.report.first,
123
179
  "report reflects number of servers provisioned for group test1"
124
180
  )
125
181
 
126
182
  assert_match(
127
- /^3 servers; prison dir: /,
183
+ /^prison dir:/,
184
+ sched.vm.groups['test1'].last.report.last,
185
+ "second report reflects prison dir for group test1"
186
+ )
187
+
188
+ assert_match(
189
+ /^3 servers/,
128
190
  sched.vm.groups['test2'].last.report.first,
129
191
  "report reflects number of servers provisioned for group test2"
130
192
  )
193
+
194
+ assert_match(
195
+ /^prison dir:/,
196
+ sched.vm.groups['test2'].last.report.last,
197
+ "second report reflects prison dir for group test2"
198
+ )
131
199
  end
132
200
 
133
201
  def test_invalid_provision
134
202
  mismatched_num = [
135
- Furnish::Provisioner::AutoIP.new(@ip, 1),
136
- Furnish::Provisioner::Vagrant.new(
203
+ make_auto_ip(1),
204
+ @klass.new(
137
205
  :box_url => BOX_URL,
138
206
  :number_of_servers => 3
139
207
  )
@@ -149,8 +217,8 @@ class TestVagrant < Furnish::TestCase
149
217
 
150
218
  def test_customized_provision
151
219
  customized = [
152
- Furnish::Provisioner::AutoIP.new(@ip, 1),
153
- Furnish::Provisioner::Vagrant.new(
220
+ make_auto_ip(1),
221
+ @klass.new(
154
222
  :box_url => BOX_URL,
155
223
  :number_of_servers => 1,
156
224
  :customizations => [["modifyvm", :id, "--memory", 1024]]
metadata CHANGED
@@ -1,20 +1,18 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: furnish-vagrant
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
5
- prerelease:
4
+ version: 0.1.0
6
5
  platform: ruby
7
6
  authors:
8
7
  - Erik Hollensbe
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2013-03-26 00:00:00.000000000 Z
11
+ date: 2013-04-10 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: vagrant-prison
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,39 +27,34 @@ dependencies:
30
27
  - !ruby/object:Gem::Dependency
31
28
  name: furnish
32
29
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
30
  requirements:
35
31
  - - ~>
36
32
  - !ruby/object:Gem::Version
37
- version: 0.0.4
33
+ version: 0.1.0
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
45
- version: 0.0.4
40
+ version: 0.1.0
46
41
  - !ruby/object:Gem::Dependency
47
42
  name: furnish-ip
48
43
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
44
  requirements:
51
45
  - - ~>
52
46
  - !ruby/object:Gem::Version
53
- version: 0.0.3
47
+ version: 0.1.0
54
48
  type: :development
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
61
- version: 0.0.3
54
+ version: 0.1.0
62
55
  - !ruby/object:Gem::Dependency
63
56
  name: rake
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: :development
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: minitest
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: :development
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: guard-minitest
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: :development
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,23 +97,20 @@ dependencies:
110
97
  - !ruby/object:Gem::Dependency
111
98
  name: guard-rake
112
99
  requirement: !ruby/object:Gem::Requirement
113
- none: false
114
100
  requirements:
115
- - - ! '>='
101
+ - - ~>
116
102
  - !ruby/object:Gem::Version
117
- version: '0'
103
+ version: 0.0.8
118
104
  type: :development
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
125
- version: '0'
110
+ version: 0.0.8
126
111
  - !ruby/object:Gem::Dependency
127
112
  name: rdoc
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: :development
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: rb-fsevent
144
127
  requirement: !ruby/object:Gem::Requirement
145
- none: false
146
128
  requirements:
147
129
  - - ! '>='
148
130
  - !ruby/object:Gem::Version
@@ -150,7 +132,6 @@ dependencies:
150
132
  type: :development
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
@@ -158,7 +139,6 @@ dependencies:
158
139
  - !ruby/object:Gem::Dependency
159
140
  name: simplecov
160
141
  requirement: !ruby/object:Gem::Requirement
161
- none: false
162
142
  requirements:
163
143
  - - ! '>='
164
144
  - !ruby/object:Gem::Version
@@ -166,7 +146,6 @@ dependencies:
166
146
  type: :development
167
147
  prerelease: false
168
148
  version_requirements: !ruby/object:Gem::Requirement
169
- none: false
170
149
  requirements:
171
150
  - - ! '>='
172
151
  - !ruby/object:Gem::Version
@@ -174,7 +153,6 @@ dependencies:
174
153
  - !ruby/object:Gem::Dependency
175
154
  name: net-ssh
176
155
  requirement: !ruby/object:Gem::Requirement
177
- none: false
178
156
  requirements:
179
157
  - - ! '>='
180
158
  - !ruby/object:Gem::Version
@@ -182,7 +160,6 @@ dependencies:
182
160
  type: :development
183
161
  prerelease: false
184
162
  version_requirements: !ruby/object:Gem::Requirement
185
- none: false
186
163
  requirements:
187
164
  - - ! '>='
188
165
  - !ruby/object:Gem::Version
@@ -209,33 +186,26 @@ files:
209
186
  - test/test_vagrant.rb
210
187
  homepage: https://github.com/chef-workflow/furnish-vagrant
211
188
  licenses: []
189
+ metadata: {}
212
190
  post_install_message:
213
191
  rdoc_options: []
214
192
  require_paths:
215
193
  - lib
216
194
  required_ruby_version: !ruby/object:Gem::Requirement
217
- none: false
218
195
  requirements:
219
196
  - - ! '>='
220
197
  - !ruby/object:Gem::Version
221
198
  version: '0'
222
- segments:
223
- - 0
224
- hash: 1570501891906116783
225
199
  required_rubygems_version: !ruby/object:Gem::Requirement
226
- none: false
227
200
  requirements:
228
201
  - - ! '>='
229
202
  - !ruby/object:Gem::Version
230
203
  version: '0'
231
- segments:
232
- - 0
233
- hash: 1570501891906116783
234
204
  requirements: []
235
205
  rubyforge_project:
236
- rubygems_version: 1.8.25
206
+ rubygems_version: 2.0.3
237
207
  signing_key:
238
- specification_version: 3
208
+ specification_version: 4
239
209
  summary: Furnish -> Vagrant 1.0.x bridge
240
210
  test_files:
241
211
  - test/helper.rb