lib/dockly/build_cache/docker.rb in dockly-1.5.9 vs lib/dockly/build_cache/docker.rb in dockly-1.5.10

- old
+ new

@@ -23,28 +23,34 @@ def push_cache(version) ensure_present! :output_dir if cache = pull_from_s3(version) debug "inserting to #{output_directory}" - path = File.expand_path(cache.path) - path_parent = File.dirname(path) - tar_flags = keep_old_files ? '-xkf' : 'xf' - container = ::Docker::Container.create( - 'Image' => image.id, - 'Cmd' => ['/bin/bash', '-lc', [ - "mkdir -p #{File.dirname(output_directory)}", - '&&', - "tar #{tar_flags} #{File.join('/', 'host', path)} -C #{File.dirname(output_directory)}" - ].join(' ') - ], - 'Volumes' => { - File.join('/', 'host', path_parent) => { path_parent => 'rw' } - } + container = image.run("mkdir -p #{File.dirname(output_directory)}") + image_with_dir = container.tap(&:wait).commit + self.image = image_with_dir.insert_local( + 'localPath' => cache.path, + 'outputPath' => File.dirname(output_directory) ) - container.start('Binds' => ["#{path_parent}:#{File.join('/', 'host', path_parent)}"]) - result = container.wait['StatusCode'] - raise "Got bad status code when copying build cache: #{result}" unless result.zero? - self.image = container.commit + #path = File.expand_path(cache.path) + #path_parent = File.dirname(path) + #tar_flags = keep_old_files ? '-xkf' : 'xf' + #container = ::Docker::Container.create( + # 'Image' => image.id, + # 'Cmd' => ['/bin/bash', '-lc', [ + # "mkdir -p #{File.dirname(output_directory)}", + # '&&', + # "tar #{tar_flags} #{File.join('/', 'host', path)} -C #{File.dirname(output_directory)}" + # ].join(' ') + # ], + # 'Volumes' => { + # File.join('/', 'host', path_parent) => { path_parent => 'rw' } + # } + #) + #container.start('Binds' => ["#{path_parent}:#{File.join('/', 'host', path_parent)}"]) + #result = container.wait['StatusCode'] + #raise "Got bad status code when copying build cache: #{result}" unless result.zero? + #self.image = container.commit debug "inserted cache into #{output_directory}" cache.close else info "could not find #{s3_object(version)}" end