vagrant-linode 0.2.7 → 0.2.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.
- checksums.yaml +4 -4
- data/.rspec +5 -2
- data/CHANGELOG.md +3 -0
- data/Gemfile +5 -3
- data/README.md +1 -2
- data/lib/vagrant-linode/actions/create.rb +33 -25
- data/lib/vagrant-linode/actions/rebuild.rb +242 -17
- data/lib/vagrant-linode/config.rb +6 -0
- data/lib/vagrant-linode/version.rb +1 -1
- data/vagrant-linode.gemspec +5 -6
- metadata +12 -26
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1de708c156168a1a26ee28dc0cecb4ddefa48b60
|
4
|
+
data.tar.gz: f8ca694da438328963e17d14c1364b10a9f6af82
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3920d13fbb57a4b1440c1f4dc3d1d82890c273f185a0a3ea81a90b4fd799fd5904bb72b977b3480f3b2d5d01f05d73dce85f3744f2a992c481486b611734a515
|
7
|
+
data.tar.gz: 21149e2f5dffd5cc7e3c1439a074b937e50d961197eb3877163572839cc2a7ff9ae965fb298f121ee5e40399e86b154b06493b502a9829a741b93ed20f1d1416
|
data/.rspec
CHANGED
data/CHANGELOG.md
CHANGED
data/Gemfile
CHANGED
@@ -1,8 +1,6 @@
|
|
1
1
|
source 'https://rubygems.org'
|
2
2
|
|
3
|
-
|
4
|
-
gemspec
|
5
|
-
end
|
3
|
+
gemspec
|
6
4
|
|
7
5
|
group :development do
|
8
6
|
# We depend on Vagrant for development, but we don't add it as a
|
@@ -12,3 +10,7 @@ group :development do
|
|
12
10
|
gem 'coveralls', require: false
|
13
11
|
gem 'pry'
|
14
12
|
end
|
13
|
+
|
14
|
+
group :plugins do
|
15
|
+
gem 'vagrant-linode', path: '.'
|
16
|
+
end
|
data/README.md
CHANGED
@@ -36,8 +36,7 @@ Vagrant.configure('2') do |config|
|
|
36
36
|
|
37
37
|
config.vm.provider :linode do |provider, override|
|
38
38
|
override.ssh.private_key_path = '~/.ssh/id_rsa'
|
39
|
-
override.vm.box = 'linode'
|
40
|
-
override.vm.box_url = "https://github.com/displague/vagrant-linode/raw/master/box/linode.box"
|
39
|
+
override.vm.box = 'linode/ubuntu1404'
|
41
40
|
|
42
41
|
provider.api_key = 'API_KEY'
|
43
42
|
provider.distribution = 'Ubuntu 16.04 LTS'
|
@@ -103,18 +103,15 @@ module VagrantPlugins
|
|
103
103
|
end
|
104
104
|
|
105
105
|
### Disk Images
|
106
|
-
|
106
|
+
disk_size = plan['disk'].to_i * 1024
|
107
|
+
xvda_size, swap_size, xvdc_size = @machine.provider_config.xvda_size, @machine.provider_config.swap_size, @machine.provider_config.xvdc_size
|
107
108
|
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
end
|
109
|
+
swap_size = swap_size.to_i
|
110
|
+
xvda_size = xvda_size == true ? disk_size - swap_size : xvda_size.to_i
|
111
|
+
xvdc_size = (xvdc_size.is_a?(Vagrant::Config::V2::DummyConfig) or xvdc_size == true) ? (disk_size - swap_size - xvda_size).abs : xvdc_size.to_i
|
112
112
|
|
113
|
-
|
114
|
-
|
115
|
-
xvda_size = ( ( plan['disk'].to_i * 1024) - swap_size.to_i)
|
116
|
-
elsif disk_sanity == false
|
117
|
-
fail Errors::DiskSize, current: (xvda_size.to_i + swap_size.to_i), max: ( plan['disk'].to_i * 1024)
|
113
|
+
if ( xvda_size + swap_size + xvdc_size) > disk_size
|
114
|
+
fail Errors::DiskSize, current: (xvda_size + swap_size + xvdc_size), max: disk_size
|
118
115
|
end
|
119
116
|
|
120
117
|
env[:ui].info I18n.t('vagrant_linode.info.creating')
|
@@ -131,14 +128,9 @@ module VagrantPlugins
|
|
131
128
|
# assign the machine id for reference in other commands
|
132
129
|
@machine.id = result['linodeid'].to_s
|
133
130
|
|
134
|
-
|
135
|
-
swap = @client.linode.disk.create(
|
136
|
-
linodeid: result['linodeid'],
|
137
|
-
label: 'Vagrant swap',
|
138
|
-
type: 'swap',
|
139
|
-
size: swap_size
|
140
|
-
)
|
131
|
+
disklist = []
|
141
132
|
|
133
|
+
if stackscript_id
|
142
134
|
disk = @client.linode.disk.createfromstackscript(
|
143
135
|
linodeid: result['linodeid'],
|
144
136
|
stackscriptid: stackscript_id,
|
@@ -150,14 +142,8 @@ module VagrantPlugins
|
|
150
142
|
rootsshkey: pubkey,
|
151
143
|
rootpass: root_pass
|
152
144
|
)
|
145
|
+
disklist.push(disk['diskid'])
|
153
146
|
elsif distribution_id
|
154
|
-
swap = @client.linode.disk.create(
|
155
|
-
linodeid: result['linodeid'],
|
156
|
-
label: 'Vagrant swap',
|
157
|
-
type: 'swap',
|
158
|
-
size: swap_size
|
159
|
-
)
|
160
|
-
|
161
147
|
disk = @client.linode.disk.createfromdistribution(
|
162
148
|
linodeid: result['linodeid'],
|
163
149
|
distributionid: distribution_id,
|
@@ -167,6 +153,7 @@ module VagrantPlugins
|
|
167
153
|
rootsshkey: pubkey,
|
168
154
|
rootpass: root_pass
|
169
155
|
)
|
156
|
+
disklist.push(disk['diskid'])
|
170
157
|
elsif image_id
|
171
158
|
disk = @client.linode.disk.createfromimage(
|
172
159
|
linodeid: result['linodeid'],
|
@@ -176,19 +163,40 @@ module VagrantPlugins
|
|
176
163
|
rootsshkey: pubkey,
|
177
164
|
rootpass: root_pass
|
178
165
|
)
|
166
|
+
disklist.push(disk['diskid'])
|
167
|
+
else
|
168
|
+
disklist.push('')
|
169
|
+
end
|
179
170
|
|
171
|
+
if swap_size > 0
|
180
172
|
swap = @client.linode.disk.create(
|
181
173
|
linodeid: result['linodeid'],
|
182
174
|
label: 'Vagrant swap',
|
183
175
|
type: 'swap',
|
184
176
|
size: swap_size
|
185
177
|
)
|
178
|
+
disklist.push(swap['diskid'])
|
179
|
+
else
|
180
|
+
disklist.push('')
|
181
|
+
end
|
182
|
+
|
183
|
+
if xvdc_size > 0
|
184
|
+
xvdc_type = @machine.provider_config.xvdc_type.is_a?(Vagrant::Config::V2::DummyConfig) ? "raw" : @machine.provider_config.xvdc_type
|
185
|
+
xvdc = @client.linode.disk.create(
|
186
|
+
linodeid: result['linodeid'],
|
187
|
+
label: 'Vagrant Leftover Disk Linode ' + result['linodeid'].to_s,
|
188
|
+
type: xvdc_type,
|
189
|
+
size: xvdc_size,
|
190
|
+
)
|
191
|
+
disklist.push(xvdc['diskid'])
|
192
|
+
else
|
193
|
+
disklist.push('')
|
186
194
|
end
|
187
195
|
|
188
196
|
config = @client.linode.config.create(
|
189
197
|
linodeid: result['linodeid'],
|
190
198
|
label: 'Vagrant Config',
|
191
|
-
disklist:
|
199
|
+
disklist: disklist.join(','),
|
192
200
|
kernelid: kernel_id
|
193
201
|
)
|
194
202
|
|
@@ -1,12 +1,13 @@
|
|
1
1
|
require 'vagrant-linode/helpers/client'
|
2
2
|
require 'vagrant-linode/helpers/waiter'
|
3
|
+
require 'vagrant-linode/errors'
|
3
4
|
|
4
5
|
module VagrantPlugins
|
5
6
|
module Linode
|
6
7
|
module Actions
|
7
8
|
class Rebuild
|
8
9
|
include Vagrant::Util::Retryable
|
9
|
-
include Helpers::Waiter
|
10
|
+
include VagrantPlugins::Linode::Helpers::Waiter
|
10
11
|
|
11
12
|
def initialize(app, env)
|
12
13
|
@app = app
|
@@ -16,30 +17,250 @@ module VagrantPlugins
|
|
16
17
|
|
17
18
|
def call(env)
|
18
19
|
@client = env[:linode_api]
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
20
|
+
ssh_key_id = env[:machine].config.ssh.private_key_path
|
21
|
+
ssh_key_id = ssh_key_id[0] if ssh_key_id.is_a?(Array)
|
22
|
+
if ssh_key_id
|
23
|
+
pubkey = File.read(File.expand_path("#{ssh_key_id}.pub"))
|
24
|
+
end
|
25
|
+
|
26
|
+
if @machine.provider_config.root_pass
|
27
|
+
root_pass = @machine.provider_config.root_pass
|
28
|
+
else
|
29
|
+
root_pass = Digest::SHA2.new.update(@machine.provider_config.api_key).to_s
|
30
|
+
end
|
31
|
+
|
32
|
+
if @machine.provider_config.stackscript
|
33
|
+
stackscripts = @client.stackscript.list + @client.avail.stackscripts
|
34
|
+
stackscript = stackscripts.find { |s| s.label.downcase == @machine.provider_config.stackscript.to_s.downcase }
|
35
|
+
fail(Errors::StackscriptMatch, stackscript: @machine.provider_config.stackscript.to_s) if stackscript.nil?
|
36
|
+
stackscript_id = stackscript.stackscriptid || nil
|
37
|
+
else
|
38
|
+
stackscript_id = @machine.provider_config.stackscriptid
|
39
|
+
end
|
40
|
+
|
41
|
+
stackscript_udf_responses = @machine.provider_config.stackscript_udf_responses
|
42
|
+
|
43
|
+
if stackscript_udf_responses and !stackscript_udf_responses.is_a?(Hash)
|
44
|
+
fail(Errors::StackscriptUDFFormat, format: stackscript_udf_responses.class.to_s)
|
45
|
+
else
|
46
|
+
stackscript_udf_responses = @machine.provider_config.stackscript_udf_responses or {}
|
47
|
+
end
|
48
|
+
|
49
|
+
if @machine.provider_config.distribution
|
50
|
+
distributions = @client.avail.distributions
|
51
|
+
distribution = distributions.find { |d| d.label.downcase.include? @machine.provider_config.distribution.downcase }
|
52
|
+
fail(Errors::DistroMatch, distro: @machine.provider_config.distribution.to_s) if distribution.nil?
|
53
|
+
distribution_id = distribution.distributionid || nil
|
54
|
+
else
|
55
|
+
distribution_id = @machine.provider_config.distributionid
|
56
|
+
end
|
25
57
|
|
26
|
-
|
27
|
-
|
28
|
-
|
58
|
+
if @machine.provider_config.imageid
|
59
|
+
distribution_id = nil
|
60
|
+
images = @client.image.list
|
61
|
+
image = images.find { |i| i.imageid == @machine.provider_config.imageid }
|
62
|
+
fail Errors::ImageMatch, image: @machine.provider_config.imageid.to_s if image.nil?
|
63
|
+
image_id = image.imageid || nil
|
64
|
+
elsif @machine.provider_config.image
|
65
|
+
distribution_id = nil
|
66
|
+
images = @client.image.list
|
67
|
+
image = images.find { |i| i.label.downcase.include? @machine.provider_config.image.downcase }
|
68
|
+
fail Errors::ImageMatch, image: @machine.provider_config.image.to_s if image.nil?
|
69
|
+
image_id = image.imageid || nil
|
70
|
+
end
|
71
|
+
|
72
|
+
if @machine.provider_config.kernel
|
73
|
+
kernels = @client.avail.kernels
|
74
|
+
kernel = kernels.find { |k| k.label.downcase.include? @machine.provider_config.kernel.downcase }
|
75
|
+
raise( Errors::KernelMatch, kernel: @machine.provider_config.kernel.to_s ) if kernel == nil
|
76
|
+
kernel_id = kernel.kernelid || nil
|
77
|
+
else
|
78
|
+
kernel_id = @machine.provider_config.kernelid
|
79
|
+
end
|
80
|
+
|
81
|
+
if @machine.provider_config.datacenter
|
82
|
+
datacenters = @client.avail.datacenters
|
83
|
+
datacenter = datacenters.find { |d| d.abbr == @machine.provider_config.datacenter }
|
84
|
+
fail Errors::DatacenterMatch, datacenter: @machine.provider_config.datacenter if datacenter.nil?
|
85
|
+
datacenter_id = datacenter.datacenterid
|
86
|
+
else
|
87
|
+
datacenters = @client.avail.datacenters
|
88
|
+
datacenter = datacenters.find { |d| d.datacenterid == @machine.provider_config.datacenterid }
|
89
|
+
fail Errors::DatacenterMatch, datacenter: @machine.provider_config.datacenter if datacenter.nil?
|
90
|
+
datacenter_id = datacenter.datacenterid
|
91
|
+
end
|
29
92
|
|
30
|
-
|
31
|
-
|
32
|
-
|
93
|
+
if @machine.provider_config.plan
|
94
|
+
plans = @client.avail.linodeplans
|
95
|
+
plan = plans.find { |p| p.label.include? @machine.provider_config.plan }
|
96
|
+
fail Errors::PlanID, plan: @machine.provider_config.plan if plan.nil?
|
97
|
+
plan_id = plan.planid
|
98
|
+
else
|
99
|
+
plans = @client.avail.linodeplans
|
100
|
+
plan = plans.find { |p| p.planid.to_i == @machine.provider_config.planid.to_i }
|
101
|
+
fail Errors::PlanID, plan: @machine.provider_config.planid if plan.nil?
|
102
|
+
plan_id = @machine.provider_config.planid
|
103
|
+
end
|
104
|
+
|
105
|
+
### Disk Images
|
106
|
+
xvda_size, swap_size, disk_sanity = @machine.provider_config.xvda_size, @machine.provider_config.swap_size, true
|
33
107
|
|
34
|
-
#
|
35
|
-
|
108
|
+
# Sanity checks for disk size
|
109
|
+
if xvda_size != true
|
110
|
+
disk_sanity = false if ( xvda_size.to_i + swap_size.to_i) > ( plan['disk'].to_i * 1024)
|
111
|
+
end
|
112
|
+
|
113
|
+
# throw if disk sizes are too large
|
114
|
+
if xvda_size == true
|
115
|
+
xvda_size = ( ( plan['disk'].to_i * 1024) - swap_size.to_i)
|
116
|
+
elsif disk_sanity == false
|
117
|
+
fail Errors::DiskSize, current: (xvda_size.to_i + swap_size.to_i), max: ( plan['disk'].to_i * 1024)
|
118
|
+
end
|
119
|
+
|
120
|
+
env[:ui].info I18n.t('vagrant_linode.info.destroying')
|
121
|
+
|
122
|
+
diskList = @client.linode.disk.list(
|
123
|
+
linodeid: @machine.id
|
124
|
+
)
|
125
|
+
|
126
|
+
diskList.each do |diskEntry|
|
127
|
+
diskDeleteResult = @client.linode.disk.delete(
|
128
|
+
linodeid: @machine.id,
|
129
|
+
diskid: diskEntry['diskid']
|
130
|
+
)
|
131
|
+
|
132
|
+
job = diskDeleteResult['jobid']
|
133
|
+
|
134
|
+
jobStatus = @client.linode.job.list(
|
135
|
+
linodeid: @machine.id,
|
136
|
+
jobid: job
|
137
|
+
)
|
138
|
+
|
139
|
+
while jobStatus[0]['host_finish_dt'].nil? || jobStatus[0]['host_finish_dt'].empty? do
|
140
|
+
sleep(5)
|
141
|
+
jobStatus = @client.linode.job.list(
|
142
|
+
linodeid: @machine.id,
|
143
|
+
jobid: job
|
144
|
+
)
|
145
|
+
end
|
146
|
+
end
|
147
|
+
|
148
|
+
configList = @client.linode.config.list(
|
149
|
+
linodeid: @machine.id
|
150
|
+
)
|
151
|
+
|
152
|
+
configList.each do |configEntry|
|
153
|
+
configDeleteResult = @client.linode.config.delete(
|
154
|
+
linodeid: @machine.id,
|
155
|
+
configid: configEntry['configid']
|
156
|
+
)
|
157
|
+
end
|
158
|
+
|
159
|
+
env[:ui].info I18n.t('vagrant_linode.info.creating')
|
160
|
+
|
161
|
+
if stackscript_id
|
162
|
+
swap = @client.linode.disk.create(
|
163
|
+
linodeid: @machine.id,
|
164
|
+
label: 'Vagrant swap',
|
165
|
+
type: 'swap',
|
166
|
+
size: swap_size
|
167
|
+
)
|
168
|
+
|
169
|
+
disk = @client.linode.disk.createfromstackscript(
|
170
|
+
linodeid: @machine.id,
|
171
|
+
stackscriptid: stackscript_id,
|
172
|
+
stackscriptudfresponses: JSON.dump(stackscript_udf_responses),
|
173
|
+
distributionid: distribution_id,
|
174
|
+
label: 'Vagrant Disk Distribution ' + distribution_id.to_s + ' Linode ' + @machine.id.to_s,
|
175
|
+
type: 'ext4',
|
176
|
+
size: xvda_size,
|
177
|
+
rootsshkey: pubkey,
|
178
|
+
rootpass: root_pass
|
179
|
+
)
|
180
|
+
elsif distribution_id
|
181
|
+
swap = @client.linode.disk.create(
|
182
|
+
linodeid: @machine.id,
|
183
|
+
label: 'Vagrant swap',
|
184
|
+
type: 'swap',
|
185
|
+
size: swap_size
|
186
|
+
)
|
187
|
+
|
188
|
+
disk = @client.linode.disk.createfromdistribution(
|
189
|
+
linodeid: @machine.id,
|
190
|
+
distributionid: distribution_id,
|
191
|
+
label: 'Vagrant Disk Distribution ' + distribution_id.to_s + ' Linode ' + @machine.id.to_s,
|
192
|
+
type: 'ext4',
|
193
|
+
size: xvda_size,
|
194
|
+
rootsshkey: pubkey,
|
195
|
+
rootpass: root_pass
|
196
|
+
)
|
197
|
+
elsif image_id
|
198
|
+
disk = @client.linode.disk.createfromimage(
|
199
|
+
linodeid: @machine.id,
|
200
|
+
imageid: image_id,
|
201
|
+
label: 'Vagrant Disk Image (' + image_id.to_s + ') for ' + @machine.id.to_s,
|
202
|
+
size: xvda_size,
|
203
|
+
rootsshkey: pubkey,
|
204
|
+
rootpass: root_pass
|
205
|
+
)
|
206
|
+
|
207
|
+
swap = @client.linode.disk.create(
|
208
|
+
linodeid: @machine.id,
|
209
|
+
label: 'Vagrant swap',
|
210
|
+
type: 'swap',
|
211
|
+
size: swap_size
|
212
|
+
)
|
213
|
+
end
|
214
|
+
|
215
|
+
config = @client.linode.config.create(
|
216
|
+
linodeid: @machine.id,
|
217
|
+
label: 'Vagrant Config',
|
218
|
+
disklist: "#{disk['diskid']},#{swap['diskid']}",
|
219
|
+
kernelid: kernel_id
|
220
|
+
)
|
221
|
+
|
222
|
+
# @todo: allow provisioning to set static configuration for networking
|
223
|
+
if @machine.provider_config.private_networking
|
224
|
+
private_network = @client.linode.ip.addprivate linodeid: @machine.id
|
225
|
+
end
|
226
|
+
|
227
|
+
label = @machine.provider_config.label
|
228
|
+
label = label || @machine.name if @machine.name != 'default'
|
229
|
+
label = label || get_server_name
|
230
|
+
|
231
|
+
group = @machine.provider_config.group
|
232
|
+
group = "" if @machine.provider_config.group == false
|
233
|
+
|
234
|
+
result = @client.linode.update(
|
235
|
+
linodeid: @machine.id,
|
236
|
+
label: label,
|
237
|
+
lpm_displaygroup: group
|
238
|
+
)
|
239
|
+
|
240
|
+
env[:ui].info I18n.t('vagrant_linode.info.booting', linodeid: @machine.id)
|
241
|
+
|
242
|
+
bootjob = @client.linode.boot linodeid: @machine.id
|
243
|
+
# sleep 1 until ! @client.linode.job.list(:linodeid => @machine.id, :jobid => bootjob['jobid'], :pendingonly => 1).length
|
244
|
+
wait_for_event(env, bootjob['jobid'])
|
245
|
+
|
246
|
+
# refresh linode state with provider and output ip address
|
247
|
+
linode = Provider.linode(@machine, refresh: true)
|
248
|
+
public_network = linode.network.find { |network| network['ispublic'] == 1 }
|
249
|
+
env[:ui].info I18n.t('vagrant_linode.info.linode_ip', ip: public_network['ipaddress'])
|
250
|
+
|
251
|
+
if private_network
|
252
|
+
env[:ui].info I18n.t('vagrant_linode.info.linode_private_ip', ip: private_network['ipaddress'])
|
253
|
+
end
|
36
254
|
|
37
255
|
# wait for ssh to be ready
|
38
256
|
switch_user = @machine.provider_config.setup?
|
39
257
|
user = @machine.config.ssh.username
|
40
|
-
|
258
|
+
if switch_user
|
259
|
+
@machine.config.ssh.username = 'root'
|
260
|
+
@machine.config.ssh.password = root_pass
|
261
|
+
end
|
41
262
|
|
42
|
-
retryable(tries:
|
263
|
+
retryable(tries: 25, sleep: 10) do # @todo bump tries when this is solid
|
43
264
|
next if env[:interrupted]
|
44
265
|
fail 'not ready' unless @machine.communicate.ready?
|
45
266
|
end
|
@@ -48,6 +269,10 @@ module VagrantPlugins
|
|
48
269
|
|
49
270
|
@app.call(env)
|
50
271
|
end
|
272
|
+
|
273
|
+
def get_server_name
|
274
|
+
"vagrant_linode-#{rand.to_s.split('.')[1]}"
|
275
|
+
end
|
51
276
|
end
|
52
277
|
end
|
53
278
|
end
|
@@ -21,6 +21,8 @@ module VagrantPlugins
|
|
21
21
|
attr_accessor :stackscript
|
22
22
|
attr_accessor :stackscript_udf_responses
|
23
23
|
attr_accessor :xvda_size
|
24
|
+
attr_accessor :xvdc_size
|
25
|
+
attr_accessor :xvdc_type
|
24
26
|
attr_accessor :swap_size
|
25
27
|
attr_accessor :kernelid
|
26
28
|
attr_accessor :kernel
|
@@ -52,6 +54,8 @@ module VagrantPlugins
|
|
52
54
|
@ssh_key_name = UNSET_VALUE
|
53
55
|
@setup = UNSET_VALUE
|
54
56
|
@xvda_size = UNSET_VALUE
|
57
|
+
@xvdc_size = UNSET_VALUE
|
58
|
+
@xvdc_type = UNSET_VALUE
|
55
59
|
@swap_size = UNSET_VALUE
|
56
60
|
@kernelid = UNSET_VALUE
|
57
61
|
@kernel = UNSET_VALUE
|
@@ -84,6 +88,8 @@ module VagrantPlugins
|
|
84
88
|
@ssh_key_name = 'Vagrant' if @ssh_key_name == UNSET_VALUE
|
85
89
|
@setup = true if @setup == UNSET_VALUE
|
86
90
|
@xvda_size = true if @xvda_size == UNSET_VALUE
|
91
|
+
@xvdc_size = nil if @xvdc_size == UNSET_VALUE
|
92
|
+
@xvdc_type = 'raw' if @xvdc_type == UNSET_VALUE
|
87
93
|
@swap_size = '256' if @swap_size == UNSET_VALUE
|
88
94
|
@kernelid = nil if @kernelid == UNSET_VALUE
|
89
95
|
@kernel = nil if @kernel == UNSET_VALUE
|
data/vagrant-linode.gemspec
CHANGED
@@ -13,13 +13,12 @@ Gem::Specification.new do |gem|
|
|
13
13
|
gem.homepage = 'https://www.github.com/displague/vagrant-linode'
|
14
14
|
gem.summary = gem.description
|
15
15
|
|
16
|
-
gem.add_runtime_dependency 'linodeapi', '~> 1.0
|
17
|
-
gem.add_runtime_dependency '
|
18
|
-
gem.add_runtime_dependency 'log4r', '~> 1.1.10'
|
16
|
+
gem.add_runtime_dependency 'linodeapi', '~> 1.0'
|
17
|
+
gem.add_runtime_dependency 'log4r', '~> 1.1'
|
19
18
|
|
20
|
-
gem.add_development_dependency 'rake', '~>
|
21
|
-
gem.add_development_dependency 'rspec', '~> 3.
|
22
|
-
gem.add_development_dependency 'aruba', '~> 0.
|
19
|
+
gem.add_development_dependency 'rake', '~> 12.0'
|
20
|
+
gem.add_development_dependency 'rspec', '~> 3.5'
|
21
|
+
gem.add_development_dependency 'aruba', '~> 0.14'
|
23
22
|
|
24
23
|
gem.files = `git ls-files`.split($INPUT_RECORD_SEPARATOR)
|
25
24
|
gem.executables = gem.files.grep(%r{^bin/}).map { |f| File.basename(f) }
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: vagrant-linode
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.8
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Marques Johansson
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2016-
|
12
|
+
date: 2016-12-16 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: linodeapi
|
@@ -17,84 +17,70 @@ dependencies:
|
|
17
17
|
requirements:
|
18
18
|
- - "~>"
|
19
19
|
- !ruby/object:Gem::Version
|
20
|
-
version: 1.0
|
20
|
+
version: '1.0'
|
21
21
|
type: :runtime
|
22
22
|
prerelease: false
|
23
23
|
version_requirements: !ruby/object:Gem::Requirement
|
24
24
|
requirements:
|
25
25
|
- - "~>"
|
26
26
|
- !ruby/object:Gem::Version
|
27
|
-
version: 1.0
|
28
|
-
- !ruby/object:Gem::Dependency
|
29
|
-
name: json
|
30
|
-
requirement: !ruby/object:Gem::Requirement
|
31
|
-
requirements:
|
32
|
-
- - "~>"
|
33
|
-
- !ruby/object:Gem::Version
|
34
|
-
version: 1.8.3
|
35
|
-
type: :runtime
|
36
|
-
prerelease: false
|
37
|
-
version_requirements: !ruby/object:Gem::Requirement
|
38
|
-
requirements:
|
39
|
-
- - "~>"
|
40
|
-
- !ruby/object:Gem::Version
|
41
|
-
version: 1.8.3
|
27
|
+
version: '1.0'
|
42
28
|
- !ruby/object:Gem::Dependency
|
43
29
|
name: log4r
|
44
30
|
requirement: !ruby/object:Gem::Requirement
|
45
31
|
requirements:
|
46
32
|
- - "~>"
|
47
33
|
- !ruby/object:Gem::Version
|
48
|
-
version: 1.1
|
34
|
+
version: '1.1'
|
49
35
|
type: :runtime
|
50
36
|
prerelease: false
|
51
37
|
version_requirements: !ruby/object:Gem::Requirement
|
52
38
|
requirements:
|
53
39
|
- - "~>"
|
54
40
|
- !ruby/object:Gem::Version
|
55
|
-
version: 1.1
|
41
|
+
version: '1.1'
|
56
42
|
- !ruby/object:Gem::Dependency
|
57
43
|
name: rake
|
58
44
|
requirement: !ruby/object:Gem::Requirement
|
59
45
|
requirements:
|
60
46
|
- - "~>"
|
61
47
|
- !ruby/object:Gem::Version
|
62
|
-
version:
|
48
|
+
version: '12.0'
|
63
49
|
type: :development
|
64
50
|
prerelease: false
|
65
51
|
version_requirements: !ruby/object:Gem::Requirement
|
66
52
|
requirements:
|
67
53
|
- - "~>"
|
68
54
|
- !ruby/object:Gem::Version
|
69
|
-
version:
|
55
|
+
version: '12.0'
|
70
56
|
- !ruby/object:Gem::Dependency
|
71
57
|
name: rspec
|
72
58
|
requirement: !ruby/object:Gem::Requirement
|
73
59
|
requirements:
|
74
60
|
- - "~>"
|
75
61
|
- !ruby/object:Gem::Version
|
76
|
-
version: 3.
|
62
|
+
version: '3.5'
|
77
63
|
type: :development
|
78
64
|
prerelease: false
|
79
65
|
version_requirements: !ruby/object:Gem::Requirement
|
80
66
|
requirements:
|
81
67
|
- - "~>"
|
82
68
|
- !ruby/object:Gem::Version
|
83
|
-
version: 3.
|
69
|
+
version: '3.5'
|
84
70
|
- !ruby/object:Gem::Dependency
|
85
71
|
name: aruba
|
86
72
|
requirement: !ruby/object:Gem::Requirement
|
87
73
|
requirements:
|
88
74
|
- - "~>"
|
89
75
|
- !ruby/object:Gem::Version
|
90
|
-
version: 0.
|
76
|
+
version: '0.14'
|
91
77
|
type: :development
|
92
78
|
prerelease: false
|
93
79
|
version_requirements: !ruby/object:Gem::Requirement
|
94
80
|
requirements:
|
95
81
|
- - "~>"
|
96
82
|
- !ruby/object:Gem::Version
|
97
|
-
version: 0.
|
83
|
+
version: '0.14'
|
98
84
|
description: Enables Vagrant to manage Linode linodes
|
99
85
|
email:
|
100
86
|
- marques@linode.com
|