vagrant-softlayer 0.2.0 → 0.3.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.
@@ -1,227 +1,261 @@
1
- require "spec_helper"
2
-
3
- describe VagrantPlugins::SoftLayer::Config do
4
- let(:config) { described_class.new }
5
- let(:machine) { double("machine") }
6
-
7
- describe "defaults" do
8
- subject do
9
- config.tap do |o|
10
- o.finalize!
11
- end
12
- end
13
-
14
- its("api_key") { should be_nil }
15
- its("endpoint_url") { should eq VagrantPlugins::SoftLayer::API_PUBLIC_ENDPOINT }
16
- its("username") { should be_nil }
17
-
18
- its("datacenter") { should be_nil }
19
- its("dedicated") { should be_false }
20
- its("domain") { should be_nil }
21
- its("hostname") { should be_nil }
22
- its("hourly_billing") { should be_true }
23
- its("local_disk") { should be_true }
24
- its("max_memory") { should eq 1024 }
25
- its("network_speed") { should eq 10 }
26
- its("operating_system") { should eq "UBUNTU_LATEST" }
27
- its("post_install") { should be_nil }
28
- its("private_only") { should be_false }
29
- its("ssh_key") { should be_nil }
30
- its("start_cpus") { should eq 1 }
31
- its("user_data") { should be_nil }
32
- its("vlan_private") { should be_nil }
33
- its("vlan_public") { should be_nil }
34
-
35
- its("load_balancers") { should eq [] }
36
- its("manage_dns") { should be_false }
37
- end
38
-
39
- describe "overriding defaults" do
40
- context "booleans" do
41
- [true, false].each do |bool|
42
- [:dedicated, :hourly_billing, :local_disk, :manage_dns, :private_only].each do |attribute|
43
- it "should accept both true and false for #{attribute}" do
44
- config.send("#{attribute}=".to_sym, bool)
45
- config.finalize!
46
- expect(config.send(attribute)).to eq bool
47
- end
48
- end
49
- end
50
- end
51
-
52
- context "integers" do
53
- [:max_memory, :network_speed, :ssh_key, :start_cpus, :vlan_private, :vlan_public].each do |attribute|
54
- it "should not default #{attribute} if overridden" do
55
- config.send("#{attribute}=".to_sym, 999)
56
- config.finalize!
57
- expect(config.send(attribute)).to eq 999
58
- end
59
- end
60
- end
61
-
62
- context "strings" do
63
- [:api_key, :datacenter, :endpoint_url, :username, :domain, :hostname, :operating_system, :post_install, :ssh_key, :user_data].each do |attribute|
64
- it "should not default #{attribute} if overridden" do
65
- config.send("#{attribute}=".to_sym, "foo")
66
- config.finalize!
67
- expect(config.send(attribute)).to eq "foo"
68
- end
69
- end
70
- end
71
- end
72
-
73
- describe "joining load balancer" do
74
- it "should set weight to 1 by default" do
75
- config.join_load_balancer :port => 443, :vip => "1.1.1.1"
76
- config.finalize!
77
- expect(config.load_balancers.first[:service].weight).to eq(1)
78
- end
79
-
80
- it "should set passed options" do
81
- config.join_load_balancer :foo => "bar", :port => 443, :vip => "1.1.1.1"
82
- config.finalize!
83
- expect(config.load_balancers.first[:foo]).to eq("bar")
84
- end
85
-
86
- it "should set service parameters" do
87
- config.join_load_balancer :port => 443, :vip => "1.1.1.1" do |srv|
88
- srv.destination_port = 443
89
- srv.health_check = "DNS"
90
- srv.notes = "Some notes"
91
- srv.weight = 9
92
- end
93
- config.finalize!
94
- expect(config.load_balancers.first[:service].destination_port).to eq(443)
95
- expect(config.load_balancers.first[:service].health_check).to eq("DNS")
96
- expect(config.load_balancers.first[:service].notes).to eq("Some notes")
97
- expect(config.load_balancers.first[:service].weight).to eq(9)
98
- end
99
- end
100
-
101
- describe "using SL_ environment variables" do
102
- before :each do
103
- ENV.stub(:[]).with("SL_API_KEY").and_return("env_api_key")
104
- ENV.stub(:[]).with("SL_USERNAME").and_return("env_username")
105
- end
106
-
107
- subject do
108
- config.tap do |o|
109
- o.finalize!
110
- end
111
- end
112
-
113
- its("api_key") { should eq "env_api_key" }
114
- its("username") { should eq "env_username" }
115
- end
116
-
117
- describe "validation" do
118
- before :each do
119
- # Setup some good configuration values
120
- config.api_key = "An API key"
121
- config.username = "An username"
122
-
123
- config.datacenter = "ams01"
124
- config.dedicated = false
125
- config.domain = "example.com"
126
- config.hostname = "vagrant"
127
- config.hourly_billing = true
128
- config.local_disk = true
129
- config.max_memory = 1024
130
- config.network_speed = 10
131
- config.operating_system = "UBUNTU_LATEST"
132
- config.post_install = "http://example.com/foo"
133
- config.ssh_key = ["First key", "Second key"]
134
- config.start_cpus = 1
135
- config.user_data = "some metadata"
136
- config.vlan_private = 111
137
- config.vlan_public = 222
138
-
139
- config.manage_dns = false
140
-
141
- machine.stub_chain(:config, :vm, :hostname).and_return(nil)
142
- end
143
-
144
- it "should validate" do
145
- config.finalize!
146
- expect(config.validate(machine)["SoftLayer"]).to have(:no).item
147
- end
148
-
149
- it "should fail if API key is not given" do
150
- config.api_key = nil
151
- config.finalize!
152
- expect(config.validate(machine)["SoftLayer"]).to have(1).item
153
- end
154
-
155
- it "should fail if username is not given" do
156
- config.username = nil
157
- config.finalize!
158
- expect(config.validate(machine)["SoftLayer"]).to have(1).item
159
- end
160
-
161
- it "should fail if domain is not given" do
162
- config.domain = nil
163
- config.finalize!
164
- expect(config.validate(machine)["SoftLayer"]).to have(1).item
165
- end
166
-
167
- it "should fail if hostname is not given" do
168
- config.hostname = nil
169
- config.finalize!
170
- expect(config.validate(machine)["SoftLayer"]).to have(1).item
171
- end
172
-
173
- it "should validate if hostname is not given but config.vm.hostname is set" do
174
- config.hostname = nil
175
- config.finalize!
176
- machine.stub_chain(:config, :vm, :hostname).and_return("vagrant")
177
- expect(config.validate(machine)["SoftLayer"]).to have(:no).item
178
- end
179
-
180
- it "should fail if ssh key is not given" do
181
- config.ssh_key = nil
182
- config.finalize!
183
- expect(config.validate(machine)["SoftLayer"]).to have(1).item
184
- end
185
-
186
- it "should fail if a load balancer is specified without vip" do
187
- config.join_load_balancer :port => 443 do |srv|
188
- srv.destination_port = 443
189
- end
190
- config.finalize!
191
- expect(config.validate(machine)["SoftLayer"]).to have(1).item
192
- end
193
-
194
- it "should fail if a load balancer is specified without port" do
195
- config.join_load_balancer :vip => "1.1.1.1" do |srv|
196
- srv.destination_port = 443
197
- end
198
- config.finalize!
199
- expect(config.validate(machine)["SoftLayer"]).to have(1).item
200
- end
201
-
202
- it "should fail if a load balancer is specified without destination port" do
203
- config.join_load_balancer :port => 443, :vip => "1.1.1.1"
204
- config.finalize!
205
- expect(config.validate(machine)["SoftLayer"]).to have(1).item
206
- end
207
-
208
- it "should fail if two load balancers han been defined with same vip and port" do
209
- config.join_load_balancer :port => 443, :vip => "1.1.1.1" do |srv|
210
- srv.destination_port = 443
211
- end
212
- config.join_load_balancer :port => 443, :vip => "1.1.1.1" do |srv|
213
- srv.destination_port = 8443
214
- end
215
- config.finalize!
216
- expect(config.validate(machine)["SoftLayer"]).to have(1).item
217
- end
218
-
219
- it "should validate if a load balancer if specified with vip, port and destination port" do
220
- config.join_load_balancer :port => 443, :vip => "1.1.1.1" do |srv|
221
- srv.destination_port = 443
222
- end
223
- config.finalize!
224
- expect(config.validate(machine)["SoftLayer"]).to have(:no).item
225
- end
226
- end
227
- end
1
+ require "spec_helper"
2
+
3
+ describe VagrantPlugins::SoftLayer::Config do
4
+ let(:config) { described_class.new }
5
+ let(:machine) { double("machine") }
6
+
7
+ describe "defaults" do
8
+ subject do
9
+ config.tap do |o|
10
+ o.finalize!
11
+ end
12
+ end
13
+
14
+ its("api_key") { should be_nil }
15
+ its("endpoint_url") { should eq VagrantPlugins::SoftLayer::API_PUBLIC_ENDPOINT }
16
+ its("username") { should be_nil }
17
+
18
+ its("datacenter") { should be_nil }
19
+ its("dedicated") { should be_false }
20
+ its("disk_capacity") { should be_nil }
21
+ its("domain") { should be_nil }
22
+ its("hostname") { should be_nil }
23
+ its("hourly_billing") { should be_true }
24
+ its("image_guid") { should be_nil }
25
+ its("local_disk") { should be_true }
26
+ its("max_memory") { should eq 1024 }
27
+ its("network_speed") { should eq 10 }
28
+ its("operating_system") { should eq "UBUNTU_LATEST" }
29
+ its("post_install") { should be_nil }
30
+ its("private_only") { should be_false }
31
+ its("ssh_key") { should be_nil }
32
+ its("start_cpus") { should eq 1 }
33
+ its("user_data") { should be_nil }
34
+ its("vlan_private") { should be_nil }
35
+ its("vlan_public") { should be_nil }
36
+
37
+ its("load_balancers") { should eq [] }
38
+ its("manage_dns") { should be_false }
39
+ end
40
+
41
+ describe "overriding defaults" do
42
+ context "booleans" do
43
+ [true, false].each do |bool|
44
+ [:dedicated, :hourly_billing, :local_disk, :manage_dns, :private_only].each do |attribute|
45
+ it "should accept both true and false for #{attribute}" do
46
+ config.send("#{attribute}=".to_sym, bool)
47
+ config.finalize!
48
+ expect(config.send(attribute)).to eq bool
49
+ end
50
+ end
51
+ end
52
+ end
53
+
54
+ context "integers" do
55
+ [:max_memory, :network_speed, :ssh_key, :start_cpus, :vlan_private, :vlan_public].each do |attribute|
56
+ it "should not default #{attribute} if overridden" do
57
+ config.send("#{attribute}=".to_sym, 999)
58
+ config.finalize!
59
+ expect(config.send(attribute)).to eq 999
60
+ end
61
+ end
62
+ end
63
+
64
+ context "strings" do
65
+ [:api_key, :datacenter, :endpoint_url, :username, :domain, :hostname, :image_guid, :operating_system, :post_install, :ssh_key, :user_data].each do |attribute|
66
+ it "should not default #{attribute} if overridden" do
67
+ config.send("#{attribute}=".to_sym, "foo")
68
+ config.finalize!
69
+ expect(config.send(attribute)).to eq "foo"
70
+ end
71
+ end
72
+ end
73
+
74
+ context "int hash" do
75
+ it "should not default disk_capacity if overriden" do
76
+ config.send("disk_capacity=".to_sym, { 0 => 100, 2 => 25 } )
77
+ config.finalize!
78
+ expect(config.send("disk_capacity")).to eq { 0 => 100, 2 => 25 }
79
+ end
80
+ end
81
+ end
82
+
83
+ describe "joining load balancer" do
84
+ it "should set weight to 1 by default" do
85
+ config.join_load_balancer :port => 443, :vip => "1.1.1.1"
86
+ config.finalize!
87
+ expect(config.load_balancers.first[:service].weight).to eq(1)
88
+ end
89
+
90
+ it "should set passed options" do
91
+ config.join_load_balancer :foo => "bar", :port => 443, :vip => "1.1.1.1"
92
+ config.finalize!
93
+ expect(config.load_balancers.first[:foo]).to eq("bar")
94
+ end
95
+
96
+ it "should set service parameters" do
97
+ config.join_load_balancer :port => 443, :vip => "1.1.1.1" do |srv|
98
+ srv.destination_port = 443
99
+ srv.health_check = "DNS"
100
+ srv.notes = "Some notes"
101
+ srv.weight = 9
102
+ end
103
+ config.finalize!
104
+ expect(config.load_balancers.first[:service].destination_port).to eq(443)
105
+ expect(config.load_balancers.first[:service].health_check).to eq("DNS")
106
+ expect(config.load_balancers.first[:service].notes).to eq("Some notes")
107
+ expect(config.load_balancers.first[:service].weight).to eq(9)
108
+ end
109
+ end
110
+
111
+ describe "using SL_ environment variables" do
112
+ before :each do
113
+ ENV.stub(:[]).with("SL_API_KEY").and_return("env_api_key")
114
+ ENV.stub(:[]).with("SL_USERNAME").and_return("env_username")
115
+ end
116
+
117
+ subject do
118
+ config.tap do |o|
119
+ o.finalize!
120
+ end
121
+ end
122
+
123
+ its("api_key") { should eq "env_api_key" }
124
+ its("username") { should eq "env_username" }
125
+ end
126
+
127
+ describe "validation" do
128
+ before :each do
129
+ # Setup some good configuration values
130
+ config.api_key = "An API key"
131
+ config.username = "An username"
132
+
133
+ config.datacenter = "ams01"
134
+ config.dedicated = false
135
+ config.domain = "example.com"
136
+ config.disk_capacity = { 0 => 25 }
137
+ config.hostname = "vagrant"
138
+ config.hourly_billing = true
139
+ config.image_guid = nil
140
+ config.local_disk = true
141
+ config.max_memory = 1024
142
+ config.network_speed = 10
143
+ config.operating_system = "UBUNTU_LATEST"
144
+ config.post_install = "http://example.com/foo"
145
+ config.ssh_key = ["First key", "Second key"]
146
+ config.start_cpus = 1
147
+ config.user_data = "some metadata"
148
+ config.vlan_private = 111
149
+ config.vlan_public = 222
150
+
151
+ config.manage_dns = false
152
+
153
+ machine.stub_chain(:config, :vm, :hostname).and_return(nil)
154
+ end
155
+
156
+ it "should validate" do
157
+ config.finalize!
158
+ expect(config.validate(machine)["SoftLayer"]).to have(:no).item
159
+ end
160
+
161
+ it "should fail if API key is not given" do
162
+ config.api_key = nil
163
+ config.finalize!
164
+ expect(config.validate(machine)["SoftLayer"]).to have(1).item
165
+ end
166
+
167
+ it "should fail if username is not given" do
168
+ config.username = nil
169
+ config.finalize!
170
+ expect(config.validate(machine)["SoftLayer"]).to have(1).item
171
+ end
172
+
173
+ it "should fail if domain is not given" do
174
+ config.domain = nil
175
+ config.finalize!
176
+ expect(config.validate(machine)["SoftLayer"]).to have(1).item
177
+ end
178
+
179
+ it "should fail if hostname is not given" do
180
+ config.hostname = nil
181
+ config.finalize!
182
+ expect(config.validate(machine)["SoftLayer"]).to have(1).item
183
+ end
184
+
185
+ it "should validate if hostname is not given but config.vm.hostname is set" do
186
+ config.hostname = nil
187
+ config.finalize!
188
+ machine.stub_chain(:config, :vm, :hostname).and_return("vagrant")
189
+ expect(config.validate(machine)["SoftLayer"]).to have(:no).item
190
+ end
191
+
192
+ it "should fail if ssh key is not given" do
193
+ config.ssh_key = nil
194
+ config.finalize!
195
+ expect(config.validate(machine)["SoftLayer"]).to have(1).item
196
+ end
197
+
198
+ it "should fail if a load balancer is specified without vip" do
199
+ config.join_load_balancer :port => 443 do |srv|
200
+ srv.destination_port = 443
201
+ end
202
+ config.finalize!
203
+ expect(config.validate(machine)["SoftLayer"]).to have(1).item
204
+ end
205
+
206
+ it "should fail if a load balancer is specified without port" do
207
+ config.join_load_balancer :vip => "1.1.1.1" do |srv|
208
+ srv.destination_port = 443
209
+ end
210
+ config.finalize!
211
+ expect(config.validate(machine)["SoftLayer"]).to have(1).item
212
+ end
213
+
214
+ it "should fail if a load balancer is specified without destination port" do
215
+ config.join_load_balancer :port => 443, :vip => "1.1.1.1"
216
+ config.finalize!
217
+ expect(config.validate(machine)["SoftLayer"]).to have(1).item
218
+ end
219
+
220
+ it "should fail if two load balancers han been defined with same vip and port" do
221
+ config.join_load_balancer :port => 443, :vip => "1.1.1.1" do |srv|
222
+ srv.destination_port = 443
223
+ end
224
+ config.join_load_balancer :port => 443, :vip => "1.1.1.1" do |srv|
225
+ srv.destination_port = 8443
226
+ end
227
+ config.finalize!
228
+ expect(config.validate(machine)["SoftLayer"]).to have(1).item
229
+ end
230
+
231
+ it "should validate if a load balancer if specified with vip, port and destination port" do
232
+ config.join_load_balancer :port => 443, :vip => "1.1.1.1" do |srv|
233
+ srv.destination_port = 443
234
+ end
235
+ config.finalize!
236
+ expect(config.validate(machine)["SoftLayer"]).to have(:no).item
237
+ end
238
+
239
+ it "should fail if disk_capacity and image_guid are both specified" do
240
+ config.disk_capacity = { 0 => 25 }
241
+ config.image_guid = "AAAAAAAA-BBBB-CCCC-DDDD-EEEEEEEEEEEE"
242
+ config.operating_system = nil
243
+ config.finalize!
244
+ expect(config.validate(machine)["SoftLayer"]).to have(1).item
245
+ end
246
+
247
+ it "should fail if operating system and image_guid are both specified" do
248
+ config.image_guid = "AAAAAAAA-BBBB-CCCC-DDDD-EEEEEEEEEEEE"
249
+ config.operating_system = "UBUNTU_LATEST"
250
+ config.finalize!
251
+ expect(config.validate(machine)["SoftLayer"]).to have(1).item
252
+ end
253
+
254
+ it "should validate if operating_system and disk_capacity are both specified" do
255
+ config.operating_system = "UBUNTU_LATEST"
256
+ config.disk_capacity = { 0 => 25 }
257
+ config.finalize!
258
+ expect(config.validate(machine)["SoftLayer"]).to have(:no).item
259
+ end
260
+ end
261
+ end
@@ -6,9 +6,11 @@ Gem::Specification.new do |spec|
6
6
  spec.version = VagrantPlugins::SoftLayer::VERSION
