vagrant-export 0.3.7 → 0.3.8
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/vagrant-export/exporter.rb +11 -9
- data/lib/vagrant-export/version.rb +1 -1
- data/res/progress_tar.sh +3 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a8f0ea634ac85a2b665cdc0361595517b92f6937
|
4
|
+
data.tar.gz: 46e778a223f126e41c9eaa35037eaf6bf0006dbe
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 11371c4ce8c2fcaec74d8b43fb18b67c7b64f6f5878b4a8b78c2f66cd7d7c0910f541dd6d95c77c8ae2fdf73939777e1301238e099a97bbe6d168fb4a43b13fd
|
7
|
+
data.tar.gz: 073cb31479b171f97f17d2c992b6d4cdedc2fd2950a679ac58f6352540b54951e86e6b678a4a94f30286da66af7866f4daecd12ae79fe2b2abc928a3a29252b7
|
@@ -186,7 +186,7 @@ module VagrantPlugins
|
|
186
186
|
end
|
187
187
|
|
188
188
|
# Export to file
|
189
|
-
exported_path = File.join(@env.tmp_path, Time.now.
|
189
|
+
exported_path = File.join(@env.tmp_path, 'export-' + Time.now.strftime('%Y%m%d%H%M%S'))
|
190
190
|
@tmp_path = exported_path
|
191
191
|
FileUtils.mkdir_p(exported_path)
|
192
192
|
|
@@ -271,11 +271,8 @@ module VagrantPlugins
|
|
271
271
|
end
|
272
272
|
|
273
273
|
# Add metadata json
|
274
|
-
|
275
|
-
|
276
|
-
metadata.write('{"provider":"' + provider_name + '"}')
|
277
|
-
ensure
|
278
|
-
metadata.close
|
274
|
+
File.open(File.join(@tmp_path, 'metadata.json'), 'wb') do |f|
|
275
|
+
f.write('{"provider":"' + provider_name + '"}')
|
279
276
|
end
|
280
277
|
|
281
278
|
target_include_path = File.join(@tmp_path, 'include')
|
@@ -339,18 +336,20 @@ module VagrantPlugins
|
|
339
336
|
|
340
337
|
Vagrant::Util::SafeChdir.safe_chdir(@tmp_path) do
|
341
338
|
|
342
|
-
files = Dir.glob(File.join(
|
339
|
+
files = Dir.glob(File.join(@tmp_path, '**', '*'))
|
343
340
|
@logger.debug("Create box file #{@box_file_name} containing #{files}")
|
344
341
|
bash_exec = Vagrant::Util::Which.which('bash').to_s;
|
345
342
|
|
346
|
-
if File.executable?(bash_exec) &&
|
343
|
+
if File.executable?(bash_exec) && ['pv', 'tar', 'gzip'].all? {|cmd| Vagrant::Util::Which.which(cmd) != nil }
|
347
344
|
total_size = 0
|
345
|
+
files_list = []
|
348
346
|
|
349
347
|
@logger.debug('Using custom packaging command to create progress output')
|
350
348
|
@env.ui.info('Starting compression', new_line: false)
|
351
349
|
|
352
350
|
files.each { |f|
|
353
351
|
total_size += File.size(f)
|
352
|
+
files_list.push(f.to_s.gsub(@tmp_path.to_s, '').gsub(/^[\/\\]+/, ''))
|
354
353
|
}
|
355
354
|
|
356
355
|
@logger.debug("Complete size of files is #{total_size} bytes")
|
@@ -359,8 +358,11 @@ module VagrantPlugins
|
|
359
358
|
opts[:notify] = [:stderr, :stdout]
|
360
359
|
|
361
360
|
script_file = File.absolute_path(File.expand_path('../../../res/progress_tar.sh', __FILE__))
|
361
|
+
files_list = files_list.join(' ')
|
362
|
+
|
363
|
+
@logger.debug("Files argument for bash script: #{files_list}")
|
362
364
|
|
363
|
-
Vagrant::Util::Subprocess.execute(bash_exec, script_file, @tmp_path.to_s, total_size.to_s, @box_file_name, opts) { |io, data|
|
365
|
+
Vagrant::Util::Subprocess.execute(bash_exec, script_file, @tmp_path.to_s, total_size.to_s, @box_file_name, files_list, opts) { |io, data|
|
364
366
|
d = data.to_s
|
365
367
|
p = d.match(/\d+/).to_a
|
366
368
|
|
data/res/progress_tar.sh
CHANGED
@@ -3,5 +3,7 @@
|
|
3
3
|
DIRECTORY=$1
|
4
4
|
TOTAL_SIZE=$2
|
5
5
|
TARGET_TAR=$3
|
6
|
+
FILES_LIST=$4
|
6
7
|
|
7
|
-
|
8
|
+
cd ${DIRECTORY}
|
9
|
+
tar -C ${DIRECTORY} -c ${FILES_LIST} | pv -f -n -s ${TOTAL_SIZE} | gzip -c > ${TARGET_TAR}
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
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.8
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Georg Grossberger
|
@@ -19,6 +19,7 @@ extra_rdoc_files: []
|
|
19
19
|
files:
|
20
20
|
- ".gitignore"
|
21
21
|
- Gemfile
|
22
|
+
- Gemfile.lock
|
22
23
|
- README.md
|
23
24
|
- lib/vagrant-export.rb
|
24
25
|
- lib/vagrant-export/command.rb
|
@@ -28,7 +29,6 @@ files:
|
|
28
29
|
- lib/vagrant-export/version.rb
|
29
30
|
- res/cleanup.sh
|
30
31
|
- res/progress_tar.sh
|
31
|
-
- vagrant-export-0.3.6.gem
|
32
32
|
- vagrant-export.gemspec
|
33
33
|
homepage: https://github.com/trenker/vagrant-export
|
34
34
|
licenses:
|