kitchen-fog 0.6.2 → 0.7.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.
- data/CHANGELOG.md +5 -45
- data/README.md +16 -13
- data/kitchen-fog.gemspec +1 -1
- data/lib/kitchen/driver/fog.rb +9 -0
- data/lib/kitchen/driver/fog_version.rb +1 -1
- data/spec/kitchen/driver/fog_spec.rb +37 -37
- metadata +25 -7
- checksums.yaml +0 -7
data/CHANGELOG.md
CHANGED
|
@@ -1,53 +1,13 @@
|
|
|
1
|
-
# 0.
|
|
1
|
+
# 0.7.0 / 2013-10-02
|
|
2
2
|
|
|
3
3
|
### New Features
|
|
4
4
|
|
|
5
|
-
*
|
|
6
|
-
|
|
7
|
-
### Improvements
|
|
8
|
-
|
|
9
|
-
* PR [#19][] - Don't assume `public` and `private` network names exist
|
|
10
|
-
* PR [#19][] - Make IPv4 or IPv6 configurable instead of relying on Fog to pick
|
|
11
|
-
|
|
12
|
-
### Bug Fixes
|
|
13
|
-
|
|
14
|
-
* PR [#20][] - Limit generated hostnames to 64 characters
|
|
5
|
+
* PR [#2][] - release created floating ips when destroying instance (thanks bkw)
|
|
6
|
+
* PR [#1][] - bump dependency on test-kitchen to release version 1.1.0 (thanks bkw)
|
|
15
7
|
|
|
16
|
-
# 0.
|
|
8
|
+
# 0.6.2 / 2013-10-02
|
|
17
9
|
|
|
18
10
|
### New Features
|
|
19
11
|
|
|
20
|
-
*
|
|
21
|
-
* PR [#11][] - Support `ssh_key` option; via [@saketoba][]
|
|
22
|
-
|
|
23
|
-
# 0.2.0 / 2013-05-11
|
|
24
|
-
|
|
25
|
-
### Bug Fixes
|
|
26
|
-
|
|
27
|
-
* PR [#7][] - `disable_ssl_validation` wasn't being respected on destroy
|
|
28
|
-
|
|
29
|
-
### New Features
|
|
30
|
-
|
|
31
|
-
* PR [#10][] - Support optional `openstack_region` and `openstack_service_name`
|
|
32
|
-
* PR [#2][] - Support `key_name:` option; via [@stevendanna][]
|
|
33
|
-
|
|
34
|
-
### Improvements
|
|
35
|
-
|
|
36
|
-
* PR [#7][] - Clean up/refactor to pass style checks
|
|
37
|
-
* PR [#9][] - Add some (probably overkill) RSpec tests
|
|
38
|
-
|
|
39
|
-
# 0.1.0 / 2013-03-12
|
|
40
|
-
|
|
41
|
-
* Initial release! Woo!
|
|
42
|
-
|
|
43
|
-
[#20]: https://github.com/RoboticCheese/kitchen-openstack/pull/20
|
|
44
|
-
[#19]: https://github.com/RoboticCheese/kitchen-openstack/pull/19
|
|
45
|
-
[#12]: https://github.com/RoboticCheese/kitchen-openstack/pull/12
|
|
46
|
-
[#11]: https://github.com/RoboticCheese/kitchen-openstack/pull/11
|
|
47
|
-
[#10]: https://github.com/RoboticCheese/kitchen-openstack/pull/10
|
|
48
|
-
[#9]: https://github.com/RoboticCheese/kitchen-openstack/pull/9
|
|
49
|
-
[#7]: https://github.com/RoboticCheese/kitchen-openstack/pull/7
|
|
50
|
-
[#2]: https://github.com/RoboticCheese/kitchen-openstack/pull/2
|
|
12
|
+
* Generalize kitchen-openstack to work with other providers
|
|
51
13
|
|
|
52
|
-
[@saketoba]: https://github.com/saketoba
|
|
53
|
-
[@stevendanna]: https://github.com/stevendanna
|
data/README.md
CHANGED
|
@@ -25,23 +25,26 @@ Or install it yourself as:
|
|
|
25
25
|
|
|
26
26
|
Provide, at a minimum, the required driver options in your `.kitchen.yml` file. The authentication and server_create sections are specific to the provider:
|
|
27
27
|
|
|
28
|
+
---
|
|
28
29
|
driver_plugin: fog
|
|
29
30
|
driver_config:
|
|
30
31
|
authentication:
|
|
31
|
-
provider: '
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
version: v2
|
|
38
|
-
hp_use_upass_auth_style: true
|
|
32
|
+
provider: 'openstack'
|
|
33
|
+
openstack_username: 'username'
|
|
34
|
+
openstack_api_key: 'password'
|
|
35
|
+
openstack_auth_url: 'https://id.example.com:35357/v2.0/tokens'
|
|
36
|
+
openstack_tenant: 'tenant_name'
|
|
37
|
+
openstack_region: 'region-b.geo-1'
|
|
39
38
|
server_create:
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
39
|
+
flavor_ref: '103'
|
|
40
|
+
image_ref: '8c096c29-a666-4b82-99c4-c77dc70cfb40'
|
|
41
|
+
key_name: 'bover'
|
|
42
|
+
nics: [ 'net_id': '76abe0b1-581a-4698-b200-a2e890f4eb8d' ]
|
|
43
|
+
floating_ip_create:
|
|
44
|
+
floating_network_id: '7da74520-9d5e-427b-a508-213c84e69616'
|
|
45
|
+
require_chef_omnibus: latest
|
|
46
|
+
public_key_path: /home/terry/.ssh/bover.pub
|
|
47
|
+
username: ubuntu
|
|
45
48
|
|
|
46
49
|
By default, a unique server name will be generated and the current user's SSH
|
|
47
50
|
key will be used, though that behavior can be overridden with additional
|
data/kitchen-fog.gemspec
CHANGED
|
@@ -18,7 +18,7 @@ Gem::Specification.new do |spec|
|
|
|
18
18
|
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
|
19
19
|
spec.require_paths = ['lib']
|
|
20
20
|
|
|
21
|
-
spec.add_dependency 'test-kitchen', '~> 1.
|
|
21
|
+
spec.add_dependency 'test-kitchen', '~> 1.1.0'
|
|
22
22
|
spec.add_dependency 'fog', '~> 1.15'
|
|
23
23
|
|
|
24
24
|
spec.add_development_dependency 'bundler'
|
data/lib/kitchen/driver/fog.rb
CHANGED
|
@@ -61,6 +61,12 @@ module Kitchen
|
|
|
61
61
|
server = compute.servers.get(state[:server_id])
|
|
62
62
|
server.destroy unless server.nil?
|
|
63
63
|
info "Fog instance <#{state[:server_id]}> destroyed."
|
|
64
|
+
unless config[:floating_ip_create].nil?
|
|
65
|
+
network.floating_ips.destroy(state[:floating_ip_id])
|
|
66
|
+
info "Fog floating ip #{state[:hostname]} " +
|
|
67
|
+
"<#{state[:floating_ip_id]}> released."
|
|
68
|
+
state.delete(:floating_ip_id)
|
|
69
|
+
end
|
|
64
70
|
state.delete(:server_id)
|
|
65
71
|
state.delete(:hostname)
|
|
66
72
|
end
|
|
@@ -104,6 +110,9 @@ module Kitchen
|
|
|
104
110
|
floater = network.floating_ips.create(hsh)
|
|
105
111
|
floating_id = floater.id
|
|
106
112
|
state[:hostname] = floater.floating_ip_address
|
|
113
|
+
state[:floating_ip_id] = floating_id
|
|
114
|
+
info "Fog floating ip #{state[:hostname]} " +
|
|
115
|
+
"<#{state[:floating_ip_id]}> created."
|
|
107
116
|
port = network.ports(:filters => { :device_id => server.id }).first
|
|
108
117
|
network.associate_floating_ip(floating_id, port.id)
|
|
109
118
|
end
|
|
@@ -41,29 +41,29 @@ describe Kitchen::Driver::Fog do
|
|
|
41
41
|
describe '#initialize'do
|
|
42
42
|
context 'default options' do
|
|
43
43
|
it 'defaults to no name' do
|
|
44
|
-
|
|
44
|
+
driver[:name].should eq(nil)
|
|
45
45
|
end
|
|
46
46
|
|
|
47
47
|
it 'defaults to local user\'s SSH public key' do
|
|
48
|
-
|
|
48
|
+
driver[:public_key_path].should eq(File.expand_path(
|
|
49
49
|
'~/.ssh/id_dsa.pub'))
|
|
50
50
|
end
|
|
51
51
|
|
|
52
52
|
it 'defaults to SSH with root user on port 22' do
|
|
53
|
-
|
|
54
|
-
|
|
53
|
+
driver[:username].should eq('root')
|
|
54
|
+
driver[:port].should eq('22')
|
|
55
55
|
end
|
|
56
56
|
|
|
57
57
|
it 'defaults to use ipv4' do
|
|
58
|
-
|
|
58
|
+
driver[:use_ipv6].should eq(false)
|
|
59
59
|
end
|
|
60
60
|
|
|
61
61
|
it 'defaults to no network name' do
|
|
62
|
-
|
|
62
|
+
driver[:network_name].should eq(nil)
|
|
63
63
|
end
|
|
64
64
|
|
|
65
65
|
it 'defaults to no upload_public_ssh_key' do
|
|
66
|
-
|
|
66
|
+
driver[:upload_public_ssh_key].should eq(false)
|
|
67
67
|
end
|
|
68
68
|
end
|
|
69
69
|
|
|
@@ -90,12 +90,12 @@ describe Kitchen::Driver::Fog do
|
|
|
90
90
|
it 'uses all the overridden options' do
|
|
91
91
|
drv = driver
|
|
92
92
|
config.each do |k, v|
|
|
93
|
-
|
|
93
|
+
drv[k].should eq(v)
|
|
94
94
|
end
|
|
95
95
|
end
|
|
96
96
|
|
|
97
97
|
it 'SSH with user-specified private key' do
|
|
98
|
-
|
|
98
|
+
driver[:ssh_key].should eq('/path/to/id_rsa')
|
|
99
99
|
end
|
|
100
100
|
end
|
|
101
101
|
end
|
|
@@ -134,12 +134,12 @@ describe Kitchen::Driver::Fog do
|
|
|
134
134
|
|
|
135
135
|
it 'generates a server name in the absence of one' do
|
|
136
136
|
driver.create(state)
|
|
137
|
-
|
|
137
|
+
driver[:name].should eq('a_monkey!')
|
|
138
138
|
end
|
|
139
139
|
|
|
140
140
|
it 'gets a proper hostname (IP)' do
|
|
141
141
|
driver.create(state)
|
|
142
|
-
|
|
142
|
+
state[:hostname].should eq('1.2.3.4')
|
|
143
143
|
end
|
|
144
144
|
|
|
145
145
|
it 'does not disable SSL validation' do
|
|
@@ -245,7 +245,7 @@ describe Kitchen::Driver::Fog do
|
|
|
245
245
|
it 'creates a new compute connection' do
|
|
246
246
|
Fog::Compute.stub(:new) { |arg| arg }
|
|
247
247
|
res = config.merge({ :provider => 'fog' })
|
|
248
|
-
|
|
248
|
+
driver.send(:compute).should eq(res[:authentication])
|
|
249
249
|
end
|
|
250
250
|
end
|
|
251
251
|
|
|
@@ -299,8 +299,8 @@ describe Kitchen::Driver::Fog do
|
|
|
299
299
|
|
|
300
300
|
it 'creates the server using a compute connection' do
|
|
301
301
|
state = {}
|
|
302
|
-
|
|
303
|
-
|
|
302
|
+
driver.send(:create_server, state).should eq(server)
|
|
303
|
+
state.should eq({ :server_id => 'test222' })
|
|
304
304
|
end
|
|
305
305
|
end
|
|
306
306
|
|
|
@@ -317,8 +317,8 @@ describe Kitchen::Driver::Fog do
|
|
|
317
317
|
|
|
318
318
|
it 'passes that public key path to Fog' do
|
|
319
319
|
state = {}
|
|
320
|
-
|
|
321
|
-
|
|
320
|
+
driver.send(:create_server, state).should eq(server)
|
|
321
|
+
state.should eq({ :server_id => 'test222' })
|
|
322
322
|
end
|
|
323
323
|
end
|
|
324
324
|
|
|
@@ -336,8 +336,8 @@ describe Kitchen::Driver::Fog do
|
|
|
336
336
|
|
|
337
337
|
it 'passes that key name to Fog' do
|
|
338
338
|
state = {}
|
|
339
|
-
|
|
340
|
-
|
|
339
|
+
driver.send(:create_server, state).should eq(server)
|
|
340
|
+
state.should eq({ :server_id => 'test222' })
|
|
341
341
|
end
|
|
342
342
|
end
|
|
343
343
|
end
|
|
@@ -349,7 +349,7 @@ describe Kitchen::Driver::Fog do
|
|
|
349
349
|
end
|
|
350
350
|
|
|
351
351
|
it 'generates a name' do
|
|
352
|
-
|
|
352
|
+
driver.send(:generate_name, 'monkey').should match(
|
|
353
353
|
/^monkey-user-host-/)
|
|
354
354
|
end
|
|
355
355
|
|
|
@@ -360,7 +360,7 @@ describe Kitchen::Driver::Fog do
|
|
|
360
360
|
end
|
|
361
361
|
|
|
362
362
|
it 'limits the generated name to 64-characters' do
|
|
363
|
-
|
|
363
|
+
driver.send(:generate_name, 'long').length.should eq(64)
|
|
364
364
|
end
|
|
365
365
|
end
|
|
366
366
|
end
|
|
@@ -388,7 +388,7 @@ describe Kitchen::Driver::Fog do
|
|
|
388
388
|
let(:parsed_ips) { [%w{1.2.3.4}, %w{5.5.5.5}] }
|
|
389
389
|
|
|
390
390
|
it 'returns a public IPv4 address' do
|
|
391
|
-
|
|
391
|
+
driver.send(:get_ip, server).should eq('1.2.3.4')
|
|
392
392
|
end
|
|
393
393
|
end
|
|
394
394
|
|
|
@@ -397,7 +397,7 @@ describe Kitchen::Driver::Fog do
|
|
|
397
397
|
let(:parsed_ips) { [%w{4.3.2.1}, []] }
|
|
398
398
|
|
|
399
399
|
it 'returns a public IPv4 address' do
|
|
400
|
-
|
|
400
|
+
driver.send(:get_ip, server).should eq('4.3.2.1')
|
|
401
401
|
end
|
|
402
402
|
end
|
|
403
403
|
|
|
@@ -406,7 +406,7 @@ describe Kitchen::Driver::Fog do
|
|
|
406
406
|
let(:parsed_ips) { [[], %w{5.5.5.5}] }
|
|
407
407
|
|
|
408
408
|
it 'returns a private IPv4 address' do
|
|
409
|
-
|
|
409
|
+
driver.send(:get_ip, server).should eq('5.5.5.5')
|
|
410
410
|
end
|
|
411
411
|
end
|
|
412
412
|
|
|
@@ -422,7 +422,7 @@ describe Kitchen::Driver::Fog do
|
|
|
422
422
|
end
|
|
423
423
|
|
|
424
424
|
it 'returns a IPv4 address in user-defined network group' do
|
|
425
|
-
|
|
425
|
+
driver.send(:get_ip, server).should eq('7.7.7.7')
|
|
426
426
|
end
|
|
427
427
|
end
|
|
428
428
|
|
|
@@ -447,7 +447,7 @@ describe Kitchen::Driver::Fog do
|
|
|
447
447
|
let(:parsed_ips) { [%w{6.6.6.6 7.7.7.7}, %w{8.8.8.8 9.9.9.9}] }
|
|
448
448
|
|
|
449
449
|
it 'selects the first public IP' do
|
|
450
|
-
|
|
450
|
+
driver.send(:get_ip, server).should eq('6.6.6.6')
|
|
451
451
|
end
|
|
452
452
|
end
|
|
453
453
|
|
|
@@ -458,7 +458,7 @@ describe Kitchen::Driver::Fog do
|
|
|
458
458
|
let(:parsed_ips) { [%w{6.6.6.6 7.7.7.7}, []] }
|
|
459
459
|
|
|
460
460
|
it 'selects the first public IP' do
|
|
461
|
-
|
|
461
|
+
driver.send(:get_ip, server).should eq('6.6.6.6')
|
|
462
462
|
end
|
|
463
463
|
end
|
|
464
464
|
|
|
@@ -469,7 +469,7 @@ describe Kitchen::Driver::Fog do
|
|
|
469
469
|
let(:parsed_ips) { [[], %w{8.8.8.8 9.9.9.9}] }
|
|
470
470
|
|
|
471
471
|
it 'selects the first private IP' do
|
|
472
|
-
|
|
472
|
+
driver.send(:get_ip, server).should eq('8.8.8.8')
|
|
473
473
|
end
|
|
474
474
|
end
|
|
475
475
|
end
|
|
@@ -492,7 +492,7 @@ describe Kitchen::Driver::Fog do
|
|
|
492
492
|
context 'both public and private IPs' do
|
|
493
493
|
context 'IPv4 (default)' do
|
|
494
494
|
it 'returns only the v4 IPs' do
|
|
495
|
-
|
|
495
|
+
driver.send(:parse_ips, pub, priv).should eq([pub_v4, priv_v4])
|
|
496
496
|
end
|
|
497
497
|
end
|
|
498
498
|
|
|
@@ -500,7 +500,7 @@ describe Kitchen::Driver::Fog do
|
|
|
500
500
|
let(:config) { { :use_ipv6 => true } }
|
|
501
501
|
|
|
502
502
|
it 'returns only the v6 IPs' do
|
|
503
|
-
|
|
503
|
+
driver.send(:parse_ips, pub, priv).should eq([pub_v6, priv_v6])
|
|
504
504
|
end
|
|
505
505
|
end
|
|
506
506
|
end
|
|
@@ -510,7 +510,7 @@ describe Kitchen::Driver::Fog do
|
|
|
510
510
|
|
|
511
511
|
context 'IPv4 (default)' do
|
|
512
512
|
it 'returns only the v4 IPs' do
|
|
513
|
-
|
|
513
|
+
driver.send(:parse_ips, pub, priv).should eq([pub_v4, []])
|
|
514
514
|
end
|
|
515
515
|
end
|
|
516
516
|
|
|
@@ -518,7 +518,7 @@ describe Kitchen::Driver::Fog do
|
|
|
518
518
|
let(:config) { { :use_ipv6 => true } }
|
|
519
519
|
|
|
520
520
|
it 'returns only the v6 IPs' do
|
|
521
|
-
|
|
521
|
+
driver.send(:parse_ips, pub, priv).should eq([pub_v6, []])
|
|
522
522
|
end
|
|
523
523
|
end
|
|
524
524
|
end
|
|
@@ -528,7 +528,7 @@ describe Kitchen::Driver::Fog do
|
|
|
528
528
|
|
|
529
529
|
context 'IPv4 (default)' do
|
|
530
530
|
it 'returns only the v4 IPs' do
|
|
531
|
-
|
|
531
|
+
driver.send(:parse_ips, pub, priv).should eq([[], priv_v4])
|
|
532
532
|
end
|
|
533
533
|
end
|
|
534
534
|
|
|
@@ -536,7 +536,7 @@ describe Kitchen::Driver::Fog do
|
|
|
536
536
|
let(:config) { { :use_ipv6 => true } }
|
|
537
537
|
|
|
538
538
|
it 'returns only the v6 IPs' do
|
|
539
|
-
|
|
539
|
+
driver.send(:parse_ips, pub, priv).should eq([[], priv_v6])
|
|
540
540
|
end
|
|
541
541
|
end
|
|
542
542
|
end
|
|
@@ -547,7 +547,7 @@ describe Kitchen::Driver::Fog do
|
|
|
547
547
|
|
|
548
548
|
context 'IPv4 (default)' do
|
|
549
549
|
it 'returns empty lists' do
|
|
550
|
-
|
|
550
|
+
driver.send(:parse_ips, pub, priv).should eq([[], []])
|
|
551
551
|
end
|
|
552
552
|
end
|
|
553
553
|
|
|
@@ -555,7 +555,7 @@ describe Kitchen::Driver::Fog do
|
|
|
555
555
|
let(:config) { { :use_ipv6 => true } }
|
|
556
556
|
|
|
557
557
|
it 'returns empty lists' do
|
|
558
|
-
|
|
558
|
+
driver.send(:parse_ips, nil, nil).should eq([[], []])
|
|
559
559
|
end
|
|
560
560
|
end
|
|
561
561
|
end
|
|
@@ -583,13 +583,13 @@ describe Kitchen::Driver::Fog do
|
|
|
583
583
|
'echo "a_key" >> ~/.ssh/authorized_keys',
|
|
584
584
|
'passwd -l root'
|
|
585
585
|
]
|
|
586
|
-
|
|
586
|
+
res.should eq(expected)
|
|
587
587
|
end
|
|
588
588
|
end
|
|
589
589
|
|
|
590
590
|
describe '#disable_ssl_validation' do
|
|
591
591
|
it 'turns off Excon SSL cert validation' do
|
|
592
|
-
|
|
592
|
+
driver.send(:disable_ssl_validation).should eq(false)
|
|
593
593
|
end
|
|
594
594
|
end
|
|
595
595
|
end
|
metadata
CHANGED
|
@@ -1,32 +1,36 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: kitchen-fog
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.7.0
|
|
5
|
+
prerelease:
|
|
5
6
|
platform: ruby
|
|
6
7
|
authors:
|
|
7
8
|
- Jonathan Hartman
|
|
8
9
|
autorequire:
|
|
9
10
|
bindir: bin
|
|
10
11
|
cert_chain: []
|
|
11
|
-
date: 2013-
|
|
12
|
+
date: 2013-12-05 00:00:00.000000000 Z
|
|
12
13
|
dependencies:
|
|
13
14
|
- !ruby/object:Gem::Dependency
|
|
14
15
|
name: test-kitchen
|
|
15
16
|
requirement: !ruby/object:Gem::Requirement
|
|
17
|
+
none: false
|
|
16
18
|
requirements:
|
|
17
19
|
- - ~>
|
|
18
20
|
- !ruby/object:Gem::Version
|
|
19
|
-
version: 1.
|
|
21
|
+
version: 1.1.0
|
|
20
22
|
type: :runtime
|
|
21
23
|
prerelease: false
|
|
22
24
|
version_requirements: !ruby/object:Gem::Requirement
|
|
25
|
+
none: false
|
|
23
26
|
requirements:
|
|
24
27
|
- - ~>
|
|
25
28
|
- !ruby/object:Gem::Version
|
|
26
|
-
version: 1.
|
|
29
|
+
version: 1.1.0
|
|
27
30
|
- !ruby/object:Gem::Dependency
|
|
28
31
|
name: fog
|
|
29
32
|
requirement: !ruby/object:Gem::Requirement
|
|
33
|
+
none: false
|
|
30
34
|
requirements:
|
|
31
35
|
- - ~>
|
|
32
36
|
- !ruby/object:Gem::Version
|
|
@@ -34,6 +38,7 @@ dependencies:
|
|
|
34
38
|
type: :runtime
|
|
35
39
|
prerelease: false
|
|
36
40
|
version_requirements: !ruby/object:Gem::Requirement
|
|
41
|
+
none: false
|
|
37
42
|
requirements:
|
|
38
43
|
- - ~>
|
|
39
44
|
- !ruby/object:Gem::Version
|
|
@@ -41,6 +46,7 @@ dependencies:
|
|
|
41
46
|
- !ruby/object:Gem::Dependency
|
|
42
47
|
name: bundler
|
|
43
48
|
requirement: !ruby/object:Gem::Requirement
|
|
49
|
+
none: false
|
|
44
50
|
requirements:
|
|
45
51
|
- - ! '>='
|
|
46
52
|
- !ruby/object:Gem::Version
|
|
@@ -48,6 +54,7 @@ dependencies:
|
|
|
48
54
|
type: :development
|
|
49
55
|
prerelease: false
|
|
50
56
|
version_requirements: !ruby/object:Gem::Requirement
|
|
57
|
+
none: false
|
|
51
58
|
requirements:
|
|
52
59
|
- - ! '>='
|
|
53
60
|
- !ruby/object:Gem::Version
|
|
@@ -55,6 +62,7 @@ dependencies:
|
|
|
55
62
|
- !ruby/object:Gem::Dependency
|
|
56
63
|
name: rake
|
|
57
64
|
requirement: !ruby/object:Gem::Requirement
|
|
65
|
+
none: false
|
|
58
66
|
requirements:
|
|
59
67
|
- - ! '>='
|
|
60
68
|
- !ruby/object:Gem::Version
|
|
@@ -62,6 +70,7 @@ dependencies:
|
|
|
62
70
|
type: :development
|
|
63
71
|
prerelease: false
|
|
64
72
|
version_requirements: !ruby/object:Gem::Requirement
|
|
73
|
+
none: false
|
|
65
74
|
requirements:
|
|
66
75
|
- - ! '>='
|
|
67
76
|
- !ruby/object:Gem::Version
|
|
@@ -69,6 +78,7 @@ dependencies:
|
|
|
69
78
|
- !ruby/object:Gem::Dependency
|
|
70
79
|
name: tailor
|
|
71
80
|
requirement: !ruby/object:Gem::Requirement
|
|
81
|
+
none: false
|
|
72
82
|
requirements:
|
|
73
83
|
- - ! '>='
|
|
74
84
|
- !ruby/object:Gem::Version
|
|
@@ -76,6 +86,7 @@ dependencies:
|
|
|
76
86
|
type: :development
|
|
77
87
|
prerelease: false
|
|
78
88
|
version_requirements: !ruby/object:Gem::Requirement
|
|
89
|
+
none: false
|
|
79
90
|
requirements:
|
|
80
91
|
- - ! '>='
|
|
81
92
|
- !ruby/object:Gem::Version
|
|
@@ -83,6 +94,7 @@ dependencies:
|
|
|
83
94
|
- !ruby/object:Gem::Dependency
|
|
84
95
|
name: cane
|
|
85
96
|
requirement: !ruby/object:Gem::Requirement
|
|
97
|
+
none: false
|
|
86
98
|
requirements:
|
|
87
99
|
- - ! '>='
|
|
88
100
|
- !ruby/object:Gem::Version
|
|
@@ -90,6 +102,7 @@ dependencies:
|
|
|
90
102
|
type: :development
|
|
91
103
|
prerelease: false
|
|
92
104
|
version_requirements: !ruby/object:Gem::Requirement
|
|
105
|
+
none: false
|
|
93
106
|
requirements:
|
|
94
107
|
- - ! '>='
|
|
95
108
|
- !ruby/object:Gem::Version
|
|
@@ -97,6 +110,7 @@ dependencies:
|
|
|
97
110
|
- !ruby/object:Gem::Dependency
|
|
98
111
|
name: countloc
|
|
99
112
|
requirement: !ruby/object:Gem::Requirement
|
|
113
|
+
none: false
|
|
100
114
|
requirements:
|
|
101
115
|
- - ! '>='
|
|
102
116
|
- !ruby/object:Gem::Version
|
|
@@ -104,6 +118,7 @@ dependencies:
|
|
|
104
118
|
type: :development
|
|
105
119
|
prerelease: false
|
|
106
120
|
version_requirements: !ruby/object:Gem::Requirement
|
|
121
|
+
none: false
|
|
107
122
|
requirements:
|
|
108
123
|
- - ! '>='
|
|
109
124
|
- !ruby/object:Gem::Version
|
|
@@ -111,6 +126,7 @@ dependencies:
|
|
|
111
126
|
- !ruby/object:Gem::Dependency
|
|
112
127
|
name: rspec
|
|
113
128
|
requirement: !ruby/object:Gem::Requirement
|
|
129
|
+
none: false
|
|
114
130
|
requirements:
|
|
115
131
|
- - ! '>='
|
|
116
132
|
- !ruby/object:Gem::Version
|
|
@@ -118,6 +134,7 @@ dependencies:
|
|
|
118
134
|
type: :development
|
|
119
135
|
prerelease: false
|
|
120
136
|
version_requirements: !ruby/object:Gem::Requirement
|
|
137
|
+
none: false
|
|
121
138
|
requirements:
|
|
122
139
|
- - ! '>='
|
|
123
140
|
- !ruby/object:Gem::Version
|
|
@@ -144,26 +161,27 @@ files:
|
|
|
144
161
|
homepage: https://github.com/TerryHowe/kitchen-fog
|
|
145
162
|
licenses:
|
|
146
163
|
- Apache
|
|
147
|
-
metadata: {}
|
|
148
164
|
post_install_message:
|
|
149
165
|
rdoc_options: []
|
|
150
166
|
require_paths:
|
|
151
167
|
- lib
|
|
152
168
|
required_ruby_version: !ruby/object:Gem::Requirement
|
|
169
|
+
none: false
|
|
153
170
|
requirements:
|
|
154
171
|
- - ! '>='
|
|
155
172
|
- !ruby/object:Gem::Version
|
|
156
173
|
version: '0'
|
|
157
174
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
175
|
+
none: false
|
|
158
176
|
requirements:
|
|
159
177
|
- - ! '>='
|
|
160
178
|
- !ruby/object:Gem::Version
|
|
161
179
|
version: '0'
|
|
162
180
|
requirements: []
|
|
163
181
|
rubyforge_project:
|
|
164
|
-
rubygems_version:
|
|
182
|
+
rubygems_version: 1.8.25
|
|
165
183
|
signing_key:
|
|
166
|
-
specification_version:
|
|
184
|
+
specification_version: 3
|
|
167
185
|
summary: A Test Kitchen Fog Nova driver
|
|
168
186
|
test_files:
|
|
169
187
|
- spec/kitchen/driver/fog_spec.rb
|
checksums.yaml
DELETED
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
SHA1:
|
|
3
|
-
metadata.gz: e2e1b0a298df449a085cbdbb1efb97fd4ae9d808
|
|
4
|
-
data.tar.gz: 7151432803cbdec21ee8c0cd4460ccf72fd373cb
|
|
5
|
-
SHA512:
|
|
6
|
-
metadata.gz: 1b67603813c60c4c1102f9674a11a7ff95cf163e2c2726493f2f82973e2962e4043bbf54430bf98e9af92b827319579deb39a81e1d7e75ef48256dcd3eebffa2
|
|
7
|
-
data.tar.gz: c730813645e6ad9c3a1776bde72da9af4a508dd893ed3ccd9150424b51373dd857c14f2a5080c048887b3f5bf7c431cfad887a75bf9be1621919ece8fb59cf1b
|