7
7
  spec.authors = "Audiolize GmbH"
8
8
  spec.email = ""
9
+ spec.homepage = "https://github.com/audiolize/vagrant-softlayer"
9
10
  spec.description = "Enables Vagrant to manages SoftLayer CCI."
10
11
  spec.summary = "Enables Vagrant to manages SoftLayer CCI."
11
-
12
+ spec.license = "MIT"
13
+
12
14
  # The following block of code determines the files that should be included
13
15
  # in the gem. It does this by reading all the files in the directory where
14
16
  # this gemspec is, and parsing out the ignored files from the gitignore.
metadata CHANGED
@@ -1,36 +1,32 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: vagrant-softlayer
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
5
- prerelease:
4
+ version: 0.3.0
6
5
  platform: ruby
7
6
  authors:
8
7
  - Audiolize GmbH
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2013-12-05 00:00:00.000000000 Z
11
+ date: 2014-04-15 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: softlayer_api
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
- - - ! '>='
17
+ - - '>='
20
18
  - !ruby/object:Gem::Version
21
19
  version: '0'
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
29
26
  version: '0'
30
27
  - !ruby/object:Gem::Dependency
31
28
  name: bundler
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: :development
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,33 +41,29 @@ 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
53
47
  version: '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
54
  version: '0'
