vagrant-export 0.3.3 → 0.3.4
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/.gitignore +2 -1
- data/Gemfile.lock +102 -0
- data/Vagrantfile +3 -0
- data/lib/vagrant-export/command.rb +8 -2
- data/lib/vagrant-export/error.rb +18 -0
- data/lib/vagrant-export/exporter.rb +116 -33
- data/lib/vagrant-export/version.rb +1 -1
- data/res/cleanup.sh +20 -21
- metadata +6 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3ddbe360fa54bea73f25c2241a25154f40740a4a
|
4
|
+
data.tar.gz: 46c28c9124e22569ae174c8a90b1de86dfa57103
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: cdf99b3412fbb5680e3b6c499c70c7af87f4590c1661f7609540954468cd3dfa36cacf4d2c9136c4d69daeda14661aebc5e38f780e76c693fafa551ba96b9b4d
|
7
|
+
data.tar.gz: 535bc6e78a326bc85e06d513e125c6a53f3b75abe94fd2c29931017e0a3a076e6613775207654d1e00618349756f4b9332c25699b9a5b5be8855afb046b5fbad
|
data/.gitignore
CHANGED
data/Gemfile.lock
ADDED
@@ -0,0 +1,102 @@
|
|
1
|
+
GIT
|
2
|
+
remote: https://github.com/mitchellh/vagrant.git
|
3
|
+
revision: a8dcf92f14d8bb8828a43b91804334673508f467
|
4
|
+
specs:
|
5
|
+
vagrant (1.7.2)
|
6
|
+
bundler (>= 1.5.2, < 1.8.0)
|
7
|
+
childprocess (~> 0.5.0)
|
8
|
+
erubis (~> 2.7.0)
|
9
|
+
hashicorp-checkpoint (~> 0.1.1)
|
10
|
+
i18n (>= 0.6.0, <= 0.8.0)
|
11
|
+
listen (~> 2.8.0)
|
12
|
+
log4r (~> 1.1.9, < 1.1.11)
|
13
|
+
net-scp (~> 1.1.0)
|
14
|
+
net-sftp (~> 2.1)
|
15
|
+
net-ssh (>= 2.6.6, < 2.10.0)
|
16
|
+
nokogiri (= 1.6.3.1)
|
17
|
+
rb-kqueue (~> 0.2.0)
|
18
|
+
rest-client (>= 1.6.0, < 2.0)
|
19
|
+
wdm (~> 0.1.0)
|
20
|
+
winrm (~> 1.3)
|
21
|
+
winrm-fs (~> 0.1.0)
|
22
|
+
|
23
|
+
PATH
|
24
|
+
remote: .
|
25
|
+
specs:
|
26
|
+
vagrant-export (0.3.3)
|
27
|
+
|
28
|
+
GEM
|
29
|
+
remote: https://rubygems.org/
|
30
|
+
specs:
|
31
|
+
builder (3.2.2)
|
32
|
+
celluloid (0.16.0)
|
33
|
+
timers (~> 4.0.0)
|
34
|
+
childprocess (0.5.5)
|
35
|
+
ffi (~> 1.0, >= 1.0.11)
|
36
|
+
erubis (2.7.0)
|
37
|
+
ffi (1.9.7)
|
38
|
+
gssapi (1.2.0)
|
39
|
+
ffi (>= 1.0.1)
|
40
|
+
gyoku (1.2.3)
|
41
|
+
builder (>= 2.1.2)
|
42
|
+
hashicorp-checkpoint (0.1.4)
|
43
|
+
hitimes (1.2.2)
|
44
|
+
httpclient (2.6.0.1)
|
45
|
+
i18n (0.7.0)
|
46
|
+
listen (2.8.6)
|
47
|
+
celluloid (>= 0.15.2)
|
48
|
+
rb-fsevent (>= 0.9.3)
|
49
|
+
rb-inotify (>= 0.9)
|
50
|
+
little-plugger (1.1.3)
|
51
|
+
log4r (1.1.10)
|
52
|
+
logging (1.8.2)
|
53
|
+
little-plugger (>= 1.1.3)
|
54
|
+
multi_json (>= 1.8.4)
|
55
|
+
mime-types (2.4.3)
|
56
|
+
mini_portile (0.6.0)
|
57
|
+
multi_json (1.11.0)
|
58
|
+
net-scp (1.1.2)
|
59
|
+
net-ssh (>= 2.6.5)
|
60
|
+
net-sftp (2.1.2)
|
61
|
+
net-ssh (>= 2.6.5)
|
62
|
+
net-ssh (2.9.2)
|
63
|
+
netrc (0.10.3)
|
64
|
+
nokogiri (1.6.3.1-x64-mingw32)
|
65
|
+
mini_portile (= 0.6.0)
|
66
|
+
nori (2.4.0)
|
67
|
+
rb-fsevent (0.9.4)
|
68
|
+
rb-inotify (0.9.5)
|
69
|
+
ffi (>= 0.5.0)
|
70
|
+
rb-kqueue (0.2.3)
|
71
|
+
ffi (>= 0.5.0)
|
72
|
+
rest-client (1.7.3-x64-mingw32)
|
73
|
+
ffi (~> 1.9)
|
74
|
+
mime-types (>= 1.16, < 3.0)
|
75
|
+
netrc (~> 0.7)
|
76
|
+
rubyntlm (0.4.0)
|
77
|
+
rubyzip (1.1.7)
|
78
|
+
timers (4.0.1)
|
79
|
+
hitimes
|
80
|
+
uuidtools (2.1.5)
|
81
|
+
wdm (0.1.0)
|
82
|
+
winrm (1.3.0)
|
83
|
+
builder (>= 2.1.2)
|
84
|
+
gssapi (~> 1.2)
|
85
|
+
gyoku (~> 1.0)
|
86
|
+
httpclient (~> 2.2, >= 2.2.0.2)
|
87
|
+
logging (~> 1.6, >= 1.6.1)
|
88
|
+
nori (~> 2.0)
|
89
|
+
rubyntlm (~> 0.4.0)
|
90
|
+
uuidtools (~> 2.1.2)
|
91
|
+
winrm-fs (0.1.0)
|
92
|
+
erubis (~> 2.7)
|
93
|
+
logging (~> 1.6, >= 1.6.1)
|
94
|
+
rubyzip (~> 1.1)
|
95
|
+
winrm (~> 1.3.0)
|
96
|
+
|
97
|
+
PLATFORMS
|
98
|
+
x64-mingw32
|
99
|
+
|
100
|
+
DEPENDENCIES
|
101
|
+
vagrant!
|
102
|
+
vagrant-export!
|
data/Vagrantfile
ADDED
@@ -33,10 +33,16 @@ module VagrantPlugins
|
|
33
33
|
return 1 unless argv
|
34
34
|
|
35
35
|
require_relative 'exporter'
|
36
|
-
ex = Exporter.new(@env, @logger)
|
37
36
|
|
38
37
|
with_target_vms argv, reverse: true do |machine|
|
39
|
-
ex.
|
38
|
+
ex = Exporter.new(@env, @logger, machine)
|
39
|
+
|
40
|
+
if File.file?(ex.target_box)
|
41
|
+
require_relative 'error'
|
42
|
+
raise BoxAlreadyExists
|
43
|
+
end
|
44
|
+
|
45
|
+
ex.handle(options[:fast], options[:bare])
|
40
46
|
end
|
41
47
|
0
|
42
48
|
end
|
@@ -0,0 +1,18 @@
|
|
1
|
+
# #
|
2
|
+
# This is free software; you can redistribute it and/or modify it under #
|
3
|
+
# the terms of the MIT- / X11 - License #
|
4
|
+
# #
|
5
|
+
|
6
|
+
module VagrantPlugins
|
7
|
+
module Export
|
8
|
+
class VirtualboxExportError < Vagrant::Errors::VagrantError
|
9
|
+
error_message('Cannot export Virtualbox machine to appliance')
|
10
|
+
end
|
11
|
+
class BoxAlreadyExists < Vagrant::Errors::VagrantError
|
12
|
+
error_message('A box file for this machine already exists')
|
13
|
+
end
|
14
|
+
class NotCreated < Vagrant::Errors::VagrantError
|
15
|
+
error_message('Cannot export a not created machine. Please make at least one vagrant up')
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
@@ -4,6 +4,7 @@
|
|
4
4
|
# #
|
5
5
|
|
6
6
|
require 'fileutils'
|
7
|
+
require_relative 'error'
|
7
8
|
|
8
9
|
module VagrantPlugins
|
9
10
|
module Export
|
@@ -11,39 +12,59 @@ module VagrantPlugins
|
|
11
12
|
|
12
13
|
# @param env Vagrant::Environment
|
13
14
|
# @param logger Log4r::Logger
|
14
|
-
|
15
|
+
# @param vm Vagrant::Machine
|
16
|
+
def initialize(env, logger, vm)
|
17
|
+
@vm = vm
|
15
18
|
@env = env
|
16
19
|
@logger = logger
|
17
20
|
end
|
18
21
|
|
19
|
-
# @param vm Vagrant::Machine
|
20
22
|
# @param fast Boolean
|
21
23
|
# @param bare Boolean
|
22
24
|
# @return string
|
23
|
-
def handle(
|
24
|
-
@
|
25
|
-
@
|
25
|
+
def handle(fast, bare)
|
26
|
+
@did_run = false
|
27
|
+
@private_key = nil
|
28
|
+
@tmp_path = nil
|
29
|
+
@box_file_name = nil
|
30
|
+
|
31
|
+
if @vm.state.short_description == 'not created'
|
32
|
+
raise VagrantPlugins::Export::NotCreated
|
33
|
+
end
|
26
34
|
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
35
|
+
begin
|
36
|
+
ssh_info = vm.ssh_info
|
37
|
+
unless ssh_info == nil
|
38
|
+
@private_key = ssh_info[:private_key_path]
|
39
|
+
end
|
40
|
+
|
41
|
+
unless fast
|
42
|
+
if can_compress
|
43
|
+
compress
|
44
|
+
else
|
45
|
+
@vm.ui.error('Cannot compress this type of machine')
|
46
|
+
return 1
|
47
|
+
end
|
33
48
|
end
|
34
|
-
end
|
35
49
|
|
36
|
-
|
37
|
-
|
50
|
+
return 1 unless export
|
51
|
+
return 1 unless files(bare)
|
38
52
|
|
39
|
-
|
53
|
+
finalize
|
54
|
+
ensure
|
55
|
+
FileUtils.rm_rf(@tmp_path) if Dir.exists?(@tmp_path)
|
56
|
+
FileUtils.rm_rf(@box_file_name) if File.file?(@box_file_name)
|
57
|
+
end
|
58
|
+
target_box
|
59
|
+
end
|
40
60
|
|
41
|
-
|
61
|
+
def target_box
|
62
|
+
box_name = @vm.box.name.gsub('/', '_')
|
63
|
+
File.join(@env.cwd, box_name + '.box')
|
42
64
|
end
|
43
65
|
|
44
66
|
protected
|
45
67
|
|
46
|
-
|
47
68
|
def can_compress
|
48
69
|
if @vm.state.short_description == 'running'
|
49
70
|
@did_run = true
|
@@ -55,6 +76,12 @@ module VagrantPlugins
|
|
55
76
|
compress_supported = false
|
56
77
|
|
57
78
|
if @vm.config.vm.communicator != :winrm
|
79
|
+
|
80
|
+
ssh_info = vm.ssh_info
|
81
|
+
unless ssh_info == nil
|
82
|
+
@private_key = ssh_info[:private_key_path]
|
83
|
+
end
|
84
|
+
|
58
85
|
@vm.communicate.execute('lsb_release -i -s', error_key: :ssh_bad_exit_status_muted) do |type, data|
|
59
86
|
if type == :stdout && data.to_s =~ /mint|ubuntu|debian/i
|
60
87
|
compress_supported = true
|
@@ -100,12 +127,19 @@ module VagrantPlugins
|
|
100
127
|
# Shamelessly stolen from Vagrant::Action::General::Package
|
101
128
|
def setup_private_key
|
102
129
|
|
103
|
-
#
|
130
|
+
# Key generated by vagrant
|
104
131
|
path = @vm.data_dir.join('private_key')
|
132
|
+
|
133
|
+
# Use a different generated key if configured
|
134
|
+
if @private_key != nil
|
135
|
+
path = File.new(@private_key.to_s, 'r') unless @private_key == Vagrant.source_root.join('keys', 'vagrant')
|
136
|
+
end
|
137
|
+
|
138
|
+
# If we don't have a generated private key, we do nothing
|
105
139
|
return unless path.file?
|
106
140
|
|
107
141
|
# Copy it into our box directory
|
108
|
-
new_path = File.join(@tmp_path, '
|
142
|
+
new_path = File.join(@tmp_path, 'private_key')
|
109
143
|
@logger.debug("Copy private key from #{path} to #{new_path}")
|
110
144
|
FileUtils.cp(path, new_path)
|
111
145
|
|
@@ -135,12 +169,11 @@ module VagrantPlugins
|
|
135
169
|
@logger.debug('No Vagrantfile found, create one')
|
136
170
|
end
|
137
171
|
|
138
|
-
|
139
172
|
File.open(vf_path, mode) do |f|
|
140
173
|
f.binmode
|
141
174
|
f.puts
|
142
175
|
f.puts %Q[Vagrant.configure("2") do |config|]
|
143
|
-
f.puts %Q[ config.ssh.private_key_path = File.expand_path("../
|
176
|
+
f.puts %Q[ config.ssh.private_key_path = File.expand_path("../private_key", __FILE__)]
|
144
177
|
f.puts %Q[end]
|
145
178
|
end
|
146
179
|
end
|
@@ -192,12 +225,34 @@ module VagrantPlugins
|
|
192
225
|
}
|
193
226
|
|
194
227
|
else
|
195
|
-
|
196
|
-
|
197
|
-
|
198
|
-
|
228
|
+
|
229
|
+
ovf_file = File.join(exported_path, @vm.box.name.gsub(/[^a-zA-Z0-9]+/, '_')) + '.ovf'
|
230
|
+
vm_id = @vm.id.to_s
|
231
|
+
|
232
|
+
opts = {}
|
233
|
+
opts[:notify] = [:stdout, :stderr]
|
234
|
+
|
235
|
+
@logger.debug("Export #{vm_id} to #{ovf_file}")
|
236
|
+
@env.ui.info('0%', new_line: false)
|
237
|
+
|
238
|
+
Vagrant::Util::Subprocess.execute('VBoxManage', 'export', vm_id, '-o', ovf_file, opts) { |io, data|
|
239
|
+
|
240
|
+
d = data.to_s
|
241
|
+
@logger.debug(d)
|
242
|
+
|
243
|
+
unless io == :stdout
|
244
|
+
if /\d+%/ =~ d
|
245
|
+
@env.ui.clear_line
|
246
|
+
@env.ui.info(d.match(/\d+%/).to_a.pop, new_line: false)
|
247
|
+
else
|
248
|
+
@logger.error(d)
|
249
|
+
raise VirtualboxExportError
|
250
|
+
end
|
251
|
+
end
|
252
|
+
}
|
199
253
|
end
|
200
254
|
|
255
|
+
@env.ui.clear_line
|
201
256
|
@logger.debug("Exported VM to #{exported_path}")
|
202
257
|
end
|
203
258
|
|
@@ -283,9 +338,41 @@ module VagrantPlugins
|
|
283
338
|
@vm.ui.info('Packaging box file')
|
284
339
|
|
285
340
|
Vagrant::Util::SafeChdir.safe_chdir(@tmp_path) do
|
341
|
+
|
286
342
|
files = Dir.glob(File.join('.', '**', '*'))
|
287
343
|
@logger.debug("Create box file #{@box_file_name} containing #{files}")
|
288
|
-
|
344
|
+
|
345
|
+
if Vagrant::Util::Which.which('pv') != nil && Vagrant::Util::Which.which('tar') && Vagrant::Util::Which.which('gzip')
|
346
|
+
total_size = 0
|
347
|
+
|
348
|
+
logger.debug('Using custom packaging command to create progress output')
|
349
|
+
@env.ui.info('Starting compression')
|
350
|
+
|
351
|
+
files.each { |f|
|
352
|
+
total_size += File.size(f)
|
353
|
+
}
|
354
|
+
|
355
|
+
@logger.debug("Complete size of files is #{total_size} bytes")
|
356
|
+
|
357
|
+
opts = {}
|
358
|
+
opts[:notify] = [:stderr, :stdout]
|
359
|
+
|
360
|
+
Vagrant::Util::Subprocess.execute('tar', ' -cf - ', *files, ' | pv -n -s ', total_size, ' | gzip -c > ', @box_file_name) { |io, data|
|
361
|
+
d = data.to_s
|
362
|
+
|
363
|
+
if io == :stderr
|
364
|
+
@logger.error(d)
|
365
|
+
else
|
366
|
+
@env.ui.clear_line
|
367
|
+
@env.ui.info(d.match(/\d+/).to_a.pop.to_s + '%')
|
368
|
+
end
|
369
|
+
}
|
370
|
+
|
371
|
+
@env.ui.clear_line
|
372
|
+
|
373
|
+
else
|
374
|
+
Vagrant::Util::Subprocess.execute('bsdtar', '-czf', @box_file_name, *files)
|
375
|
+
end
|
289
376
|
end
|
290
377
|
|
291
378
|
0
|
@@ -294,15 +381,11 @@ module VagrantPlugins
|
|
294
381
|
def finalize
|
295
382
|
# Rename the box file
|
296
383
|
if File.exist?(@box_file_name)
|
297
|
-
|
298
|
-
|
299
|
-
|
300
|
-
@vm.ui.info('Created ' + @target_box)
|
384
|
+
target = target_box
|
385
|
+
FileUtils.mv(@box_file_name, target)
|
386
|
+
@vm.ui.info('Created ' + target)
|
301
387
|
end
|
302
388
|
|
303
|
-
# Remove the tmp files
|
304
|
-
FileUtils.rm_rf(@tmp_path)
|
305
|
-
|
306
389
|
# Resume the machine
|
307
390
|
if @did_run
|
308
391
|
@vm.ui.info('Bringing the machine back up')
|
data/res/cleanup.sh
CHANGED
@@ -15,7 +15,7 @@ done
|
|
15
15
|
|
16
16
|
echo "Removing old kernel packages"
|
17
17
|
apt-get -qq -y --purge remove $(dpkg --list | egrep '^rc' | awk '{print $2}')
|
18
|
-
apt-get -qq -y --purge remove $(dpkg --list | egrep 'linux-(image(-extra)?|headers)-[0-9]' | awk '{print $3,$2}' | grep -v $(uname -r | sed -e s/-generic//g) | awk '{
|
18
|
+
apt-get -qq -y --purge remove $(dpkg --list | egrep '^i' | egrep 'linux-(image(-extra)?|headers)-[0-9]' | awk '{print $3,$2}' | grep -v $(uname -r | sed -e s/-generic//g) | awk '{print $2}')
|
19
19
|
|
20
20
|
echo "Cleaning up apt"
|
21
21
|
apt-get -qq -y --purge autoremove
|
@@ -27,6 +27,7 @@ echo "Cleaning up home"
|
|
27
27
|
rm -rf $HOME/.cache
|
28
28
|
rm -rf $HOME/.local
|
29
29
|
rm -rf $HOME/.npm
|
30
|
+
rm -rf $HOME/.composer
|
30
31
|
rm -rf $HOME/tmp
|
31
32
|
|
32
33
|
if [[ -d /www ]]; then
|
@@ -37,41 +38,39 @@ else
|
|
37
38
|
DOCROOT="/var/www"
|
38
39
|
fi
|
39
40
|
|
40
|
-
echo "Cleaning up document root $DOCROOT"
|
41
|
+
echo "Cleaning up document root ${DOCROOT}"
|
41
42
|
|
42
|
-
if [[ -d $DOCROOT/typo3temp ]]; then
|
43
|
+
if [[ -d ${DOCROOT}/typo3temp ]]; then
|
43
44
|
echo "Removing TYPO3 CMS temp files"
|
44
|
-
find $DOCROOT/typo3temp -type f -exec rm -f {} \;
|
45
|
-
find $DOCROOT/typo3temp -type d -iname "_processed_" -exec rm -rf {} \; > /dev/null 2>&1
|
45
|
+
find ${DOCROOT}/typo3temp -type f -exec rm -f {} \;
|
46
46
|
|
47
|
-
if [[ -d $DOCROOT/fileadmin/_processed_ ]]; then
|
48
|
-
rm -rf $DOCROOT/fileadmin/_processed_/* > /dev/null 2>&1
|
47
|
+
if [[ -d ${DOCROOT}/fileadmin/_processed_ ]]; then
|
48
|
+
rm -rf ${DOCROOT}/fileadmin/_processed_/* > /dev/null 2>&1
|
49
49
|
fi
|
50
50
|
fi
|
51
51
|
|
52
|
-
if [[ -d $DOCROOT/Data/Temporary ]]; then
|
52
|
+
if [[ -d ${DOCROOT}/Data/Temporary ]]; then
|
53
53
|
echo "Removing TYPO3 Flow temp files"
|
54
|
-
rm -rf $DOCROOT/Data/Temporary/* > /dev/null 2>&1
|
54
|
+
rm -rf ${DOCROOT}/Data/Temporary/* > /dev/null 2>&1
|
55
55
|
fi
|
56
56
|
|
57
57
|
if [[ -d /var/www/var/cache ]]; then
|
58
58
|
echo "Removing Magento temp files"
|
59
|
-
rm -rf $DOCROOT/downloader/.cache/*
|
60
|
-
rm -rf $DOCROOT/downloader/pearlib/cache/*
|
61
|
-
rm -rf $DOCROOT/downloader/pearlib/download/*
|
62
|
-
rm -rf $DOCROOT/var/cache/*
|
63
|
-
rm -rf $DOCROOT/var/locks/*
|
64
|
-
rm -rf $DOCROOT/var/log/*
|
65
|
-
rm -rf $DOCROOT/var/report/*
|
66
|
-
rm -rf $DOCROOT/var/session/*
|
67
|
-
rm -rf $DOCROOT/var/tmp/*
|
59
|
+
rm -rf ${DOCROOT}/downloader/.cache/*
|
60
|
+
rm -rf ${DOCROOT}/downloader/pearlib/cache/*
|
61
|
+
rm -rf ${DOCROOT}/downloader/pearlib/download/*
|
62
|
+
rm -rf ${DOCROOT}/var/cache/*
|
63
|
+
rm -rf ${DOCROOT}/var/locks/*
|
64
|
+
rm -rf ${DOCROOT}/var/log/*
|
65
|
+
rm -rf ${DOCROOT}/var/report/*
|
66
|
+
rm -rf ${DOCROOT}/var/session/*
|
67
|
+
rm -rf ${DOCROOT}/var/tmp/*
|
68
68
|
fi
|
69
69
|
|
70
70
|
echo "Zeroing device to make space..."
|
71
|
-
dd if=/dev/zero of=/EMPTY bs=1M
|
71
|
+
dd if=/dev/zero of=/EMPTY bs=1M > /dev/null 2>&1
|
72
|
+
sync
|
72
73
|
rm -f /EMPTY
|
73
|
-
|
74
|
-
echo "Sync to disc"
|
75
74
|
sync
|
76
75
|
|
77
76
|
exit 0
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: vagrant-export
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Georg Grossberger
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-
|
11
|
+
date: 2015-06-13 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: Export boxes to .box files including the original Vagrantfile and some
|
14
14
|
cleanups inside the VM
|
@@ -19,9 +19,12 @@ extra_rdoc_files: []
|
|
19
19
|
files:
|
20
20
|
- ".gitignore"
|
21
21
|
- Gemfile
|
22
|
+
- Gemfile.lock
|
22
23
|
- README.md
|
24
|
+
- Vagrantfile
|
23
25
|
- lib/vagrant-export.rb
|
24
26
|
- lib/vagrant-export/command.rb
|
27
|
+
- lib/vagrant-export/error.rb
|
25
28
|
- lib/vagrant-export/exporter.rb
|
26
29
|
- lib/vagrant-export/plugin.rb
|
27
30
|
- lib/vagrant-export/version.rb
|
@@ -47,7 +50,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
47
50
|
version: '0'
|
48
51
|
requirements: []
|
49
52
|
rubyforge_project:
|
50
|
-
rubygems_version: 2.
|
53
|
+
rubygems_version: 2.2.2
|
51
54
|
signing_key:
|
52
55
|
specification_version: 4
|
53
56
|
summary: Export boxes to .box files including the original Vagrantfile and some cleanups
|