62
55
  - !ruby/object:Gem::Dependency
63
56
  name: rspec
64
57
  requirement: !ruby/object:Gem::Requirement
65
- none: false
66
58
  requirements:
67
- - - ! '>='
59
+ - - '>='
68
60
  - !ruby/object:Gem::Version
69
61
  version: '0'
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
77
68
  version: '0'
78
69
  description: Enables Vagrant to manages SoftLayer CCI.
@@ -82,6 +73,8 @@ extensions: []
82
73
  extra_rdoc_files: []
83
74
  files:
84
75
  - CHANGELOG.md
76
+ - contrib/README.md
77
+ - contrib/vagrant-softlayer-boxes
85
78
  - dummy.box
86
79
  - example_box/metadata.json
87
80
  - example_box/README.md
@@ -95,9 +88,11 @@ files:
95
88
  - lib/vagrant-softlayer/action/read_ssh_info.rb
96
89
  - lib/vagrant-softlayer/action/read_state.rb
97
90
  - lib/vagrant-softlayer/action/rebuild_instance.rb
91
+ - lib/vagrant-softlayer/action/resume_instance.rb
98
92
  - lib/vagrant-softlayer/action/setup_softlayer.rb
99
93
  - lib/vagrant-softlayer/action/start_instance.rb
100
94
  - lib/vagrant-softlayer/action/stop_instance.rb
95
+ - lib/vagrant-softlayer/action/suspend_instance.rb
101
96
  - lib/vagrant-softlayer/action/sync_folders.rb
102
97
  - lib/vagrant-softlayer/action/update_dns.rb
103
98
  - lib/vagrant-softlayer/action/wait_for_provision.rb
@@ -121,35 +116,29 @@ files:
121
116
  - spec/vagrant-softlayer/config_spec.rb
122
117
  - vagrant-softlayer.gemspec
123
118
  - .gitignore
124
- homepage:
125
- licenses: []
119
+ homepage: https://github.com/audiolize/vagrant-softlayer
120
+ licenses:
121
+ - MIT
122
+ metadata: {}
126
123
  post_install_message:
127
124
  rdoc_options: []
128
125
  require_paths:
129
126
  - lib
130
127
  required_ruby_version: !ruby/object:Gem::Requirement
131
- none: false
132
128
  requirements:
133
- - - ! '>='
129
+ - - '>='
134
130
  - !ruby/object:Gem::Version
135
131
  version: '0'
136
- segments:
137
- - 0
138
- hash: 2669020036350751985
139
132
  required_rubygems_version: !ruby/object:Gem::Requirement
140
- none: false
141
133
  requirements:
142
- - - ! '>='
134
+ - - '>='
143
135
  - !ruby/object:Gem::Version
144
136
  version: '0'
145
- segments:
146
- - 0
147
- hash: 2669020036350751985
148
137
  requirements: []
149
138
  rubyforge_project:
150
- rubygems_version: 1.8.23
139
+ rubygems_version: 2.0.14
151
140
  signing_key:
152
- specification_version: 3
141
+ specification_version: 4
153
142
  summary: Enables Vagrant to manages SoftLayer CCI.
154
143
  test_files:
155
144
  - spec/spec_helper.rb